@kensio/yulin 1.2.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (669) hide show
  1. package/README.md +1 -0
  2. package/dist/sdk/router/resolve-sim-sdk-command-router.d.ts.map +1 -1
  3. package/dist/sdk/router/resolve-sim-sdk-command-router.js +6 -0
  4. package/dist/sdk/router/resolve-sim-sdk-command-router.js.map +1 -1
  5. package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts +13 -10
  6. package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts.map +1 -1
  7. package/dist/service/aws/factory/sim-aws-account-region-service-builder.js +29 -25
  8. package/dist/service/aws/factory/sim-aws-account-region-service-builder.js.map +1 -1
  9. package/dist/service/aws/factory/sim-aws-s3-notification-destinations.d.ts +11 -0
  10. package/dist/service/aws/factory/sim-aws-s3-notification-destinations.d.ts.map +1 -0
  11. package/dist/service/aws/factory/sim-aws-s3-notification-destinations.js +23 -0
  12. package/dist/service/aws/factory/sim-aws-s3-notification-destinations.js.map +1 -0
  13. package/dist/service/aws/factory/sim-aws-service-factory.d.ts +3 -0
  14. package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
  15. package/dist/service/aws/factory/sim-aws-service-factory.js +4 -0
  16. package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
  17. package/dist/service/aws/sim-aws-account-region-scope.d.ts +14 -1
  18. package/dist/service/aws/sim-aws-account-region-scope.d.ts.map +1 -1
  19. package/dist/service/aws/sim-aws-account-region-scope.js +16 -0
  20. package/dist/service/aws/sim-aws-account-region-scope.js.map +1 -1
  21. package/dist/service/aws/sim-aws-account.d.ts +5 -1
  22. package/dist/service/aws/sim-aws-account.d.ts.map +1 -1
  23. package/dist/service/aws/sim-aws-account.js +6 -0
  24. package/dist/service/aws/sim-aws-account.js.map +1 -1
  25. package/dist/service/aws/sim-aws-region.d.ts +5 -1
  26. package/dist/service/aws/sim-aws-region.d.ts.map +1 -1
  27. package/dist/service/aws/sim-aws-region.js +6 -0
  28. package/dist/service/aws/sim-aws-region.js.map +1 -1
  29. package/dist/service/aws/sim-aws-service-accessors.d.ts +6 -1
  30. package/dist/service/aws/sim-aws-service-accessors.d.ts.map +1 -1
  31. package/dist/service/aws/sim-aws-service-accessors.js +8 -0
  32. package/dist/service/aws/sim-aws-service-accessors.js.map +1 -1
  33. package/dist/service/cloudformation/resource/cfn/dynamodb/sim-dynamodb-cfn-value-adapter.d.ts +4 -0
  34. package/dist/service/cloudformation/resource/cfn/dynamodb/sim-dynamodb-cfn-value-adapter.d.ts.map +1 -1
  35. package/dist/service/cloudformation/resource/cfn/dynamodb/sim-dynamodb-cfn-value-adapter.js +19 -2
  36. package/dist/service/cloudformation/resource/cfn/dynamodb/sim-dynamodb-cfn-value-adapter.js.map +1 -1
  37. package/dist/service/cloudformation/resource/cfn/dynamodb/sim-dynamodb-table-cfn.d.ts +30 -6
  38. package/dist/service/cloudformation/resource/cfn/dynamodb/sim-dynamodb-table-cfn.d.ts.map +1 -1
  39. package/dist/service/cloudformation/resource/cfn/dynamodb/sim-dynamodb-table-cfn.js +46 -10
  40. package/dist/service/cloudformation/resource/cfn/dynamodb/sim-dynamodb-table-cfn.js.map +1 -1
  41. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-capacity.d.ts +26 -0
  42. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-capacity.d.ts.map +1 -0
  43. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-capacity.js +28 -0
  44. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-capacity.js.map +1 -0
  45. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-creator.d.ts +26 -0
  46. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-creator.d.ts.map +1 -0
  47. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-creator.js +27 -0
  48. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-creator.js.map +1 -0
  49. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-indexes.d.ts +17 -0
  50. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-indexes.d.ts.map +1 -0
  51. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-indexes.js +62 -0
  52. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-indexes.js.map +1 -0
  53. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-properties.d.ts +37 -0
  54. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-properties.d.ts.map +1 -0
  55. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-properties.js +88 -0
  56. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-properties.js.map +1 -0
  57. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-property-rules.d.ts +23 -0
  58. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-property-rules.d.ts.map +1 -0
  59. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-property-rules.js +151 -0
  60. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-property-rules.js.map +1 -0
  61. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-property.d.ts +29 -0
  62. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-property.d.ts.map +1 -0
  63. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-property.js +26 -0
  64. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-property.js.map +1 -0
  65. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replica-rules.d.ts +15 -0
  66. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replica-rules.d.ts.map +1 -0
  67. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replica-rules.js +98 -0
  68. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replica-rules.js.map +1 -0
  69. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replicas.d.ts +48 -0
  70. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replicas.d.ts.map +1 -0
  71. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replicas.js +78 -0
  72. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replicas.js.map +1 -0
  73. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-resource.factory.d.ts +53 -0
  74. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-resource.factory.d.ts.map +1 -0
  75. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-resource.factory.js +46 -0
  76. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-resource.factory.js.map +1 -0
  77. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-simulated.d.ts +18 -0
  78. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-simulated.d.ts.map +1 -0
  79. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-simulated.js +41 -0
  80. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-simulated.js.map +1 -0
  81. package/dist/service/dynamodb/cfn/{table/sim-cfn-dynamodb-table-property-error.d.ts → property/sim-cfn-dynamodb-property-error.d.ts} +9 -5
  82. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-error.d.ts.map +1 -0
  83. package/dist/service/dynamodb/cfn/{table/sim-cfn-dynamodb-table-property-error.js → property/sim-cfn-dynamodb-property-error.js} +11 -7
  84. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-error.js.map +1 -0
  85. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-rules.d.ts +54 -0
  86. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-rules.d.ts.map +1 -0
  87. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-rules.js +71 -0
  88. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-rules.js.map +1 -0
  89. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-scalars.d.ts +17 -0
  90. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-scalars.d.ts.map +1 -0
  91. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-scalars.js +35 -0
  92. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-scalars.js.map +1 -0
  93. package/dist/service/dynamodb/cfn/{table/sim-cfn-dynamodb-table-values.d.ts → property/sim-cfn-dynamodb-property-values.d.ts} +23 -17
  94. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-values.d.ts.map +1 -0
  95. package/dist/service/dynamodb/cfn/{table/sim-cfn-dynamodb-table-values.js → property/sim-cfn-dynamodb-property-values.js} +33 -30
  96. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-values.js.map +1 -0
  97. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.d.ts +6 -4
  98. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.d.ts.map +1 -1
  99. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.js +15 -5
  100. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.js.map +1 -1
  101. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-type.d.ts +14 -0
  102. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-type.d.ts.map +1 -0
  103. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-type.js +14 -0
  104. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-type.js.map +1 -0
  105. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-creator.d.ts.map +1 -1
  106. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-creator.js +1 -0
  107. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-creator.js.map +1 -1
  108. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-index-rules.d.ts +8 -26
  109. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-index-rules.d.ts.map +1 -1
  110. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-index-rules.js +23 -59
  111. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-index-rules.js.map +1 -1
  112. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-indexes.d.ts +2 -2
  113. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-indexes.d.ts.map +1 -1
  114. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-indexes.js.map +1 -1
  115. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-key-schema.d.ts +2 -2
  116. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-key-schema.d.ts.map +1 -1
  117. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-key-schema.js.map +1 -1
  118. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-properties.d.ts +5 -0
  119. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-properties.d.ts.map +1 -1
  120. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-properties.js +11 -2
  121. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-properties.js.map +1 -1
  122. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-property-rules.d.ts +7 -7
  123. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-property-rules.d.ts.map +1 -1
  124. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-property-rules.js +25 -25
  125. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-property-rules.js.map +1 -1
  126. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-resource.factory.d.ts +7 -0
  127. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-resource.factory.d.ts.map +1 -1
  128. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-resource.factory.js +5 -2
  129. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-resource.factory.js.map +1 -1
  130. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-stream-rules.d.ts +11 -0
  131. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-stream-rules.d.ts.map +1 -0
  132. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-stream-rules.js +40 -0
  133. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-stream-rules.js.map +1 -0
  134. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-stream.d.ts +17 -0
  135. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-stream.d.ts.map +1 -0
  136. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-stream.js +24 -0
  137. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-stream.js.map +1 -0
  138. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-throughput.d.ts +2 -2
  139. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-throughput.d.ts.map +1 -1
  140. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-throughput.js.map +1 -1
  141. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-time-to-live.d.ts +2 -2
  142. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-time-to-live.d.ts.map +1 -1
  143. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-time-to-live.js.map +1 -1
  144. package/dist/service/dynamodb/command/authorize/sim-dynamodb-authorizer.d.ts +11 -0
  145. package/dist/service/dynamodb/command/authorize/sim-dynamodb-authorizer.d.ts.map +1 -1
  146. package/dist/service/dynamodb/command/authorize/sim-dynamodb-authorizer.js +13 -0
  147. package/dist/service/dynamodb/command/authorize/sim-dynamodb-authorizer.js.map +1 -1
  148. package/dist/service/dynamodb/command/stream/describe-stream/describe-stream.command.d.ts +43 -0
  149. package/dist/service/dynamodb/command/stream/describe-stream/describe-stream.command.d.ts.map +1 -0
  150. package/dist/service/dynamodb/command/stream/describe-stream/describe-stream.command.js +5 -0
  151. package/dist/service/dynamodb/command/stream/describe-stream/describe-stream.command.js.map +1 -0
  152. package/dist/service/dynamodb/command/stream/describe-stream/sim-dynamodb-describe-stream.d.ts +26 -0
  153. package/dist/service/dynamodb/command/stream/describe-stream/sim-dynamodb-describe-stream.d.ts.map +1 -0
  154. package/dist/service/dynamodb/command/stream/describe-stream/sim-dynamodb-describe-stream.js +77 -0
  155. package/dist/service/dynamodb/command/stream/describe-stream/sim-dynamodb-describe-stream.js.map +1 -0
  156. package/dist/service/dynamodb/command/stream/get-records/get-records.command.d.ts +32 -0
  157. package/dist/service/dynamodb/command/stream/get-records/get-records.command.d.ts.map +1 -0
  158. package/dist/service/dynamodb/command/stream/get-records/get-records.command.js +5 -0
  159. package/dist/service/dynamodb/command/stream/get-records/get-records.command.js.map +1 -0
  160. package/dist/service/dynamodb/command/stream/get-records/sim-dynamodb-get-records.d.ts +29 -0
  161. package/dist/service/dynamodb/command/stream/get-records/sim-dynamodb-get-records.d.ts.map +1 -0
  162. package/dist/service/dynamodb/command/stream/get-records/sim-dynamodb-get-records.js +60 -0
  163. package/dist/service/dynamodb/command/stream/get-records/sim-dynamodb-get-records.js.map +1 -0
  164. package/dist/service/dynamodb/command/stream/get-records/sim-dynamodb-streams-api-record.d.ts +12 -0
  165. package/dist/service/dynamodb/command/stream/get-records/sim-dynamodb-streams-api-record.d.ts.map +1 -0
  166. package/dist/service/dynamodb/command/stream/get-records/sim-dynamodb-streams-api-record.js +52 -0
  167. package/dist/service/dynamodb/command/stream/get-records/sim-dynamodb-streams-api-record.js.map +1 -0
  168. package/dist/service/dynamodb/command/stream/get-shard-iterator/get-shard-iterator.command.d.ts +31 -0
  169. package/dist/service/dynamodb/command/stream/get-shard-iterator/get-shard-iterator.command.d.ts.map +1 -0
  170. package/dist/service/dynamodb/command/stream/get-shard-iterator/get-shard-iterator.command.js +5 -0
  171. package/dist/service/dynamodb/command/stream/get-shard-iterator/get-shard-iterator.command.js.map +1 -0
  172. package/dist/service/dynamodb/command/stream/get-shard-iterator/sim-dynamodb-get-shard-iterator.d.ts +27 -0
  173. package/dist/service/dynamodb/command/stream/get-shard-iterator/sim-dynamodb-get-shard-iterator.d.ts.map +1 -0
  174. package/dist/service/dynamodb/command/stream/get-shard-iterator/sim-dynamodb-get-shard-iterator.js +42 -0
  175. package/dist/service/dynamodb/command/stream/get-shard-iterator/sim-dynamodb-get-shard-iterator.js.map +1 -0
  176. package/dist/service/dynamodb/command/stream/get-shard-iterator/sim-dynamodb-shard-iterator-position.d.ts +11 -0
  177. package/dist/service/dynamodb/command/stream/get-shard-iterator/sim-dynamodb-shard-iterator-position.d.ts.map +1 -0
  178. package/dist/service/dynamodb/command/stream/get-shard-iterator/sim-dynamodb-shard-iterator-position.js +53 -0
  179. package/dist/service/dynamodb/command/stream/get-shard-iterator/sim-dynamodb-shard-iterator-position.js.map +1 -0
  180. package/dist/service/dynamodb/command/stream/list-streams/list-streams.command.d.ts +33 -0
  181. package/dist/service/dynamodb/command/stream/list-streams/list-streams.command.d.ts.map +1 -0
  182. package/dist/service/dynamodb/command/stream/list-streams/list-streams.command.js +5 -0
  183. package/dist/service/dynamodb/command/stream/list-streams/list-streams.command.js.map +1 -0
  184. package/dist/service/dynamodb/command/stream/list-streams/sim-dynamodb-list-streams.d.ts +26 -0
  185. package/dist/service/dynamodb/command/stream/list-streams/sim-dynamodb-list-streams.d.ts.map +1 -0
  186. package/dist/service/dynamodb/command/stream/list-streams/sim-dynamodb-list-streams.js +31 -0
  187. package/dist/service/dynamodb/command/stream/list-streams/sim-dynamodb-list-streams.js.map +1 -0
  188. package/dist/service/dynamodb/command/stream/list-streams/sim-dynamodb-stream-page.d.ts +28 -0
  189. package/dist/service/dynamodb/command/stream/list-streams/sim-dynamodb-stream-page.d.ts.map +1 -0
  190. package/dist/service/dynamodb/command/stream/list-streams/sim-dynamodb-stream-page.js +59 -0
  191. package/dist/service/dynamodb/command/stream/list-streams/sim-dynamodb-stream-page.js.map +1 -0
  192. package/dist/service/dynamodb/command/stream/sim-dynamodb-stream-access.d.ts +44 -0
  193. package/dist/service/dynamodb/command/stream/sim-dynamodb-stream-access.d.ts.map +1 -0
  194. package/dist/service/dynamodb/command/stream/sim-dynamodb-stream-access.js +53 -0
  195. package/dist/service/dynamodb/command/stream/sim-dynamodb-stream-access.js.map +1 -0
  196. package/dist/service/dynamodb/command/stream/sim-dynamodb-stream-command.types.d.ts +8 -0
  197. package/dist/service/dynamodb/command/stream/sim-dynamodb-stream-command.types.d.ts.map +1 -0
  198. package/dist/service/dynamodb/command/stream/sim-dynamodb-stream-command.types.js +2 -0
  199. package/dist/service/dynamodb/command/stream/sim-dynamodb-stream-command.types.js.map +1 -0
  200. package/dist/service/dynamodb/command/stream/stream.types.d.ts +84 -0
  201. package/dist/service/dynamodb/command/stream/stream.types.d.ts.map +1 -0
  202. package/dist/service/dynamodb/command/stream/stream.types.js +2 -0
  203. package/dist/service/dynamodb/command/stream/stream.types.js.map +1 -0
  204. package/dist/service/dynamodb/error/dynamodb.error.d.ts +17 -0
  205. package/dist/service/dynamodb/error/dynamodb.error.d.ts.map +1 -1
  206. package/dist/service/dynamodb/error/dynamodb.error.js +19 -0
  207. package/dist/service/dynamodb/error/dynamodb.error.js.map +1 -1
  208. package/dist/service/dynamodb/index.d.ts +1 -0
  209. package/dist/service/dynamodb/index.d.ts.map +1 -1
  210. package/dist/service/dynamodb/index.js +1 -0
  211. package/dist/service/dynamodb/index.js.map +1 -1
  212. package/dist/service/dynamodb/sdk/sim-dynamodb-streams-sdk-command-router.d.ts +24 -0
  213. package/dist/service/dynamodb/sdk/sim-dynamodb-streams-sdk-command-router.d.ts.map +1 -0
  214. package/dist/service/dynamodb/sdk/sim-dynamodb-streams-sdk-command-router.js +46 -0
  215. package/dist/service/dynamodb/sdk/sim-dynamodb-streams-sdk-command-router.js.map +1 -0
  216. package/dist/service/dynamodb/sim-dynamodb-streams.d.ts +59 -0
  217. package/dist/service/dynamodb/sim-dynamodb-streams.d.ts.map +1 -0
  218. package/dist/service/dynamodb/sim-dynamodb-streams.js +79 -0
  219. package/dist/service/dynamodb/sim-dynamodb-streams.js.map +1 -0
  220. package/dist/service/dynamodb/sim-dynamodb.d.ts +6 -3
  221. package/dist/service/dynamodb/sim-dynamodb.d.ts.map +1 -1
  222. package/dist/service/dynamodb/sim-dynamodb.js +16 -5
  223. package/dist/service/dynamodb/sim-dynamodb.js.map +1 -1
  224. package/dist/service/dynamodb/stream/sim-dynamodb-stream-position.d.ts +31 -0
  225. package/dist/service/dynamodb/stream/sim-dynamodb-stream-position.d.ts.map +1 -0
  226. package/dist/service/dynamodb/stream/sim-dynamodb-stream-position.js +13 -0
  227. package/dist/service/dynamodb/stream/sim-dynamodb-stream-position.js.map +1 -0
  228. package/dist/service/dynamodb/stream/sim-dynamodb-stream-read.d.ts +33 -0
  229. package/dist/service/dynamodb/stream/sim-dynamodb-stream-read.d.ts.map +1 -0
  230. package/dist/service/dynamodb/stream/sim-dynamodb-stream-read.js +66 -0
  231. package/dist/service/dynamodb/stream/sim-dynamodb-stream-read.js.map +1 -0
  232. package/dist/service/dynamodb/stream/sim-dynamodb-stream-retention.d.ts +17 -0
  233. package/dist/service/dynamodb/stream/sim-dynamodb-stream-retention.d.ts.map +1 -0
  234. package/dist/service/dynamodb/stream/sim-dynamodb-stream-retention.js +24 -0
  235. package/dist/service/dynamodb/stream/sim-dynamodb-stream-retention.js.map +1 -0
  236. package/dist/service/dynamodb/stream/sim-dynamodb-stream-sequence-numbers.d.ts +16 -0
  237. package/dist/service/dynamodb/stream/sim-dynamodb-stream-sequence-numbers.d.ts.map +1 -1
  238. package/dist/service/dynamodb/stream/sim-dynamodb-stream-sequence-numbers.js +32 -0
  239. package/dist/service/dynamodb/stream/sim-dynamodb-stream-sequence-numbers.js.map +1 -1
  240. package/dist/service/dynamodb/stream/sim-dynamodb-stream-shard-iterator.d.ts +25 -0
  241. package/dist/service/dynamodb/stream/sim-dynamodb-stream-shard-iterator.d.ts.map +1 -0
  242. package/dist/service/dynamodb/stream/sim-dynamodb-stream-shard-iterator.js +74 -0
  243. package/dist/service/dynamodb/stream/sim-dynamodb-stream-shard-iterator.js.map +1 -0
  244. package/dist/service/dynamodb/stream/sim-dynamodb-stream-shard.d.ts +33 -0
  245. package/dist/service/dynamodb/stream/sim-dynamodb-stream-shard.d.ts.map +1 -1
  246. package/dist/service/dynamodb/stream/sim-dynamodb-stream-shard.js +49 -0
  247. package/dist/service/dynamodb/stream/sim-dynamodb-stream-shard.js.map +1 -1
  248. package/dist/service/dynamodb/stream/sim-dynamodb-stream-store.d.ts +16 -0
  249. package/dist/service/dynamodb/stream/sim-dynamodb-stream-store.d.ts.map +1 -1
  250. package/dist/service/dynamodb/stream/sim-dynamodb-stream-store.js +25 -0
  251. package/dist/service/dynamodb/stream/sim-dynamodb-stream-store.js.map +1 -1
  252. package/dist/service/dynamodb/stream/sim-dynamodb-stream.d.ts +14 -0
  253. package/dist/service/dynamodb/stream/sim-dynamodb-stream.d.ts.map +1 -1
  254. package/dist/service/dynamodb/stream/sim-dynamodb-stream.js +18 -0
  255. package/dist/service/dynamodb/stream/sim-dynamodb-stream.js.map +1 -1
  256. package/dist/service/dynamodb/stream/sim-dynamodb-streamed-orders.factory.d.ts +31 -0
  257. package/dist/service/dynamodb/stream/sim-dynamodb-streamed-orders.factory.d.ts.map +1 -0
  258. package/dist/service/dynamodb/stream/sim-dynamodb-streamed-orders.factory.js +33 -0
  259. package/dist/service/dynamodb/stream/sim-dynamodb-streamed-orders.factory.js.map +1 -0
  260. package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.d.ts +14 -0
  261. package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.d.ts.map +1 -1
  262. package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.js +29 -1
  263. package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.js.map +1 -1
  264. package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-property-rules.d.ts.map +1 -1
  265. package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-property-rules.js +8 -2
  266. package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-property-rules.js.map +1 -1
  267. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.d.ts +2 -0
  268. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.d.ts.map +1 -1
  269. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.js +7 -1
  270. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.js.map +1 -1
  271. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.d.ts.map +1 -1
  272. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.js +25 -7
  273. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.js.map +1 -1
  274. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-values.d.ts +4 -0
  275. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-values.d.ts.map +1 -1
  276. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-values.js +4 -0
  277. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-values.js.map +1 -1
  278. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.d.ts +5 -2
  279. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.d.ts.map +1 -1
  280. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.js +12 -8
  281. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.js.map +1 -1
  282. package/dist/service/lambda/command/event-source-mapping/sim-lambda-event-source-mapping-commands.d.ts +3 -1
  283. package/dist/service/lambda/command/event-source-mapping/sim-lambda-event-source-mapping-commands.d.ts.map +1 -1
  284. package/dist/service/lambda/command/event-source-mapping/sim-lambda-event-source-mapping-commands.js +1 -1
  285. package/dist/service/lambda/command/event-source-mapping/sim-lambda-event-source-mapping-commands.js.map +1 -1
  286. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-event-image.d.ts +23 -0
  287. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-event-image.d.ts.map +1 -0
  288. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-event-image.js +55 -0
  289. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-event-image.js.map +1 -0
  290. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-polled-stream.d.ts +27 -0
  291. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-polled-stream.d.ts.map +1 -0
  292. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-polled-stream.js +41 -0
  293. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-polled-stream.js.map +1 -0
  294. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-delivery.d.ts +42 -0
  295. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-delivery.d.ts.map +1 -0
  296. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-delivery.js +52 -0
  297. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-delivery.js.map +1 -0
  298. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-event-source-poller.d.ts +77 -0
  299. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-event-source-poller.d.ts.map +1 -0
  300. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-event-source-poller.js +114 -0
  301. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-event-source-poller.js.map +1 -0
  302. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-event.d.ts +21 -0
  303. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-event.d.ts.map +1 -0
  304. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-event.js +56 -0
  305. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-event.js.map +1 -0
  306. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-event.types.d.ts +78 -0
  307. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-event.types.d.ts.map +1 -0
  308. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-event.types.js +8 -0
  309. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-event.types.js.map +1 -0
  310. package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poll-turn.d.ts +40 -0
  311. package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poll-turn.d.ts.map +1 -0
  312. package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poll-turn.js +45 -0
  313. package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poll-turn.js.map +1 -0
  314. package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poller-factory.d.ts +5 -4
  315. package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poller-factory.d.ts.map +1 -1
  316. package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poller-factory.js +18 -5
  317. package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poller-factory.js.map +1 -1
  318. package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-outcome.d.ts +37 -0
  319. package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-outcome.d.ts.map +1 -0
  320. package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-outcome.js +51 -0
  321. package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-outcome.js.map +1 -0
  322. package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-response.d.ts +29 -0
  323. package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-response.d.ts.map +1 -0
  324. package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-response.js +71 -0
  325. package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-response.js.map +1 -0
  326. package/dist/service/lambda/event-source/poll/sim-lambda-stream-checkpoint.d.ts +36 -0
  327. package/dist/service/lambda/event-source/poll/sim-lambda-stream-checkpoint.d.ts.map +1 -0
  328. package/dist/service/lambda/event-source/poll/sim-lambda-stream-checkpoint.js +41 -0
  329. package/dist/service/lambda/event-source/poll/sim-lambda-stream-checkpoint.js.map +1 -0
  330. package/dist/service/lambda/event-source/poll/sim-lambda-stream-progress.d.ts +65 -0
  331. package/dist/service/lambda/event-source/poll/sim-lambda-stream-progress.d.ts.map +1 -0
  332. package/dist/service/lambda/event-source/poll/sim-lambda-stream-progress.js +92 -0
  333. package/dist/service/lambda/event-source/poll/sim-lambda-stream-progress.js.map +1 -0
  334. package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry-backoff.d.ts +36 -0
  335. package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry-backoff.d.ts.map +1 -0
  336. package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry-backoff.js +47 -0
  337. package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry-backoff.js.map +1 -0
  338. package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.d.ts +7 -1
  339. package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.d.ts.map +1 -1
  340. package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.js +10 -27
  341. package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.js.map +1 -1
  342. package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-rules.d.ts +24 -0
  343. package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-rules.d.ts.map +1 -0
  344. package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-rules.js +33 -0
  345. package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-rules.js.map +1 -0
  346. package/dist/service/lambda/event-source/sim-lambda-event-source-arn.d.ts +6 -4
  347. package/dist/service/lambda/event-source/sim-lambda-event-source-arn.d.ts.map +1 -1
  348. package/dist/service/lambda/event-source/sim-lambda-event-source-arn.js +8 -5
  349. package/dist/service/lambda/event-source/sim-lambda-event-source-arn.js.map +1 -1
  350. package/dist/service/lambda/event-source/sim-lambda-event-source-batch-rules.d.ts +5 -1
  351. package/dist/service/lambda/event-source/sim-lambda-event-source-batch-rules.d.ts.map +1 -1
  352. package/dist/service/lambda/event-source/sim-lambda-event-source-batch-rules.js +8 -3
  353. package/dist/service/lambda/event-source/sim-lambda-event-source-batch-rules.js.map +1 -1
  354. package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.d.ts +9 -0
  355. package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.d.ts.map +1 -1
  356. package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.js +8 -0
  357. package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.js.map +1 -1
  358. package/dist/service/lambda/event-source/sim-lambda-event-source-pollers.d.ts +2 -0
  359. package/dist/service/lambda/event-source/sim-lambda-event-source-pollers.d.ts.map +1 -1
  360. package/dist/service/lambda/event-source/sim-lambda-event-source-pollers.js.map +1 -1
  361. package/dist/service/lambda/event-source/sim-lambda-event-source-reachable.d.ts +27 -0
  362. package/dist/service/lambda/event-source/sim-lambda-event-source-reachable.d.ts.map +1 -0
  363. package/dist/service/lambda/event-source/sim-lambda-event-source-reachable.js +40 -0
  364. package/dist/service/lambda/event-source/sim-lambda-event-source-reachable.js.map +1 -0
  365. package/dist/service/lambda/event-source/sim-lambda-event-source-starting-position.d.ts +60 -0
  366. package/dist/service/lambda/event-source/sim-lambda-event-source-starting-position.d.ts.map +1 -0
  367. package/dist/service/lambda/event-source/sim-lambda-event-source-starting-position.js +51 -0
  368. package/dist/service/lambda/event-source/sim-lambda-event-source-starting-position.js.map +1 -0
  369. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-stream-positions.d.ts +31 -0
  370. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-stream-positions.d.ts.map +1 -0
  371. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-stream-positions.js +29 -0
  372. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-stream-positions.js.map +1 -0
  373. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-stream-reader.d.ts +32 -0
  374. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-stream-reader.d.ts.map +1 -0
  375. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-stream-reader.js +48 -0
  376. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-stream-reader.js.map +1 -0
  377. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-stream-shard.d.ts +28 -0
  378. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-stream-shard.d.ts.map +1 -0
  379. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-stream-shard.js +71 -0
  380. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-stream-shard.js.map +1 -0
  381. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-streams.d.ts +42 -0
  382. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-streams.d.ts.map +1 -0
  383. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-streams.js +55 -0
  384. package/dist/service/lambda/event-source/stream/sim-dynamodb-event-source-streams.js.map +1 -0
  385. package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-attribute-value.d.ts +150 -0
  386. package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-attribute-value.d.ts.map +1 -0
  387. package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-attribute-value.js +2 -0
  388. package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-attribute-value.js.map +1 -0
  389. package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-arn.d.ts +52 -0
  390. package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-arn.d.ts.map +1 -0
  391. package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-arn.js +88 -0
  392. package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-arn.js.map +1 -0
  393. package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-rules.d.ts +25 -0
  394. package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-rules.d.ts.map +1 -0
  395. package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-rules.js +34 -0
  396. package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-rules.js.map +1 -0
  397. package/dist/service/lambda/event-source/stream/sim-lambda-event-source-delivery-context.d.ts +31 -0
  398. package/dist/service/lambda/event-source/stream/sim-lambda-event-source-delivery-context.d.ts.map +1 -0
  399. package/dist/service/lambda/event-source/stream/sim-lambda-event-source-delivery-context.js +33 -0
  400. package/dist/service/lambda/event-source/stream/sim-lambda-event-source-delivery-context.js.map +1 -0
  401. package/dist/service/lambda/event-source/stream/sim-lambda-event-source-stream-service.d.ts +73 -0
  402. package/dist/service/lambda/event-source/stream/sim-lambda-event-source-stream-service.d.ts.map +1 -0
  403. package/dist/service/lambda/event-source/stream/sim-lambda-event-source-stream-service.js +2 -0
  404. package/dist/service/lambda/event-source/stream/sim-lambda-event-source-stream-service.js.map +1 -0
  405. package/dist/service/lambda/event-source/stream/sim-lambda-event-source-streams.d.ts +148 -0
  406. package/dist/service/lambda/event-source/stream/sim-lambda-event-source-streams.d.ts.map +1 -0
  407. package/dist/service/lambda/event-source/stream/sim-lambda-event-source-streams.js +37 -0
  408. package/dist/service/lambda/event-source/stream/sim-lambda-event-source-streams.js.map +1 -0
  409. package/dist/service/lambda/event-source/stream/sim-lambda-stream-cascade-guard.d.ts +36 -0
  410. package/dist/service/lambda/event-source/stream/sim-lambda-stream-cascade-guard.d.ts.map +1 -0
  411. package/dist/service/lambda/event-source/stream/sim-lambda-stream-cascade-guard.js +50 -0
  412. package/dist/service/lambda/event-source/stream/sim-lambda-stream-cascade-guard.js.map +1 -0
  413. package/dist/service/lambda/event-source/stream/sim-lambda-stream-cascade.error.d.ts +24 -0
  414. package/dist/service/lambda/event-source/stream/sim-lambda-stream-cascade.error.d.ts.map +1 -0
  415. package/dist/service/lambda/event-source/stream/sim-lambda-stream-cascade.error.js +24 -0
  416. package/dist/service/lambda/event-source/stream/sim-lambda-stream-cascade.error.js.map +1 -0
  417. package/dist/service/lambda/index.d.ts +3 -0
  418. package/dist/service/lambda/index.d.ts.map +1 -1
  419. package/dist/service/lambda/index.js +1 -0
  420. package/dist/service/lambda/index.js.map +1 -1
  421. package/dist/service/lambda/sim-lambda-commands.d.ts +2 -0
  422. package/dist/service/lambda/sim-lambda-commands.d.ts.map +1 -1
  423. package/dist/service/lambda/sim-lambda-commands.js +7 -3
  424. package/dist/service/lambda/sim-lambda-commands.js.map +1 -1
  425. package/dist/service/rekognition/command/authorize/sim-rekognition-authorizer.d.ts +26 -0
  426. package/dist/service/rekognition/command/authorize/sim-rekognition-authorizer.d.ts.map +1 -0
  427. package/dist/service/rekognition/command/authorize/sim-rekognition-authorizer.js +45 -0
  428. package/dist/service/rekognition/command/authorize/sim-rekognition-authorizer.js.map +1 -0
  429. package/dist/service/rekognition/command/detect-faces/detect-faces-request.d.ts +12 -0
  430. package/dist/service/rekognition/command/detect-faces/detect-faces-request.d.ts.map +1 -0
  431. package/dist/service/rekognition/command/detect-faces/detect-faces-request.js +18 -0
  432. package/dist/service/rekognition/command/detect-faces/detect-faces-request.js.map +1 -0
  433. package/dist/service/rekognition/command/detect-faces/detect-faces.command.d.ts +133 -0
  434. package/dist/service/rekognition/command/detect-faces/detect-faces.command.d.ts.map +1 -0
  435. package/dist/service/rekognition/command/detect-faces/detect-faces.command.js +2 -0
  436. package/dist/service/rekognition/command/detect-faces/detect-faces.command.js.map +1 -0
  437. package/dist/service/rekognition/command/detect-faces/detect-faces.handler.d.ts +35 -0
  438. package/dist/service/rekognition/command/detect-faces/detect-faces.handler.d.ts.map +1 -0
  439. package/dist/service/rekognition/command/detect-faces/detect-faces.handler.js +39 -0
  440. package/dist/service/rekognition/command/detect-faces/detect-faces.handler.js.map +1 -0
  441. package/dist/service/rekognition/command/detect-labels/detect-labels-request.d.ts +30 -0
  442. package/dist/service/rekognition/command/detect-labels/detect-labels-request.d.ts.map +1 -0
  443. package/dist/service/rekognition/command/detect-labels/detect-labels-request.js +71 -0
  444. package/dist/service/rekognition/command/detect-labels/detect-labels-request.js.map +1 -0
  445. package/dist/service/rekognition/command/detect-labels/detect-labels.command.d.ts +57 -0
  446. package/dist/service/rekognition/command/detect-labels/detect-labels.command.d.ts.map +1 -0
  447. package/dist/service/rekognition/command/detect-labels/detect-labels.command.js +2 -0
  448. package/dist/service/rekognition/command/detect-labels/detect-labels.command.js.map +1 -0
  449. package/dist/service/rekognition/command/detect-labels/detect-labels.handler.d.ts +35 -0
  450. package/dist/service/rekognition/command/detect-labels/detect-labels.handler.d.ts.map +1 -0
  451. package/dist/service/rekognition/command/detect-labels/detect-labels.handler.js +41 -0
  452. package/dist/service/rekognition/command/detect-labels/detect-labels.handler.js.map +1 -0
  453. package/dist/service/rekognition/command/detect-moderation-labels/detect-moderation-labels-request.d.ts +17 -0
  454. package/dist/service/rekognition/command/detect-moderation-labels/detect-moderation-labels-request.d.ts.map +1 -0
  455. package/dist/service/rekognition/command/detect-moderation-labels/detect-moderation-labels-request.js +30 -0
  456. package/dist/service/rekognition/command/detect-moderation-labels/detect-moderation-labels-request.js.map +1 -0
  457. package/dist/service/rekognition/command/detect-moderation-labels/detect-moderation-labels.command.d.ts +42 -0
  458. package/dist/service/rekognition/command/detect-moderation-labels/detect-moderation-labels.command.d.ts.map +1 -0
  459. package/dist/service/rekognition/command/detect-moderation-labels/detect-moderation-labels.command.js +2 -0
  460. package/dist/service/rekognition/command/detect-moderation-labels/detect-moderation-labels.command.js.map +1 -0
  461. package/dist/service/rekognition/command/detect-moderation-labels/detect-moderation-labels.handler.d.ts +36 -0
  462. package/dist/service/rekognition/command/detect-moderation-labels/detect-moderation-labels.handler.d.ts.map +1 -0
  463. package/dist/service/rekognition/command/detect-moderation-labels/detect-moderation-labels.handler.js +47 -0
  464. package/dist/service/rekognition/command/detect-moderation-labels/detect-moderation-labels.handler.js.map +1 -0
  465. package/dist/service/rekognition/command/sim-rekognition-min-confidence.d.ts +19 -0
  466. package/dist/service/rekognition/command/sim-rekognition-min-confidence.d.ts.map +1 -0
  467. package/dist/service/rekognition/command/sim-rekognition-min-confidence.js +34 -0
  468. package/dist/service/rekognition/command/sim-rekognition-min-confidence.js.map +1 -0
  469. package/dist/service/rekognition/command/sim-rekognition-request-options.d.ts +16 -0
  470. package/dist/service/rekognition/command/sim-rekognition-request-options.d.ts.map +1 -0
  471. package/dist/service/rekognition/command/sim-rekognition-request-options.js +2 -0
  472. package/dist/service/rekognition/command/sim-rekognition-request-options.js.map +1 -0
  473. package/dist/service/rekognition/command/sim-rekognition-unsimulated-input.d.ts +19 -0
  474. package/dist/service/rekognition/command/sim-rekognition-unsimulated-input.d.ts.map +1 -0
  475. package/dist/service/rekognition/command/sim-rekognition-unsimulated-input.js +30 -0
  476. package/dist/service/rekognition/command/sim-rekognition-unsimulated-input.js.map +1 -0
  477. package/dist/service/rekognition/error/sim-rekognition.error.d.ts +87 -0
  478. package/dist/service/rekognition/error/sim-rekognition.error.d.ts.map +1 -0
  479. package/dist/service/rekognition/error/sim-rekognition.error.js +95 -0
  480. package/dist/service/rekognition/error/sim-rekognition.error.js.map +1 -0
  481. package/dist/service/rekognition/face/sim-rekognition-declared-value.d.ts +26 -0
  482. package/dist/service/rekognition/face/sim-rekognition-declared-value.d.ts.map +1 -0
  483. package/dist/service/rekognition/face/sim-rekognition-declared-value.js +28 -0
  484. package/dist/service/rekognition/face/sim-rekognition-declared-value.js.map +1 -0
  485. package/dist/service/rekognition/face/sim-rekognition-detected-face.d.ts +29 -0
  486. package/dist/service/rekognition/face/sim-rekognition-detected-face.d.ts.map +1 -0
  487. package/dist/service/rekognition/face/sim-rekognition-detected-face.js +53 -0
  488. package/dist/service/rekognition/face/sim-rekognition-detected-face.js.map +1 -0
  489. package/dist/service/rekognition/face/sim-rekognition-emotion-name.d.ts +18 -0
  490. package/dist/service/rekognition/face/sim-rekognition-emotion-name.d.ts.map +1 -0
  491. package/dist/service/rekognition/face/sim-rekognition-emotion-name.js +27 -0
  492. package/dist/service/rekognition/face/sim-rekognition-emotion-name.js.map +1 -0
  493. package/dist/service/rekognition/face/sim-rekognition-face-age-and-gender.d.ts +24 -0
  494. package/dist/service/rekognition/face/sim-rekognition-face-age-and-gender.d.ts.map +1 -0
  495. package/dist/service/rekognition/face/sim-rekognition-face-age-and-gender.js +62 -0
  496. package/dist/service/rekognition/face/sim-rekognition-face-age-and-gender.js.map +1 -0
  497. package/dist/service/rekognition/face/sim-rekognition-face-attributes.d.ts +41 -0
  498. package/dist/service/rekognition/face/sim-rekognition-face-attributes.d.ts.map +1 -0
  499. package/dist/service/rekognition/face/sim-rekognition-face-attributes.js +75 -0
  500. package/dist/service/rekognition/face/sim-rekognition-face-attributes.js.map +1 -0
  501. package/dist/service/rekognition/face/sim-rekognition-face-declaration.d.ts +116 -0
  502. package/dist/service/rekognition/face/sim-rekognition-face-declaration.d.ts.map +1 -0
  503. package/dist/service/rekognition/face/sim-rekognition-face-declaration.js +2 -0
  504. package/dist/service/rekognition/face/sim-rekognition-face-declaration.js.map +1 -0
  505. package/dist/service/rekognition/face/sim-rekognition-face-defaults.d.ts +31 -0
  506. package/dist/service/rekognition/face/sim-rekognition-face-defaults.d.ts.map +1 -0
  507. package/dist/service/rekognition/face/sim-rekognition-face-defaults.js +120 -0
  508. package/dist/service/rekognition/face/sim-rekognition-face-defaults.js.map +1 -0
  509. package/dist/service/rekognition/face/sim-rekognition-face-detail-builder.d.ts +31 -0
  510. package/dist/service/rekognition/face/sim-rekognition-face-detail-builder.d.ts.map +1 -0
  511. package/dist/service/rekognition/face/sim-rekognition-face-detail-builder.js +38 -0
  512. package/dist/service/rekognition/face/sim-rekognition-face-detail-builder.js.map +1 -0
  513. package/dist/service/rekognition/face/sim-rekognition-face-detection.d.ts +21 -0
  514. package/dist/service/rekognition/face/sim-rekognition-face-detection.d.ts.map +1 -0
  515. package/dist/service/rekognition/face/sim-rekognition-face-detection.js +33 -0
  516. package/dist/service/rekognition/face/sim-rekognition-face-detection.js.map +1 -0
  517. package/dist/service/rekognition/face/sim-rekognition-face-emotions.d.ts +23 -0
  518. package/dist/service/rekognition/face/sim-rekognition-face-emotions.d.ts.map +1 -0
  519. package/dist/service/rekognition/face/sim-rekognition-face-emotions.js +55 -0
  520. package/dist/service/rekognition/face/sim-rekognition-face-emotions.js.map +1 -0
  521. package/dist/service/rekognition/face/sim-rekognition-face-eye-direction.d.ts +19 -0
  522. package/dist/service/rekognition/face/sim-rekognition-face-eye-direction.d.ts.map +1 -0
  523. package/dist/service/rekognition/face/sim-rekognition-face-eye-direction.js +31 -0
  524. package/dist/service/rekognition/face/sim-rekognition-face-eye-direction.js.map +1 -0
  525. package/dist/service/rekognition/face/sim-rekognition-face-feature-members.d.ts +56 -0
  526. package/dist/service/rekognition/face/sim-rekognition-face-feature-members.d.ts.map +1 -0
  527. package/dist/service/rekognition/face/sim-rekognition-face-feature-members.js +22 -0
  528. package/dist/service/rekognition/face/sim-rekognition-face-feature-members.js.map +1 -0
  529. package/dist/service/rekognition/face/sim-rekognition-face-features.d.ts +19 -0
  530. package/dist/service/rekognition/face/sim-rekognition-face-features.d.ts.map +1 -0
  531. package/dist/service/rekognition/face/sim-rekognition-face-features.js +39 -0
  532. package/dist/service/rekognition/face/sim-rekognition-face-features.js.map +1 -0
  533. package/dist/service/rekognition/face/sim-rekognition-face-frame.d.ts +27 -0
  534. package/dist/service/rekognition/face/sim-rekognition-face-frame.d.ts.map +1 -0
  535. package/dist/service/rekognition/face/sim-rekognition-face-frame.js +74 -0
  536. package/dist/service/rekognition/face/sim-rekognition-face-frame.js.map +1 -0
  537. package/dist/service/rekognition/face/sim-rekognition-face-landmark-points.d.ts +25 -0
  538. package/dist/service/rekognition/face/sim-rekognition-face-landmark-points.d.ts.map +1 -0
  539. package/dist/service/rekognition/face/sim-rekognition-face-landmark-points.js +89 -0
  540. package/dist/service/rekognition/face/sim-rekognition-face-landmark-points.js.map +1 -0
  541. package/dist/service/rekognition/face/sim-rekognition-face-landmarks.d.ts +20 -0
  542. package/dist/service/rekognition/face/sim-rekognition-face-landmarks.d.ts.map +1 -0
  543. package/dist/service/rekognition/face/sim-rekognition-face-landmarks.js +32 -0
  544. package/dist/service/rekognition/face/sim-rekognition-face-landmarks.js.map +1 -0
  545. package/dist/service/rekognition/face/sim-rekognition-face-measures.d.ts +27 -0
  546. package/dist/service/rekognition/face/sim-rekognition-face-measures.d.ts.map +1 -0
  547. package/dist/service/rekognition/face/sim-rekognition-face-measures.js +49 -0
  548. package/dist/service/rekognition/face/sim-rekognition-face-measures.js.map +1 -0
  549. package/dist/service/rekognition/face/sim-rekognition-faces.d.ts +36 -0
  550. package/dist/service/rekognition/face/sim-rekognition-faces.d.ts.map +1 -0
  551. package/dist/service/rekognition/face/sim-rekognition-faces.js +49 -0
  552. package/dist/service/rekognition/face/sim-rekognition-faces.js.map +1 -0
  553. package/dist/service/rekognition/face/sim-rekognition-landmark-name.d.ts +30 -0
  554. package/dist/service/rekognition/face/sim-rekognition-landmark-name.d.ts.map +1 -0
  555. package/dist/service/rekognition/face/sim-rekognition-landmark-name.js +66 -0
  556. package/dist/service/rekognition/face/sim-rekognition-landmark-name.js.map +1 -0
  557. package/dist/service/rekognition/image/s3/sim-aws-rekognition-image-objects.d.ts +48 -0
  558. package/dist/service/rekognition/image/s3/sim-aws-rekognition-image-objects.d.ts.map +1 -0
  559. package/dist/service/rekognition/image/s3/sim-aws-rekognition-image-objects.js +78 -0
  560. package/dist/service/rekognition/image/s3/sim-aws-rekognition-image-objects.js.map +1 -0
  561. package/dist/service/rekognition/image/sim-rekognition-bounding-box.d.ts +48 -0
  562. package/dist/service/rekognition/image/sim-rekognition-bounding-box.d.ts.map +1 -0
  563. package/dist/service/rekognition/image/sim-rekognition-bounding-box.js +50 -0
  564. package/dist/service/rekognition/image/sim-rekognition-bounding-box.js.map +1 -0
  565. package/dist/service/rekognition/image/sim-rekognition-image-format.d.ts +17 -0
  566. package/dist/service/rekognition/image/sim-rekognition-image-format.d.ts.map +1 -0
  567. package/dist/service/rekognition/image/sim-rekognition-image-format.js +28 -0
  568. package/dist/service/rekognition/image/sim-rekognition-image-format.js.map +1 -0
  569. package/dist/service/rekognition/image/sim-rekognition-image-hash.d.ts +15 -0
  570. package/dist/service/rekognition/image/sim-rekognition-image-hash.d.ts.map +1 -0
  571. package/dist/service/rekognition/image/sim-rekognition-image-hash.js +20 -0
  572. package/dist/service/rekognition/image/sim-rekognition-image-hash.js.map +1 -0
  573. package/dist/service/rekognition/image/sim-rekognition-image-input.d.ts +23 -0
  574. package/dist/service/rekognition/image/sim-rekognition-image-input.d.ts.map +1 -0
  575. package/dist/service/rekognition/image/sim-rekognition-image-input.js +2 -0
  576. package/dist/service/rekognition/image/sim-rekognition-image-input.js.map +1 -0
  577. package/dist/service/rekognition/image/sim-rekognition-image-objects.d.ts +35 -0
  578. package/dist/service/rekognition/image/sim-rekognition-image-objects.d.ts.map +1 -0
  579. package/dist/service/rekognition/image/sim-rekognition-image-objects.js +21 -0
  580. package/dist/service/rekognition/image/sim-rekognition-image-objects.js.map +1 -0
  581. package/dist/service/rekognition/image/sim-rekognition-image-request.d.ts +59 -0
  582. package/dist/service/rekognition/image/sim-rekognition-image-request.d.ts.map +1 -0
  583. package/dist/service/rekognition/image/sim-rekognition-image-request.js +88 -0
  584. package/dist/service/rekognition/image/sim-rekognition-image-request.js.map +1 -0
  585. package/dist/service/rekognition/image/sim-rekognition-image.d.ts +30 -0
  586. package/dist/service/rekognition/image/sim-rekognition-image.d.ts.map +1 -0
  587. package/dist/service/rekognition/image/sim-rekognition-image.js +36 -0
  588. package/dist/service/rekognition/image/sim-rekognition-image.js.map +1 -0
  589. package/dist/service/rekognition/index.d.ts +18 -0
  590. package/dist/service/rekognition/index.d.ts.map +1 -0
  591. package/dist/service/rekognition/index.js +13 -0
  592. package/dist/service/rekognition/index.js.map +1 -0
  593. package/dist/service/rekognition/label/sim-rekognition-detected-label.d.ts +11 -0
  594. package/dist/service/rekognition/label/sim-rekognition-detected-label.d.ts.map +1 -0
  595. package/dist/service/rekognition/label/sim-rekognition-detected-label.js +49 -0
  596. package/dist/service/rekognition/label/sim-rekognition-detected-label.js.map +1 -0
  597. package/dist/service/rekognition/label/sim-rekognition-label-declaration.d.ts +43 -0
  598. package/dist/service/rekognition/label/sim-rekognition-label-declaration.d.ts.map +1 -0
  599. package/dist/service/rekognition/label/sim-rekognition-label-declaration.js +10 -0
  600. package/dist/service/rekognition/label/sim-rekognition-label-declaration.js.map +1 -0
  601. package/dist/service/rekognition/label/sim-rekognition-label-defaults.d.ts +22 -0
  602. package/dist/service/rekognition/label/sim-rekognition-label-defaults.d.ts.map +1 -0
  603. package/dist/service/rekognition/label/sim-rekognition-label-defaults.js +42 -0
  604. package/dist/service/rekognition/label/sim-rekognition-label-defaults.js.map +1 -0
  605. package/dist/service/rekognition/label/sim-rekognition-label-detection.d.ts +32 -0
  606. package/dist/service/rekognition/label/sim-rekognition-label-detection.d.ts.map +1 -0
  607. package/dist/service/rekognition/label/sim-rekognition-label-detection.js +35 -0
  608. package/dist/service/rekognition/label/sim-rekognition-label-detection.js.map +1 -0
  609. package/dist/service/rekognition/label/sim-rekognition-label-instances.d.ts +19 -0
  610. package/dist/service/rekognition/label/sim-rekognition-label-instances.d.ts.map +1 -0
  611. package/dist/service/rekognition/label/sim-rekognition-label-instances.js +28 -0
  612. package/dist/service/rekognition/label/sim-rekognition-label-instances.js.map +1 -0
  613. package/dist/service/rekognition/label/sim-rekognition-labels.d.ts +30 -0
  614. package/dist/service/rekognition/label/sim-rekognition-labels.d.ts.map +1 -0
  615. package/dist/service/rekognition/label/sim-rekognition-labels.js +38 -0
  616. package/dist/service/rekognition/label/sim-rekognition-labels.js.map +1 -0
  617. package/dist/service/rekognition/moderation/sim-rekognition-moderation-labels.d.ts +29 -0
  618. package/dist/service/rekognition/moderation/sim-rekognition-moderation-labels.d.ts.map +1 -0
  619. package/dist/service/rekognition/moderation/sim-rekognition-moderation-labels.js +85 -0
  620. package/dist/service/rekognition/moderation/sim-rekognition-moderation-labels.js.map +1 -0
  621. package/dist/service/rekognition/moderation/sim-rekognition-moderation-result.d.ts +46 -0
  622. package/dist/service/rekognition/moderation/sim-rekognition-moderation-result.d.ts.map +1 -0
  623. package/dist/service/rekognition/moderation/sim-rekognition-moderation-result.js +79 -0
  624. package/dist/service/rekognition/moderation/sim-rekognition-moderation-result.js.map +1 -0
  625. package/dist/service/rekognition/moderation/sim-rekognition-moderation-taxonomy.d.ts +55 -0
  626. package/dist/service/rekognition/moderation/sim-rekognition-moderation-taxonomy.d.ts.map +1 -0
  627. package/dist/service/rekognition/moderation/sim-rekognition-moderation-taxonomy.js +87 -0
  628. package/dist/service/rekognition/moderation/sim-rekognition-moderation-taxonomy.js.map +1 -0
  629. package/dist/service/rekognition/moderation/sim-rekognition-moderation.d.ts +35 -0
  630. package/dist/service/rekognition/moderation/sim-rekognition-moderation.d.ts.map +1 -0
  631. package/dist/service/rekognition/moderation/sim-rekognition-moderation.js +57 -0
  632. package/dist/service/rekognition/moderation/sim-rekognition-moderation.js.map +1 -0
  633. package/dist/service/rekognition/rule/sim-rekognition-declared-confidence.d.ts +21 -0
  634. package/dist/service/rekognition/rule/sim-rekognition-declared-confidence.d.ts.map +1 -0
  635. package/dist/service/rekognition/rule/sim-rekognition-declared-confidence.js +34 -0
  636. package/dist/service/rekognition/rule/sim-rekognition-declared-confidence.js.map +1 -0
  637. package/dist/service/rekognition/rule/sim-rekognition-result-rules.d.ts +51 -0
  638. package/dist/service/rekognition/rule/sim-rekognition-result-rules.d.ts.map +1 -0
  639. package/dist/service/rekognition/rule/sim-rekognition-result-rules.js +80 -0
  640. package/dist/service/rekognition/rule/sim-rekognition-result-rules.js.map +1 -0
  641. package/dist/service/rekognition/sample/sim-rekognition-sample-image-files.d.ts +27 -0
  642. package/dist/service/rekognition/sample/sim-rekognition-sample-image-files.d.ts.map +1 -0
  643. package/dist/service/rekognition/sample/sim-rekognition-sample-image-files.js +62 -0
  644. package/dist/service/rekognition/sample/sim-rekognition-sample-image-files.js.map +1 -0
  645. package/dist/service/rekognition/sample/sim-rekognition-sample-image.d.ts +26 -0
  646. package/dist/service/rekognition/sample/sim-rekognition-sample-image.d.ts.map +1 -0
  647. package/dist/service/rekognition/sample/sim-rekognition-sample-image.js +32 -0
  648. package/dist/service/rekognition/sample/sim-rekognition-sample-image.js.map +1 -0
  649. package/dist/service/rekognition/sample/sim-rekognition-sample-images.d.ts +52 -0
  650. package/dist/service/rekognition/sample/sim-rekognition-sample-images.d.ts.map +1 -0
  651. package/dist/service/rekognition/sample/sim-rekognition-sample-images.js +63 -0
  652. package/dist/service/rekognition/sample/sim-rekognition-sample-images.js.map +1 -0
  653. package/dist/service/rekognition/sample/sim-rekognition-sample-rules.d.ts +29 -0
  654. package/dist/service/rekognition/sample/sim-rekognition-sample-rules.d.ts.map +1 -0
  655. package/dist/service/rekognition/sample/sim-rekognition-sample-rules.js +31 -0
  656. package/dist/service/rekognition/sample/sim-rekognition-sample-rules.js.map +1 -0
  657. package/dist/service/rekognition/sdk/sim-rekognition-sdk-command-router.d.ts +20 -0
  658. package/dist/service/rekognition/sdk/sim-rekognition-sdk-command-router.d.ts.map +1 -0
  659. package/dist/service/rekognition/sdk/sim-rekognition-sdk-command-router.js +38 -0
  660. package/dist/service/rekognition/sdk/sim-rekognition-sdk-command-router.js.map +1 -0
  661. package/dist/service/rekognition/sim-rekognition.d.ts +95 -0
  662. package/dist/service/rekognition/sim-rekognition.d.ts.map +1 -0
  663. package/dist/service/rekognition/sim-rekognition.js +124 -0
  664. package/dist/service/rekognition/sim-rekognition.js.map +1 -0
  665. package/package.json +8 -2
  666. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-property-error.d.ts.map +0 -1
  667. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-property-error.js.map +0 -1
  668. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-values.d.ts.map +0 -1
  669. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-values.js.map +0 -1
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Every facial landmark real Rekognition reports, in the order it reports
3
+ * them in.
4
+ *
5
+ * The order is the one the AWS `DetectFaces` example response uses, so
6
+ * landmarks come back in the same order whichever order a declaration wrote
7
+ * them in.
8
+ *
9
+ * https://docs.aws.amazon.com/rekognition/latest/APIReference/API_Landmark.html
10
+ */
11
+ export declare const simRekognitionLandmarkNames: readonly ["eyeLeft", "eyeRight", "mouthLeft", "mouthRight", "nose", "leftEyeBrowLeft", "leftEyeBrowRight", "leftEyeBrowUp", "rightEyeBrowLeft", "rightEyeBrowRight", "rightEyeBrowUp", "leftEyeLeft", "leftEyeRight", "leftEyeUp", "leftEyeDown", "rightEyeLeft", "rightEyeRight", "rightEyeUp", "rightEyeDown", "noseLeft", "noseRight", "mouthUp", "mouthDown", "leftPupil", "rightPupil", "upperJawlineLeft", "midJawlineLeft", "chinBottom", "midJawlineRight", "upperJawlineRight"];
12
+ /**
13
+ * The name of one facial landmark.
14
+ */
15
+ export type SimRekognitionLandmarkName = (typeof simRekognitionLandmarkNames)[number];
16
+ /**
17
+ * The landmarks a response carries when `ALL` was not asked for.
18
+ *
19
+ * Real Rekognition reports these five for a default request and the whole set
20
+ * for `ALL`, which is what makes `Attributes` worth simulating: a caller
21
+ * reading `chinBottom` from a default request reads nothing on AWS either.
22
+ *
23
+ * https://docs.aws.amazon.com/rekognition/latest/dg/faces-detect-images.html
24
+ */
25
+ export declare const simRekognitionDefaultLandmarkNames: ReadonlySet<string>;
26
+ /**
27
+ * Whether a name is one of the landmarks Rekognition reports.
28
+ */
29
+ export declare function isSimRekognitionLandmarkName(name: string): name is SimRekognitionLandmarkName;
30
+ //# sourceMappingURL=sim-rekognition-landmark-name.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-rekognition-landmark-name.d.ts","sourceRoot":"","sources":["../../../../src/service/rekognition/face/sim-rekognition-landmark-name.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,eAAO,MAAM,2BAA2B,YACtC,SAAS,EACT,UAAU,EACV,WAAW,EACX,YAAY,EACZ,MAAM,EACN,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,WAAW,EACX,aAAa,EACb,cAAc,EACd,eAAe,EACf,YAAY,EACZ,cAAc,EACd,UAAU,EACV,WAAW,EACX,SAAS,EACT,WAAW,EACX,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,CACX,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,0BAA0B,GACpC,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/C;;;;;;;;GAQG;AACH,eAAO,MAAM,kCAAkC,EAAE,WAAW,CAAC,MAAM,CAO/D,CAAC;AAIL;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,MAAM,GACX,IAAI,IAAI,0BAA0B,CAEpC"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Every facial landmark real Rekognition reports, in the order it reports
3
+ * them in.
4
+ *
5
+ * The order is the one the AWS `DetectFaces` example response uses, so
6
+ * landmarks come back in the same order whichever order a declaration wrote
7
+ * them in.
8
+ *
9
+ * https://docs.aws.amazon.com/rekognition/latest/APIReference/API_Landmark.html
10
+ */
11
+ export const simRekognitionLandmarkNames = [
12
+ "eyeLeft",
13
+ "eyeRight",
14
+ "mouthLeft",
15
+ "mouthRight",
16
+ "nose",
17
+ "leftEyeBrowLeft",
18
+ "leftEyeBrowRight",
19
+ "leftEyeBrowUp",
20
+ "rightEyeBrowLeft",
21
+ "rightEyeBrowRight",
22
+ "rightEyeBrowUp",
23
+ "leftEyeLeft",
24
+ "leftEyeRight",
25
+ "leftEyeUp",
26
+ "leftEyeDown",
27
+ "rightEyeLeft",
28
+ "rightEyeRight",
29
+ "rightEyeUp",
30
+ "rightEyeDown",
31
+ "noseLeft",
32
+ "noseRight",
33
+ "mouthUp",
34
+ "mouthDown",
35
+ "leftPupil",
36
+ "rightPupil",
37
+ "upperJawlineLeft",
38
+ "midJawlineLeft",
39
+ "chinBottom",
40
+ "midJawlineRight",
41
+ "upperJawlineRight",
42
+ ];
43
+ /**
44
+ * The landmarks a response carries when `ALL` was not asked for.
45
+ *
46
+ * Real Rekognition reports these five for a default request and the whole set
47
+ * for `ALL`, which is what makes `Attributes` worth simulating: a caller
48
+ * reading `chinBottom` from a default request reads nothing on AWS either.
49
+ *
50
+ * https://docs.aws.amazon.com/rekognition/latest/dg/faces-detect-images.html
51
+ */
52
+ export const simRekognitionDefaultLandmarkNames = new Set([
53
+ "eyeLeft",
54
+ "eyeRight",
55
+ "nose",
56
+ "mouthLeft",
57
+ "mouthRight",
58
+ ]);
59
+ const landmarkNames = new Set(simRekognitionLandmarkNames);
60
+ /**
61
+ * Whether a name is one of the landmarks Rekognition reports.
62
+ */
63
+ export function isSimRekognitionLandmarkName(name) {
64
+ return landmarkNames.has(name);
65
+ }
66
+ //# sourceMappingURL=sim-rekognition-landmark-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-rekognition-landmark-name.js","sourceRoot":"","sources":["../../../../src/service/rekognition/face/sim-rekognition-landmark-name.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,SAAS;IACT,UAAU;IACV,WAAW;IACX,YAAY;IACZ,MAAM;IACN,iBAAiB;IACjB,kBAAkB;IAClB,eAAe;IACf,kBAAkB;IAClB,mBAAmB;IACnB,gBAAgB;IAChB,aAAa;IACb,cAAc;IACd,WAAW;IACX,aAAa;IACb,cAAc;IACd,eAAe;IACf,YAAY;IACZ,cAAc;IACd,UAAU;IACV,WAAW;IACX,SAAS;IACT,WAAW;IACX,WAAW;IACX,YAAY;IACZ,kBAAkB;IAClB,gBAAgB;IAChB,YAAY;IACZ,iBAAiB;IACjB,mBAAmB;CACX,CAAC;AAQX;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAC7C,IAAI,GAAG,CAA6B;IAClC,SAAS;IACT,UAAU;IACV,MAAM;IACN,WAAW;IACX,YAAY;CACb,CAAC,CAAC;AAEL,MAAM,aAAa,GAAwB,IAAI,GAAG,CAAC,2BAA2B,CAAC,CAAC;AAEhF;;GAEG;AACH,MAAM,UAAU,4BAA4B,CAC1C,IAAY;IAEZ,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC"}
@@ -0,0 +1,48 @@
1
+ import type { SimAwsAccountRegionScope } from "../../../aws/sim-aws-account-region-scope.js";
2
+ import type { SimAws } from "../../../aws/sim-aws.js";
3
+ import type { SimRekognitionImageObjectRequest, SimRekognitionImageObjects } from "../sim-rekognition-image-objects.js";
4
+ interface SimAwsRekognitionImageObjectsProperties {
5
+ readonly simAws: SimAws;
6
+ readonly accountRegionScope: SimAwsAccountRegionScope;
7
+ }
8
+ /**
9
+ * The simulated S3 objects of one simulated AWS instance, as images
10
+ * Rekognition can detect on.
11
+ *
12
+ * The Bucket is found through the S3 Bucket registry rather than through this
13
+ * scope's own S3, so a Bucket owned by another Account resolves, as real
14
+ * Rekognition reads across Accounts given a Bucket policy that allows it.
15
+ * The read itself is an ordinary simulated GetObject made as the caller, so
16
+ * that policy is what decides it.
17
+ */
18
+ export declare class SimAwsRekognitionImageObjects implements SimRekognitionImageObjects {
19
+ private readonly simAws;
20
+ private readonly accountRegionScope;
21
+ constructor(properties: SimAwsRekognitionImageObjectsProperties);
22
+ /**
23
+ * Read an image object's bytes.
24
+ *
25
+ * Every way this can fail becomes InvalidS3ObjectException, as it does on
26
+ * real Rekognition, which reports a missing Bucket, a missing object and an
27
+ * object it may not read with the same error. The underlying simulator error
28
+ * is kept as the `cause`, so a missing `s3:GetObject` grant is still
29
+ * diagnosable from the error that was thrown.
30
+ */
31
+ read(request: SimRekognitionImageObjectRequest): Promise<Uint8Array>;
32
+ /**
33
+ * Where the named Bucket lives, refusing one this Region cannot reach.
34
+ *
35
+ * Real Rekognition reads a Bucket in its own Region only, and reports one
36
+ * in another Region as an S3 object problem rather than as a request
37
+ * problem. The message says which Region the Bucket is in, because that is
38
+ * the part a caller cannot see from the request.
39
+ */
40
+ private requireBucketScope;
41
+ private getObjectBytes;
42
+ /**
43
+ * The message real Rekognition reports every S3 failure with.
44
+ */
45
+ private unableToGet;
46
+ }
47
+ export {};
48
+ //# sourceMappingURL=sim-aws-rekognition-image-objects.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-aws-rekognition-image-objects.d.ts","sourceRoot":"","sources":["../../../../../src/service/rekognition/image/s3/sim-aws-rekognition-image-objects.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,KAAK,EACV,gCAAgC,EAChC,0BAA0B,EAC3B,MAAM,qCAAqC,CAAC;AAE7C,UAAU,uCAAuC;IAC/C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;CACvD;AAED;;;;;;;;;GASG;AACH,qBAAa,6BAA8B,YAAW,0BAA0B;IAC9E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAE9D,YAAY,UAAU,EAAE,uCAAuC,EAG9D;IAED;;;;;;;;OAQG;IACG,IAAI,CAAC,OAAO,EAAE,gCAAgC,GAAG,OAAO,CAAC,UAAU,CAAC,CAWzE;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;YAwBZ,cAAc;IAqB5B;;OAEG;IACH,OAAO,CAAC,WAAW;CAOpB"}
@@ -0,0 +1,78 @@
1
+ import { buffer } from "node:stream/consumers";
2
+ import { assertDefined } from "../../../../util/type-guard/defined.js";
3
+ import { SimRekognitionInvalidS3ObjectException } from "../../error/sim-rekognition.error.js";
4
+ /**
5
+ * The simulated S3 objects of one simulated AWS instance, as images
6
+ * Rekognition can detect on.
7
+ *
8
+ * The Bucket is found through the S3 Bucket registry rather than through this
9
+ * scope's own S3, so a Bucket owned by another Account resolves, as real
10
+ * Rekognition reads across Accounts given a Bucket policy that allows it.
11
+ * The read itself is an ordinary simulated GetObject made as the caller, so
12
+ * that policy is what decides it.
13
+ */
14
+ export class SimAwsRekognitionImageObjects {
15
+ simAws;
16
+ accountRegionScope;
17
+ constructor(properties) {
18
+ this.simAws = properties.simAws;
19
+ this.accountRegionScope = properties.accountRegionScope;
20
+ }
21
+ /**
22
+ * Read an image object's bytes.
23
+ *
24
+ * Every way this can fail becomes InvalidS3ObjectException, as it does on
25
+ * real Rekognition, which reports a missing Bucket, a missing object and an
26
+ * object it may not read with the same error. The underlying simulator error
27
+ * is kept as the `cause`, so a missing `s3:GetObject` grant is still
28
+ * diagnosable from the error that was thrown.
29
+ */
30
+ async read(request) {
31
+ const bucketScope = this.requireBucketScope(request);
32
+ try {
33
+ return await this.getObjectBytes(bucketScope, request);
34
+ }
35
+ catch (error) {
36
+ throw new SimRekognitionInvalidS3ObjectException(`${this.unableToGet(request)} (${String(error)})`, { cause: error });
37
+ }
38
+ }
39
+ /**
40
+ * Where the named Bucket lives, refusing one this Region cannot reach.
41
+ *
42
+ * Real Rekognition reads a Bucket in its own Region only, and reports one
43
+ * in another Region as an S3 object problem rather than as a request
44
+ * problem. The message says which Region the Bucket is in, because that is
45
+ * the part a caller cannot see from the request.
46
+ */
47
+ requireBucketScope(request) {
48
+ const bucketScope = this.simAws.s3().findBucketScope(request.bucketName);
49
+ if (bucketScope === undefined) {
50
+ throw new SimRekognitionInvalidS3ObjectException(`${this.unableToGet(request)} (no simulated Bucket is named ` +
51
+ `${request.bucketName})`);
52
+ }
53
+ if (bucketScope.regionName !== this.accountRegionScope.regionName) {
54
+ throw new SimRekognitionInvalidS3ObjectException(`${this.unableToGet(request)} (the Bucket is in ` +
55
+ `${bucketScope.regionName} and Rekognition is in ` +
56
+ `${this.accountRegionScope.regionName}, and Rekognition reads only ` +
57
+ `Buckets in its own Region)`);
58
+ }
59
+ return bucketScope;
60
+ }
61
+ async getObjectBytes(bucketScope, request) {
62
+ const s3 = this.simAws
63
+ .accountRegionScope(bucketScope.accountId, bucketScope.regionName)
64
+ .s3();
65
+ const output = await s3.getObject({ input: { Bucket: request.bucketName, Key: request.objectName } }, request.caller === undefined ? undefined : { caller: request.caller });
66
+ assertDefined(output.Body, `s3://${request.bucketName}/${request.objectName} has no body`);
67
+ return await buffer(output.Body);
68
+ }
69
+ /**
70
+ * The message real Rekognition reports every S3 failure with.
71
+ */
72
+ unableToGet(request) {
73
+ return (`Unable to get object metadata from S3 for ` +
74
+ `s3://${request.bucketName}/${request.objectName}. Check object key, ` +
75
+ `region and/or access permissions.`);
76
+ }
77
+ }
78
+ //# sourceMappingURL=sim-aws-rekognition-image-objects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-aws-rekognition-image-objects.js","sourceRoot":"","sources":["../../../../../src/service/rekognition/image/s3/sim-aws-rekognition-image-objects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAGvE,OAAO,EAAE,sCAAsC,EAAE,MAAM,sCAAsC,CAAC;AAW9F;;;;;;;;;GASG;AACH,MAAM,OAAO,6BAA6B;IACvB,MAAM,CAAS;IACf,kBAAkB,CAA2B;IAE9D,YAAY,UAAmD;QAC7D,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAC1D,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,IAAI,CAAC,OAAyC;QAClD,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAErD,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,sCAAsC,CAC9C,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,GAAG,EACjD,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACK,kBAAkB,CACxB,OAAyC;QAEzC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAEzE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,sCAAsC,CAC9C,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,iCAAiC;gBAC3D,GAAG,OAAO,CAAC,UAAU,GAAG,CAC3B,CAAC;QACJ,CAAC;QAED,IAAI,WAAW,CAAC,UAAU,KAAK,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,CAAC;YAClE,MAAM,IAAI,sCAAsC,CAC9C,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,qBAAqB;gBAC/C,GAAG,WAAW,CAAC,UAAU,yBAAyB;gBAClD,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,+BAA+B;gBACpE,4BAA4B,CAC/B,CAAC;QACJ,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,cAAc,CAC1B,WAAqC,EACrC,OAAyC;QAEzC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM;aACnB,kBAAkB,CAAC,WAAW,CAAC,SAAS,EAAE,WAAW,CAAC,UAAU,CAAC;aACjE,EAAE,EAAE,CAAC;QAER,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,SAAS,CAC/B,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE,GAAG,EAAE,OAAO,CAAC,UAAU,EAAE,EAAE,EAClE,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CACtE,CAAC;QAEF,aAAa,CACX,MAAM,CAAC,IAAI,EACX,QAAQ,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,cAAc,CAC/D,CAAC;QAEF,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,OAAyC;QAC3D,OAAO,CACL,4CAA4C;YAC5C,QAAQ,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,sBAAsB;YACtE,mCAAmC,CACpC,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Where something declared against an image sits in it, as ratios of the
3
+ * image's own width and height.
4
+ *
5
+ * The four numbers are the `BoundingBox` real Rekognition reports, in the same
6
+ * units: `left` and `top` are the corner nearest the image origin, and `width`
7
+ * and `height` are the size, each from 0 to 1.
8
+ */
9
+ export interface SimRekognitionDeclaredBoundingBox {
10
+ readonly left: number;
11
+ readonly top: number;
12
+ readonly width: number;
13
+ readonly height: number;
14
+ }
15
+ /**
16
+ * A bounding box as a response carries it.
17
+ *
18
+ * https://docs.aws.amazon.com/rekognition/latest/APIReference/API_BoundingBox.html
19
+ */
20
+ export interface SimRekognitionBoundingBoxOutput {
21
+ readonly Left: number;
22
+ readonly Top: number;
23
+ readonly Width: number;
24
+ readonly Height: number;
25
+ }
26
+ /**
27
+ * Resolves the bounding boxes declared for one label or one face.
28
+ *
29
+ * Values go through `Math.fround` for the same reason confidences do: real
30
+ * ones are float32 values such as `0.26779675483703613`.
31
+ *
32
+ * A box has to sit inside the image. Real Rekognition can return a box that
33
+ * does not, for an object at the image edge that is only partly visible, so
34
+ * this is stricter than AWS. It is the check that catches a box written in
35
+ * pixels, which is the mistake worth catching: a `left` of 350 would otherwise
36
+ * be reported as a face 350 image widths from the left.
37
+ */
38
+ export declare class SimRekognitionBoundingBoxes {
39
+ private readonly subject;
40
+ constructor(subject: string);
41
+ /**
42
+ * Resolve one declared bounding box.
43
+ */
44
+ of(box: SimRekognitionDeclaredBoundingBox): SimRekognitionBoundingBoxOutput;
45
+ private ratio;
46
+ private refuseOverflow;
47
+ }
48
+ //# sourceMappingURL=sim-rekognition-bounding-box.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-rekognition-bounding-box.d.ts","sourceRoot":"","sources":["../../../../src/service/rekognition/image/sim-rekognition-bounding-box.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,2BAA2B;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAApC,YAA6B,OAAO,EAAE,MAAM,EAAI;IAEhD;;OAEG;IACH,EAAE,CAAC,GAAG,EAAE,iCAAiC,GAAG,+BAA+B,CAY1E;IAED,OAAO,CAAC,KAAK;IAYb,OAAO,CAAC,cAAc;CAgBvB"}
@@ -0,0 +1,50 @@
1
+ import { SimRekognitionDeclarationError } from "../error/sim-rekognition.error.js";
2
+ /**
3
+ * Resolves the bounding boxes declared for one label or one face.
4
+ *
5
+ * Values go through `Math.fround` for the same reason confidences do: real
6
+ * ones are float32 values such as `0.26779675483703613`.
7
+ *
8
+ * A box has to sit inside the image. Real Rekognition can return a box that
9
+ * does not, for an object at the image edge that is only partly visible, so
10
+ * this is stricter than AWS. It is the check that catches a box written in
11
+ * pixels, which is the mistake worth catching: a `left` of 350 would otherwise
12
+ * be reported as a face 350 image widths from the left.
13
+ */
14
+ export class SimRekognitionBoundingBoxes {
15
+ subject;
16
+ constructor(subject) {
17
+ this.subject = subject;
18
+ }
19
+ /**
20
+ * Resolve one declared bounding box.
21
+ */
22
+ of(box) {
23
+ const resolved = {
24
+ Left: this.ratio("left", box.left),
25
+ Top: this.ratio("top", box.top),
26
+ Width: this.ratio("width", box.width),
27
+ Height: this.ratio("height", box.height),
28
+ };
29
+ this.refuseOverflow("left", box.left, "width", box.width);
30
+ this.refuseOverflow("top", box.top, "height", box.height);
31
+ return resolved;
32
+ }
33
+ ratio(part, value) {
34
+ if (!Number.isFinite(value) || value < 0 || value > 1) {
35
+ throw new SimRekognitionDeclarationError(`A bounding box declared for '${this.subject}' has a ${part} of ` +
36
+ `${String(value)}, which is not a ratio of the image size from 0 ` +
37
+ `to 1.`);
38
+ }
39
+ return Math.fround(value);
40
+ }
41
+ refuseOverflow(corner, cornerValue, size, sizeValue) {
42
+ if (cornerValue + sizeValue <= 1) {
43
+ return;
44
+ }
45
+ throw new SimRekognitionDeclarationError(`A bounding box declared for '${this.subject}' has a ${corner} of ` +
46
+ `${String(cornerValue)} and a ${size} of ${String(sizeValue)}, which ` +
47
+ `puts it outside the image.`);
48
+ }
49
+ }
50
+ //# sourceMappingURL=sim-rekognition-bounding-box.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-rekognition-bounding-box.js","sourceRoot":"","sources":["../../../../src/service/rekognition/image/sim-rekognition-bounding-box.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,mCAAmC,CAAC;AA6BnF;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,2BAA2B;IACT,OAAO;IAApC,YAA6B,OAAe;uBAAf,OAAO;IAAW,CAAC;IAEhD;;OAEG;IACH,EAAE,CAAC,GAAsC;QACvC,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC;YAClC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC;YAC/B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC;YACrC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC;SACzC,CAAC;QAEF,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAE1D,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,IAAY,EAAE,KAAa;QACvC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,8BAA8B,CACtC,gCAAgC,IAAI,CAAC,OAAO,WAAW,IAAI,MAAM;gBAC/D,GAAG,MAAM,CAAC,KAAK,CAAC,kDAAkD;gBAClE,OAAO,CACV,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAEO,cAAc,CACpB,MAAc,EACd,WAAmB,EACnB,IAAY,EACZ,SAAiB;QAEjB,IAAI,WAAW,GAAG,SAAS,IAAI,CAAC,EAAE,CAAC;YACjC,OAAO;QACT,CAAC;QAED,MAAM,IAAI,8BAA8B,CACtC,gCAAgC,IAAI,CAAC,OAAO,WAAW,MAAM,MAAM;YACjE,GAAG,MAAM,CAAC,WAAW,CAAC,UAAU,IAAI,OAAO,MAAM,CAAC,SAAS,CAAC,UAAU;YACtE,4BAA4B,CAC/B,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * The image formats Rekognition detection operations accept.
3
+ */
4
+ export type SimRekognitionImageFormatName = "PNG" | "JPEG";
5
+ /**
6
+ * Identify the format of some image bytes, from the bytes themselves.
7
+ *
8
+ * Real Rekognition accepts PNG and JPEG and refuses everything else, and it
9
+ * decides which it has from the content rather than from anything the caller
10
+ * said about it. The stored content type of an S3 object is deliberately not
11
+ * consulted for the same reason: simulated S3 keeps a supplied `ContentType`
12
+ * as a metadata key and has none at all unless the uploader set one, so
13
+ * trusting it would make the same bytes detectable or not depending on how
14
+ * they were uploaded.
15
+ */
16
+ export declare function simRekognitionImageFormat(bytes: Uint8Array): SimRekognitionImageFormatName;
17
+ //# sourceMappingURL=sim-rekognition-image-format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-rekognition-image-format.d.ts","sourceRoot":"","sources":["../../../../src/service/rekognition/image/sim-rekognition-image-format.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,6BAA6B,GAAG,KAAK,GAAG,MAAM,CAAC;AAS3D;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,UAAU,GAChB,6BAA6B,CAa/B"}
@@ -0,0 +1,28 @@
1
+ import { SimRekognitionInvalidImageFormatException } from "../error/sim-rekognition.error.js";
2
+ const pngMagicBytes = [0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a];
3
+ const jpegMagicBytes = [0xff, 0xd8, 0xff];
4
+ function startsWith(bytes, magic) {
5
+ return magic.every((byte, index) => bytes.at(index) === byte);
6
+ }
7
+ /**
8
+ * Identify the format of some image bytes, from the bytes themselves.
9
+ *
10
+ * Real Rekognition accepts PNG and JPEG and refuses everything else, and it
11
+ * decides which it has from the content rather than from anything the caller
12
+ * said about it. The stored content type of an S3 object is deliberately not
13
+ * consulted for the same reason: simulated S3 keeps a supplied `ContentType`
14
+ * as a metadata key and has none at all unless the uploader set one, so
15
+ * trusting it would make the same bytes detectable or not depending on how
16
+ * they were uploaded.
17
+ */
18
+ export function simRekognitionImageFormat(bytes) {
19
+ if (startsWith(bytes, pngMagicBytes)) {
20
+ return "PNG";
21
+ }
22
+ if (startsWith(bytes, jpegMagicBytes)) {
23
+ return "JPEG";
24
+ }
25
+ throw new SimRekognitionInvalidImageFormatException("Request has invalid image format: the image bytes are neither PNG " +
26
+ "nor JPEG");
27
+ }
28
+ //# sourceMappingURL=sim-rekognition-image-format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-rekognition-image-format.js","sourceRoot":"","sources":["../../../../src/service/rekognition/image/sim-rekognition-image-format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yCAAyC,EAAE,MAAM,mCAAmC,CAAC;AAO9F,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACvE,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAE1C,SAAS,UAAU,CAAC,KAAiB,EAAE,KAAwB;IAC7D,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAiB;IAEjB,IAAI,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,UAAU,CAAC,KAAK,EAAE,cAAc,CAAC,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,IAAI,yCAAyC,CACjD,oEAAoE;QAClE,UAAU,CACb,CAAC;AACJ,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * The content hash simulated Rekognition matches a rule against.
3
+ *
4
+ * It is the sha256 digest of the image bytes as they were received, as
5
+ * lowercase hex, with no normalisation of any kind. Re-encoding an image
6
+ * between uploading it and detecting on it therefore changes it, as does any
7
+ * resizing, stripping of metadata or change of quality setting, so hash the
8
+ * exact bytes the test will put through the system.
9
+ */
10
+ export declare function simRekognitionImageHash(bytes: Uint8Array): string;
11
+ /**
12
+ * Whether a string is shaped like an image content hash.
13
+ */
14
+ export declare function isSimRekognitionImageHash(value: string): boolean;
15
+ //# sourceMappingURL=sim-rekognition-image-hash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-rekognition-image-hash.d.ts","sourceRoot":"","sources":["../../../../src/service/rekognition/image/sim-rekognition-image-hash.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAEjE;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEhE"}
@@ -0,0 +1,20 @@
1
+ import { createHash } from "node:crypto";
2
+ /**
3
+ * The content hash simulated Rekognition matches a rule against.
4
+ *
5
+ * It is the sha256 digest of the image bytes as they were received, as
6
+ * lowercase hex, with no normalisation of any kind. Re-encoding an image
7
+ * between uploading it and detecting on it therefore changes it, as does any
8
+ * resizing, stripping of metadata or change of quality setting, so hash the
9
+ * exact bytes the test will put through the system.
10
+ */
11
+ export function simRekognitionImageHash(bytes) {
12
+ return createHash("sha256").update(bytes).digest("hex");
13
+ }
14
+ /**
15
+ * Whether a string is shaped like an image content hash.
16
+ */
17
+ export function isSimRekognitionImageHash(value) {
18
+ return /^[0-9a-f]{64}$/.test(value);
19
+ }
20
+ //# sourceMappingURL=sim-rekognition-image-hash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-rekognition-image-hash.js","sourceRoot":"","sources":["../../../../src/service/rekognition/image/sim-rekognition-image-hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAiB;IACvD,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAa;IACrD,OAAO,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * An image as a Rekognition detection request names it.
3
+ *
4
+ * Every detection operation takes the same `Image` member, so it lives beside
5
+ * the code that reads it rather than in one command's own types.
6
+ *
7
+ * https://docs.aws.amazon.com/rekognition/latest/APIReference/API_Image.html
8
+ */
9
+ export interface SimRekognitionImageInput {
10
+ readonly Bytes?: Uint8Array | undefined;
11
+ readonly S3Object?: SimRekognitionS3ObjectInput | undefined;
12
+ }
13
+ /**
14
+ * An S3 object as a Rekognition detection request names it.
15
+ *
16
+ * The object key is `Name` here rather than the `Key` every S3 command uses.
17
+ */
18
+ export interface SimRekognitionS3ObjectInput {
19
+ readonly Bucket?: string | undefined;
20
+ readonly Name?: string | undefined;
21
+ readonly Version?: string | undefined;
22
+ }
23
+ //# sourceMappingURL=sim-rekognition-image-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-rekognition-image-input.d.ts","sourceRoot":"","sources":["../../../../src/service/rekognition/image/sim-rekognition-image-input.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;CAC7D;AAED;;;;GAIG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACvC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=sim-rekognition-image-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-rekognition-image-input.js","sourceRoot":"","sources":["../../../../src/service/rekognition/image/sim-rekognition-image-input.ts"],"names":[],"mappings":""}
@@ -0,0 +1,35 @@
1
+ import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
2
+ /**
3
+ * An S3 object a detection request named, and who is asking for it.
4
+ */
5
+ export interface SimRekognitionImageObjectRequest {
6
+ readonly bucketName: string;
7
+ readonly objectName: string;
8
+ readonly caller?: SimAwsCaller | undefined;
9
+ }
10
+ /**
11
+ * The S3 objects simulated Rekognition can read images from.
12
+ *
13
+ * Rekognition reads the object itself rather than being handed the bytes, so
14
+ * this is the seam where that read happens. The read is made as the caller, so
15
+ * simulated IAM applies to the image object exactly as `s3:GetObject`
16
+ * authorization would on real AWS.
17
+ */
18
+ export interface SimRekognitionImageObjects {
19
+ read(request: SimRekognitionImageObjectRequest): Promise<Uint8Array>;
20
+ }
21
+ /**
22
+ * The image objects of a simulated Rekognition built without simulated S3.
23
+ *
24
+ * A standalone SimRekognition has no S3 to read from, so an `Image.S3Object`
25
+ * request says so rather than failing as though the object were missing.
26
+ * Passing the bytes as `Image.Bytes` still works, and reaching Rekognition
27
+ * through SimAws is what connects the two services.
28
+ */
29
+ export declare class SimRekognitionUnreachableImageObjects implements SimRekognitionImageObjects {
30
+ /**
31
+ * Refuse the read, naming the object that cannot be reached.
32
+ */
33
+ read(request: SimRekognitionImageObjectRequest): Promise<Uint8Array>;
34
+ }
35
+ //# sourceMappingURL=sim-rekognition-image-objects.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-rekognition-image-objects.d.ts","sourceRoot":"","sources":["../../../../src/service/rekognition/image/sim-rekognition-image-objects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAGvE;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;CAC5C;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,0BAA0B;IACzC,IAAI,CAAC,OAAO,EAAE,gCAAgC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CACtE;AAED;;;;;;;GAOG;AACH,qBAAa,qCAAsC,YAAW,0BAA0B;IACtF;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,gCAAgC,GAAG,OAAO,CAAC,UAAU,CAAC,CAOnE;CACF"}
@@ -0,0 +1,21 @@
1
+ import { SimRekognitionError } from "../error/sim-rekognition.error.js";
2
+ /**
3
+ * The image objects of a simulated Rekognition built without simulated S3.
4
+ *
5
+ * A standalone SimRekognition has no S3 to read from, so an `Image.S3Object`
6
+ * request says so rather than failing as though the object were missing.
7
+ * Passing the bytes as `Image.Bytes` still works, and reaching Rekognition
8
+ * through SimAws is what connects the two services.
9
+ */
10
+ export class SimRekognitionUnreachableImageObjects {
11
+ /**
12
+ * Refuse the read, naming the object that cannot be reached.
13
+ */
14
+ read(request) {
15
+ throw new SimRekognitionError(`Simulated Rekognition cannot read ` +
16
+ `s3://${request.bucketName}/${request.objectName} because it was ` +
17
+ `built without simulated S3. Reach Rekognition through SimAws to ` +
18
+ `detect on an Image.S3Object, or pass the image as Image.Bytes.`);
19
+ }
20
+ }
21
+ //# sourceMappingURL=sim-rekognition-image-objects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-rekognition-image-objects.js","sourceRoot":"","sources":["../../../../src/service/rekognition/image/sim-rekognition-image-objects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAuBxE;;;;;;;GAOG;AACH,MAAM,OAAO,qCAAqC;IAChD;;OAEG;IACH,IAAI,CAAC,OAAyC;QAC5C,MAAM,IAAI,mBAAmB,CAC3B,oCAAoC;YAClC,QAAQ,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,kBAAkB;YAClE,kEAAkE;YAClE,gEAAgE,CACnE,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,59 @@
1
+ import type { SimRekognitionRequestOptions } from "../command/sim-rekognition-request-options.js";
2
+ import { SimRekognitionImage } from "./sim-rekognition-image.js";
3
+ import type { SimRekognitionImageInput } from "./sim-rekognition-image-input.js";
4
+ import type { SimRekognitionImageObjects } from "./sim-rekognition-image-objects.js";
5
+ /**
6
+ * The image a detection request named, before it has been read.
7
+ *
8
+ * Parsing the request and reading the image are separate steps because they
9
+ * happen at different points in an operation: the request is checked before
10
+ * anything else, and the image is read only once the caller has been
11
+ * authorized for the detection.
12
+ */
13
+ export interface SimRekognitionImageRequest {
14
+ read(images: SimRekognitionImageObjects, options: SimRekognitionRequestOptions): Promise<SimRekognitionImage>;
15
+ }
16
+ /**
17
+ * An image the request carried the bytes of.
18
+ *
19
+ * It has no name, so only a hash rule or the default can match it.
20
+ */
21
+ export declare class SimRekognitionImageBytesRequest implements SimRekognitionImageRequest {
22
+ private readonly bytes;
23
+ constructor(bytes: Uint8Array);
24
+ /**
25
+ * Take the bytes the request already carries.
26
+ */
27
+ read(): Promise<SimRekognitionImage>;
28
+ }
29
+ /**
30
+ * An image the request named as an S3 object.
31
+ */
32
+ export declare class SimRekognitionImageS3Request implements SimRekognitionImageRequest {
33
+ private readonly bucketName;
34
+ private readonly objectName;
35
+ constructor(bucketName: string, objectName: string);
36
+ /**
37
+ * Read the object, as the caller making the detection request.
38
+ */
39
+ read(images: SimRekognitionImageObjects, options: SimRekognitionRequestOptions): Promise<SimRekognitionImage>;
40
+ }
41
+ /**
42
+ * Reads the `Image` member of one operation's detection requests.
43
+ *
44
+ * The operation is carried here so a refusal names the command the caller
45
+ * sent, since every detection operation shares this member.
46
+ */
47
+ export declare class SimRekognitionImageRequests {
48
+ private readonly operation;
49
+ constructor(operation: string);
50
+ /**
51
+ * Read the `Image` member of a detection request.
52
+ *
53
+ * Real Rekognition takes exactly one of bytes or an S3 object, so neither
54
+ * and both are equally invalid requests.
55
+ */
56
+ parse(image: SimRekognitionImageInput | undefined): SimRekognitionImageRequest;
57
+ private parseS3Object;
58
+ }
59
+ //# sourceMappingURL=sim-rekognition-image-request.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-rekognition-image-request.d.ts","sourceRoot":"","sources":["../../../../src/service/rekognition/image/sim-rekognition-image-request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAKlG,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EACV,wBAAwB,EAEzB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAErF;;;;;;;GAOG;AACH,MAAM,WAAW,0BAA0B;IACzC,IAAI,CACF,MAAM,EAAE,0BAA0B,EAClC,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACjC;AAED;;;;GAIG;AACH,qBAAa,+BAAgC,YAAW,0BAA0B;IACpE,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAlC,YAA6B,KAAK,EAAE,UAAU,EAAI;IAElD;;OAEG;IACH,IAAI,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAEnC;CACF;AAED;;GAEG;AACH,qBAAa,4BAA6B,YAAW,0BAA0B;IAE3E,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAF7B,YACmB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EACjC;IAEJ;;OAEG;IACG,IAAI,CACR,MAAM,EAAE,0BAA0B,EAClC,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,mBAAmB,CAAC,CAQ9B;CACF;AAED;;;;;GAKG;AACH,qBAAa,2BAA2B;IAC1B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAAtC,YAA6B,SAAS,EAAE,MAAM,EAAI;IAElD;;;;;OAKG;IACH,KAAK,CACH,KAAK,EAAE,wBAAwB,GAAG,SAAS,GAC1C,0BAA0B,CAyB5B;IAED,OAAO,CAAC,aAAa;CAoBtB"}