@kensio/yulin 1.20.6 → 1.20.8

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 (518) 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 +5 -0
  4. package/dist/sdk/router/resolve-sim-sdk-command-router.js.map +1 -1
  5. package/dist/service/athena/cfn/named-query/sim-cfn-athena-named-query-creator.d.ts +30 -0
  6. package/dist/service/athena/cfn/named-query/sim-cfn-athena-named-query-creator.d.ts.map +1 -0
  7. package/dist/service/athena/cfn/named-query/sim-cfn-athena-named-query-creator.js +48 -0
  8. package/dist/service/athena/cfn/named-query/sim-cfn-athena-named-query-creator.js.map +1 -0
  9. package/dist/service/athena/cfn/named-query/sim-cfn-athena-named-query-properties.d.ts +33 -0
  10. package/dist/service/athena/cfn/named-query/sim-cfn-athena-named-query-properties.d.ts.map +1 -0
  11. package/dist/service/athena/cfn/named-query/sim-cfn-athena-named-query-properties.js +67 -0
  12. package/dist/service/athena/cfn/named-query/sim-cfn-athena-named-query-properties.js.map +1 -0
  13. package/dist/service/athena/cfn/sim-athena-cfn-resource-factory.d.ts +29 -0
  14. package/dist/service/athena/cfn/sim-athena-cfn-resource-factory.d.ts.map +1 -0
  15. package/dist/service/athena/cfn/sim-athena-cfn-resource-factory.js +67 -0
  16. package/dist/service/athena/cfn/sim-athena-cfn-resource-factory.js.map +1 -0
  17. package/dist/service/athena/cfn/sim-cfn-athena-property-values.d.ts +29 -0
  18. package/dist/service/athena/cfn/sim-cfn-athena-property-values.d.ts.map +1 -0
  19. package/dist/service/athena/cfn/sim-cfn-athena-property-values.js +74 -0
  20. package/dist/service/athena/cfn/sim-cfn-athena-property-values.js.map +1 -0
  21. package/dist/service/athena/cfn/sim-cfn-athena-resource-error.d.ts +21 -0
  22. package/dist/service/athena/cfn/sim-cfn-athena-resource-error.d.ts.map +1 -0
  23. package/dist/service/athena/cfn/sim-cfn-athena-resource-error.js +34 -0
  24. package/dist/service/athena/cfn/sim-cfn-athena-resource-error.js.map +1 -0
  25. package/dist/service/athena/cfn/sim-cfn-athena-resource-types.d.ts +13 -0
  26. package/dist/service/athena/cfn/sim-cfn-athena-resource-types.d.ts.map +1 -0
  27. package/dist/service/athena/cfn/sim-cfn-athena-resource-types.js +13 -0
  28. package/dist/service/athena/cfn/sim-cfn-athena-resource-types.js.map +1 -0
  29. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-configuration-properties.d.ts +12 -0
  30. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-configuration-properties.d.ts.map +1 -0
  31. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-configuration-properties.js +46 -0
  32. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-configuration-properties.js.map +1 -0
  33. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-creator.d.ts +34 -0
  34. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-creator.d.ts.map +1 -0
  35. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-creator.js +65 -0
  36. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-creator.js.map +1 -0
  37. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-properties.d.ts +46 -0
  38. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-properties.d.ts.map +1 -0
  39. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-properties.js +77 -0
  40. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-properties.js.map +1 -0
  41. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-property-rules.d.ts +27 -0
  42. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-property-rules.d.ts.map +1 -0
  43. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-property-rules.js +75 -0
  44. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-property-rules.js.map +1 -0
  45. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-unsimulated-properties.d.ts +18 -0
  46. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-unsimulated-properties.d.ts.map +1 -0
  47. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-unsimulated-properties.js +49 -0
  48. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-unsimulated-properties.js.map +1 -0
  49. package/dist/service/athena/command/authorize/sim-athena-authorizer.d.ts +36 -0
  50. package/dist/service/athena/command/authorize/sim-athena-authorizer.d.ts.map +1 -0
  51. package/dist/service/athena/command/authorize/sim-athena-authorizer.js +56 -0
  52. package/dist/service/athena/command/authorize/sim-athena-authorizer.js.map +1 -0
  53. package/dist/service/athena/command/execution/execution.command.d.ts +130 -0
  54. package/dist/service/athena/command/execution/execution.command.d.ts.map +1 -0
  55. package/dist/service/athena/command/execution/execution.command.js +2 -0
  56. package/dist/service/athena/command/execution/execution.command.js.map +1 -0
  57. package/dist/service/athena/command/execution/sim-athena-described-execution.d.ts +11 -0
  58. package/dist/service/athena/command/execution/sim-athena-described-execution.d.ts.map +1 -0
  59. package/dist/service/athena/command/execution/sim-athena-described-execution.js +50 -0
  60. package/dist/service/athena/command/execution/sim-athena-described-execution.js.map +1 -0
  61. package/dist/service/athena/command/execution/sim-athena-execution-reads.d.ts +30 -0
  62. package/dist/service/athena/command/execution/sim-athena-execution-reads.d.ts.map +1 -0
  63. package/dist/service/athena/command/execution/sim-athena-execution-reads.js +43 -0
  64. package/dist/service/athena/command/execution/sim-athena-execution-reads.js.map +1 -0
  65. package/dist/service/athena/command/execution/sim-athena-execution-writes.d.ts +43 -0
  66. package/dist/service/athena/command/execution/sim-athena-execution-writes.d.ts.map +1 -0
  67. package/dist/service/athena/command/execution/sim-athena-execution-writes.js +42 -0
  68. package/dist/service/athena/command/execution/sim-athena-execution-writes.js.map +1 -0
  69. package/dist/service/athena/command/execution/sim-athena-query-output-location.d.ts +17 -0
  70. package/dist/service/athena/command/execution/sim-athena-query-output-location.d.ts.map +1 -0
  71. package/dist/service/athena/command/execution/sim-athena-query-output-location.js +28 -0
  72. package/dist/service/athena/command/execution/sim-athena-query-output-location.js.map +1 -0
  73. package/dist/service/athena/command/execution/sim-athena-query-results-page.d.ts +10 -0
  74. package/dist/service/athena/command/execution/sim-athena-query-results-page.d.ts.map +1 -0
  75. package/dist/service/athena/command/execution/sim-athena-query-results-page.js +36 -0
  76. package/dist/service/athena/command/execution/sim-athena-query-results-page.js.map +1 -0
  77. package/dist/service/athena/command/execution/sim-athena-query-rows.d.ts +16 -0
  78. package/dist/service/athena/command/execution/sim-athena-query-rows.d.ts.map +1 -0
  79. package/dist/service/athena/command/execution/sim-athena-query-rows.js +28 -0
  80. package/dist/service/athena/command/execution/sim-athena-query-rows.js.map +1 -0
  81. package/dist/service/athena/command/execution/sim-athena-query-start.d.ts +24 -0
  82. package/dist/service/athena/command/execution/sim-athena-query-start.d.ts.map +1 -0
  83. package/dist/service/athena/command/execution/sim-athena-query-start.js +60 -0
  84. package/dist/service/athena/command/execution/sim-athena-query-start.js.map +1 -0
  85. package/dist/service/athena/command/execution/sim-athena-query-stop.d.ts +16 -0
  86. package/dist/service/athena/command/execution/sim-athena-query-stop.d.ts.map +1 -0
  87. package/dist/service/athena/command/execution/sim-athena-query-stop.js +23 -0
  88. package/dist/service/athena/command/execution/sim-athena-query-stop.js.map +1 -0
  89. package/dist/service/athena/command/named-query/named-query.command.d.ts +104 -0
  90. package/dist/service/athena/command/named-query/named-query.command.d.ts.map +1 -0
  91. package/dist/service/athena/command/named-query/named-query.command.js +2 -0
  92. package/dist/service/athena/command/named-query/named-query.command.js.map +1 -0
  93. package/dist/service/athena/command/named-query/sim-athena-described-named-query.d.ts +7 -0
  94. package/dist/service/athena/command/named-query/sim-athena-described-named-query.d.ts.map +1 -0
  95. package/dist/service/athena/command/named-query/sim-athena-described-named-query.js +14 -0
  96. package/dist/service/athena/command/named-query/sim-athena-described-named-query.js.map +1 -0
  97. package/dist/service/athena/command/named-query/sim-athena-named-query-batch.d.ts +14 -0
  98. package/dist/service/athena/command/named-query/sim-athena-named-query-batch.d.ts.map +1 -0
  99. package/dist/service/athena/command/named-query/sim-athena-named-query-batch.js +56 -0
  100. package/dist/service/athena/command/named-query/sim-athena-named-query-batch.js.map +1 -0
  101. package/dist/service/athena/command/named-query/sim-athena-named-query-field.d.ts +5 -0
  102. package/dist/service/athena/command/named-query/sim-athena-named-query-field.d.ts.map +1 -0
  103. package/dist/service/athena/command/named-query/sim-athena-named-query-field.js +11 -0
  104. package/dist/service/athena/command/named-query/sim-athena-named-query-field.js.map +1 -0
  105. package/dist/service/athena/command/named-query/sim-athena-named-query-reads.d.ts +33 -0
  106. package/dist/service/athena/command/named-query/sim-athena-named-query-reads.d.ts.map +1 -0
  107. package/dist/service/athena/command/named-query/sim-athena-named-query-reads.js +55 -0
  108. package/dist/service/athena/command/named-query/sim-athena-named-query-reads.js.map +1 -0
  109. package/dist/service/athena/command/named-query/sim-athena-named-query-writes.d.ts +33 -0
  110. package/dist/service/athena/command/named-query/sim-athena-named-query-writes.d.ts.map +1 -0
  111. package/dist/service/athena/command/named-query/sim-athena-named-query-writes.js +50 -0
  112. package/dist/service/athena/command/named-query/sim-athena-named-query-writes.js.map +1 -0
  113. package/dist/service/athena/command/sim-athena-command.types.d.ts +4 -0
  114. package/dist/service/athena/command/sim-athena-command.types.d.ts.map +1 -0
  115. package/dist/service/athena/command/sim-athena-command.types.js +2 -0
  116. package/dist/service/athena/command/sim-athena-command.types.js.map +1 -0
  117. package/dist/service/athena/command/sim-athena-commands.d.ts +42 -0
  118. package/dist/service/athena/command/sim-athena-commands.d.ts.map +1 -0
  119. package/dist/service/athena/command/sim-athena-commands.js +65 -0
  120. package/dist/service/athena/command/sim-athena-commands.js.map +1 -0
  121. package/dist/service/athena/command/sim-athena-page.d.ts +49 -0
  122. package/dist/service/athena/command/sim-athena-page.d.ts.map +1 -0
  123. package/dist/service/athena/command/sim-athena-page.js +75 -0
  124. package/dist/service/athena/command/sim-athena-page.js.map +1 -0
  125. package/dist/service/athena/command/sim-athena-request-options.d.ts +12 -0
  126. package/dist/service/athena/command/sim-athena-request-options.d.ts.map +1 -0
  127. package/dist/service/athena/command/sim-athena-request-options.js +2 -0
  128. package/dist/service/athena/command/sim-athena-request-options.js.map +1 -0
  129. package/dist/service/athena/command/work-group/sim-athena-described-work-group.d.ts +14 -0
  130. package/dist/service/athena/command/work-group/sim-athena-described-work-group.d.ts.map +1 -0
  131. package/dist/service/athena/command/work-group/sim-athena-described-work-group.js +66 -0
  132. package/dist/service/athena/command/work-group/sim-athena-described-work-group.js.map +1 -0
  133. package/dist/service/athena/command/work-group/sim-athena-work-group-creation.d.ts +12 -0
  134. package/dist/service/athena/command/work-group/sim-athena-work-group-creation.d.ts.map +1 -0
  135. package/dist/service/athena/command/work-group/sim-athena-work-group-creation.js +22 -0
  136. package/dist/service/athena/command/work-group/sim-athena-work-group-creation.js.map +1 -0
  137. package/dist/service/athena/command/work-group/sim-athena-work-group-deletion.d.ts +12 -0
  138. package/dist/service/athena/command/work-group/sim-athena-work-group-deletion.d.ts.map +1 -0
  139. package/dist/service/athena/command/work-group/sim-athena-work-group-deletion.js +24 -0
  140. package/dist/service/athena/command/work-group/sim-athena-work-group-deletion.js.map +1 -0
  141. package/dist/service/athena/command/work-group/sim-athena-work-group-input.d.ts +26 -0
  142. package/dist/service/athena/command/work-group/sim-athena-work-group-input.d.ts.map +1 -0
  143. package/dist/service/athena/command/work-group/sim-athena-work-group-input.js +93 -0
  144. package/dist/service/athena/command/work-group/sim-athena-work-group-input.js.map +1 -0
  145. package/dist/service/athena/command/work-group/sim-athena-work-group-reads.d.ts +26 -0
  146. package/dist/service/athena/command/work-group/sim-athena-work-group-reads.d.ts.map +1 -0
  147. package/dist/service/athena/command/work-group/sim-athena-work-group-reads.js +39 -0
  148. package/dist/service/athena/command/work-group/sim-athena-work-group-reads.js.map +1 -0
  149. package/dist/service/athena/command/work-group/sim-athena-work-group-update.d.ts +12 -0
  150. package/dist/service/athena/command/work-group/sim-athena-work-group-update.d.ts.map +1 -0
  151. package/dist/service/athena/command/work-group/sim-athena-work-group-update.js +26 -0
  152. package/dist/service/athena/command/work-group/sim-athena-work-group-update.js.map +1 -0
  153. package/dist/service/athena/command/work-group/sim-athena-work-group-updates-input.d.ts +11 -0
  154. package/dist/service/athena/command/work-group/sim-athena-work-group-updates-input.d.ts.map +1 -0
  155. package/dist/service/athena/command/work-group/sim-athena-work-group-updates-input.js +35 -0
  156. package/dist/service/athena/command/work-group/sim-athena-work-group-updates-input.js.map +1 -0
  157. package/dist/service/athena/command/work-group/sim-athena-work-group-writes.d.ts +40 -0
  158. package/dist/service/athena/command/work-group/sim-athena-work-group-writes.d.ts.map +1 -0
  159. package/dist/service/athena/command/work-group/sim-athena-work-group-writes.js +53 -0
  160. package/dist/service/athena/command/work-group/sim-athena-work-group-writes.js.map +1 -0
  161. package/dist/service/athena/command/work-group/work-group.command.d.ts +164 -0
  162. package/dist/service/athena/command/work-group/work-group.command.d.ts.map +1 -0
  163. package/dist/service/athena/command/work-group/work-group.command.js +2 -0
  164. package/dist/service/athena/command/work-group/work-group.command.js.map +1 -0
  165. package/dist/service/athena/error/sim-athena.error.d.ts +33 -0
  166. package/dist/service/athena/error/sim-athena.error.d.ts.map +1 -0
  167. package/dist/service/athena/error/sim-athena.error.js +34 -0
  168. package/dist/service/athena/error/sim-athena.error.js.map +1 -0
  169. package/dist/service/athena/execution/sim-athena-no-result-destination.d.ts +11 -0
  170. package/dist/service/athena/execution/sim-athena-no-result-destination.d.ts.map +1 -0
  171. package/dist/service/athena/execution/sim-athena-no-result-destination.js +15 -0
  172. package/dist/service/athena/execution/sim-athena-no-result-destination.js.map +1 -0
  173. package/dist/service/athena/execution/sim-athena-output-location.d.ts +24 -0
  174. package/dist/service/athena/execution/sim-athena-output-location.d.ts.map +1 -0
  175. package/dist/service/athena/execution/sim-athena-output-location.js +49 -0
  176. package/dist/service/athena/execution/sim-athena-output-location.js.map +1 -0
  177. package/dist/service/athena/execution/sim-athena-query-execution-store.d.ts +24 -0
  178. package/dist/service/athena/execution/sim-athena-query-execution-store.d.ts.map +1 -0
  179. package/dist/service/athena/execution/sim-athena-query-execution-store.js +36 -0
  180. package/dist/service/athena/execution/sim-athena-query-execution-store.js.map +1 -0
  181. package/dist/service/athena/execution/sim-athena-query-execution.d.ts +58 -0
  182. package/dist/service/athena/execution/sim-athena-query-execution.d.ts.map +1 -0
  183. package/dist/service/athena/execution/sim-athena-query-execution.js +81 -0
  184. package/dist/service/athena/execution/sim-athena-query-execution.js.map +1 -0
  185. package/dist/service/athena/execution/sim-athena-query-runner.d.ts +48 -0
  186. package/dist/service/athena/execution/sim-athena-query-runner.d.ts.map +1 -0
  187. package/dist/service/athena/execution/sim-athena-query-runner.js +87 -0
  188. package/dist/service/athena/execution/sim-athena-query-runner.js.map +1 -0
  189. package/dist/service/athena/execution/sim-athena-query-state.d.ts +12 -0
  190. package/dist/service/athena/execution/sim-athena-query-state.d.ts.map +1 -0
  191. package/dist/service/athena/execution/sim-athena-query-state.js +18 -0
  192. package/dist/service/athena/execution/sim-athena-query-state.js.map +1 -0
  193. package/dist/service/athena/execution/sim-athena-query-status.d.ts +28 -0
  194. package/dist/service/athena/execution/sim-athena-query-status.d.ts.map +1 -0
  195. package/dist/service/athena/execution/sim-athena-query-status.js +48 -0
  196. package/dist/service/athena/execution/sim-athena-query-status.js.map +1 -0
  197. package/dist/service/athena/execution/sim-athena-query-tokens.d.ts +30 -0
  198. package/dist/service/athena/execution/sim-athena-query-tokens.d.ts.map +1 -0
  199. package/dist/service/athena/execution/sim-athena-query-tokens.js +49 -0
  200. package/dist/service/athena/execution/sim-athena-query-tokens.js.map +1 -0
  201. package/dist/service/athena/execution/sim-athena-result-csv.d.ts +11 -0
  202. package/dist/service/athena/execution/sim-athena-result-csv.d.ts.map +1 -0
  203. package/dist/service/athena/execution/sim-athena-result-csv.js +20 -0
  204. package/dist/service/athena/execution/sim-athena-result-csv.js.map +1 -0
  205. package/dist/service/athena/execution/sim-athena-result-writer.d.ts +42 -0
  206. package/dist/service/athena/execution/sim-athena-result-writer.d.ts.map +1 -0
  207. package/dist/service/athena/execution/sim-athena-result-writer.js +31 -0
  208. package/dist/service/athena/execution/sim-athena-result-writer.js.map +1 -0
  209. package/dist/service/athena/execution/sim-athena-write-failure.d.ts +9 -0
  210. package/dist/service/athena/execution/sim-athena-write-failure.d.ts.map +1 -0
  211. package/dist/service/athena/execution/sim-athena-write-failure.js +12 -0
  212. package/dist/service/athena/execution/sim-athena-write-failure.js.map +1 -0
  213. package/dist/service/athena/index.d.ts +21 -0
  214. package/dist/service/athena/index.d.ts.map +1 -0
  215. package/dist/service/athena/index.js +18 -0
  216. package/dist/service/athena/index.js.map +1 -0
  217. package/dist/service/athena/named-query/sim-athena-named-query-store.d.ts +42 -0
  218. package/dist/service/athena/named-query/sim-athena-named-query-store.d.ts.map +1 -0
  219. package/dist/service/athena/named-query/sim-athena-named-query-store.js +62 -0
  220. package/dist/service/athena/named-query/sim-athena-named-query-store.js.map +1 -0
  221. package/dist/service/athena/named-query/sim-athena-named-query.d.ts +30 -0
  222. package/dist/service/athena/named-query/sim-athena-named-query.d.ts.map +1 -0
  223. package/dist/service/athena/named-query/sim-athena-named-query.js +28 -0
  224. package/dist/service/athena/named-query/sim-athena-named-query.js.map +1 -0
  225. package/dist/service/athena/result/sim-athena-declared-result.d.ts +44 -0
  226. package/dist/service/athena/result/sim-athena-declared-result.d.ts.map +1 -0
  227. package/dist/service/athena/result/sim-athena-declared-result.js +2 -0
  228. package/dist/service/athena/result/sim-athena-declared-result.js.map +1 -0
  229. package/dist/service/athena/result/sim-athena-query-results.d.ts +48 -0
  230. package/dist/service/athena/result/sim-athena-query-results.d.ts.map +1 -0
  231. package/dist/service/athena/result/sim-athena-query-results.js +59 -0
  232. package/dist/service/athena/result/sim-athena-query-results.js.map +1 -0
  233. package/dist/service/athena/result/sim-athena-resolved-result.d.ts +20 -0
  234. package/dist/service/athena/result/sim-athena-resolved-result.d.ts.map +1 -0
  235. package/dist/service/athena/result/sim-athena-resolved-result.js +52 -0
  236. package/dist/service/athena/result/sim-athena-resolved-result.js.map +1 -0
  237. package/dist/service/athena/sdk/sim-athena-sdk-command-router.d.ts +18 -0
  238. package/dist/service/athena/sdk/sim-athena-sdk-command-router.d.ts.map +1 -0
  239. package/dist/service/athena/sdk/sim-athena-sdk-command-router.js +80 -0
  240. package/dist/service/athena/sdk/sim-athena-sdk-command-router.js.map +1 -0
  241. package/dist/service/athena/sim-athena-arn.d.ts +11 -0
  242. package/dist/service/athena/sim-athena-arn.d.ts.map +1 -0
  243. package/dist/service/athena/sim-athena-arn.js +13 -0
  244. package/dist/service/athena/sim-athena-arn.js.map +1 -0
  245. package/dist/service/athena/sim-athena-executions.d.ts +81 -0
  246. package/dist/service/athena/sim-athena-executions.d.ts.map +1 -0
  247. package/dist/service/athena/sim-athena-executions.js +112 -0
  248. package/dist/service/athena/sim-athena-executions.js.map +1 -0
  249. package/dist/service/athena/sim-athena.d.ts +93 -0
  250. package/dist/service/athena/sim-athena.d.ts.map +1 -0
  251. package/dist/service/athena/sim-athena.js +128 -0
  252. package/dist/service/athena/sim-athena.js.map +1 -0
  253. package/dist/service/athena/workgroup/sim-athena-result-configuration.d.ts +59 -0
  254. package/dist/service/athena/workgroup/sim-athena-result-configuration.d.ts.map +1 -0
  255. package/dist/service/athena/workgroup/sim-athena-result-configuration.js +61 -0
  256. package/dist/service/athena/workgroup/sim-athena-result-configuration.js.map +1 -0
  257. package/dist/service/athena/workgroup/sim-athena-work-group-configuration.d.ts +52 -0
  258. package/dist/service/athena/workgroup/sim-athena-work-group-configuration.d.ts.map +1 -0
  259. package/dist/service/athena/workgroup/sim-athena-work-group-configuration.js +67 -0
  260. package/dist/service/athena/workgroup/sim-athena-work-group-configuration.js.map +1 -0
  261. package/dist/service/athena/workgroup/sim-athena-work-group-name.d.ts +17 -0
  262. package/dist/service/athena/workgroup/sim-athena-work-group-name.d.ts.map +1 -0
  263. package/dist/service/athena/workgroup/sim-athena-work-group-name.js +41 -0
  264. package/dist/service/athena/workgroup/sim-athena-work-group-name.js.map +1 -0
  265. package/dist/service/athena/workgroup/sim-athena-work-group-store.d.ts +31 -0
  266. package/dist/service/athena/workgroup/sim-athena-work-group-store.d.ts.map +1 -0
  267. package/dist/service/athena/workgroup/sim-athena-work-group-store.js +45 -0
  268. package/dist/service/athena/workgroup/sim-athena-work-group-store.js.map +1 -0
  269. package/dist/service/athena/workgroup/sim-athena-work-group-updates.d.ts +32 -0
  270. package/dist/service/athena/workgroup/sim-athena-work-group-updates.d.ts.map +1 -0
  271. package/dist/service/athena/workgroup/sim-athena-work-group-updates.js +2 -0
  272. package/dist/service/athena/workgroup/sim-athena-work-group-updates.js.map +1 -0
  273. package/dist/service/athena/workgroup/sim-athena-work-group.d.ts +54 -0
  274. package/dist/service/athena/workgroup/sim-athena-work-group.d.ts.map +1 -0
  275. package/dist/service/athena/workgroup/sim-athena-work-group.js +59 -0
  276. package/dist/service/athena/workgroup/sim-athena-work-group.js.map +1 -0
  277. package/dist/service/aws/factory/sim-aws-logs-collaborators.d.ts +6 -0
  278. package/dist/service/aws/factory/sim-aws-logs-collaborators.d.ts.map +1 -1
  279. package/dist/service/aws/factory/sim-aws-logs-collaborators.js +9 -0
  280. package/dist/service/aws/factory/sim-aws-logs-collaborators.js.map +1 -1
  281. package/dist/service/aws/factory/sim-aws-self-contained-service-builder.d.ts +18 -0
  282. package/dist/service/aws/factory/sim-aws-self-contained-service-builder.d.ts.map +1 -1
  283. package/dist/service/aws/factory/sim-aws-self-contained-service-builder.js +22 -0
  284. package/dist/service/aws/factory/sim-aws-self-contained-service-builder.js.map +1 -1
  285. package/dist/service/aws/factory/sim-aws-service-factory.d.ts +6 -0
  286. package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
  287. package/dist/service/aws/factory/sim-aws-service-factory.js +8 -0
  288. package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
  289. package/dist/service/aws/sim-aws-account-region-scope.d.ts +6 -0
  290. package/dist/service/aws/sim-aws-account-region-scope.d.ts.map +1 -1
  291. package/dist/service/aws/sim-aws-account-region-scope.js +8 -0
  292. package/dist/service/aws/sim-aws-account-region-scope.js.map +1 -1
  293. package/dist/service/aws/sim-aws-service-accessors.d.ts +6 -0
  294. package/dist/service/aws/sim-aws-service-accessors.d.ts.map +1 -1
  295. package/dist/service/aws/sim-aws-service-accessors.js +8 -0
  296. package/dist/service/aws/sim-aws-service-accessors.js.map +1 -1
  297. package/dist/service/cloudformation/resource/cfn/athena/sim-athena-cfn-value-adapter.d.ts +6 -0
  298. package/dist/service/cloudformation/resource/cfn/athena/sim-athena-cfn-value-adapter.d.ts.map +1 -0
  299. package/dist/service/cloudformation/resource/cfn/athena/sim-athena-cfn-value-adapter.js +19 -0
  300. package/dist/service/cloudformation/resource/cfn/athena/sim-athena-cfn-value-adapter.js.map +1 -0
  301. package/dist/service/cloudformation/resource/cfn/athena/sim-athena-named-query-cfn.d.ts +23 -0
  302. package/dist/service/cloudformation/resource/cfn/athena/sim-athena-named-query-cfn.d.ts.map +1 -0
  303. package/dist/service/cloudformation/resource/cfn/athena/sim-athena-named-query-cfn.js +25 -0
  304. package/dist/service/cloudformation/resource/cfn/athena/sim-athena-named-query-cfn.js.map +1 -0
  305. package/dist/service/cloudformation/resource/cfn/athena/sim-athena-work-group-cfn.d.ts +26 -0
  306. package/dist/service/cloudformation/resource/cfn/athena/sim-athena-work-group-cfn.d.ts.map +1 -0
  307. package/dist/service/cloudformation/resource/cfn/athena/sim-athena-work-group-cfn.js +28 -0
  308. package/dist/service/cloudformation/resource/cfn/athena/sim-athena-work-group-cfn.js.map +1 -0
  309. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-cfn-value-adapter.d.ts +6 -0
  310. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-cfn-value-adapter.d.ts.map +1 -0
  311. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-cfn-value-adapter.js +19 -0
  312. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-cfn-value-adapter.js.map +1 -0
  313. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-database-cfn.d.ts +27 -0
  314. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-database-cfn.d.ts.map +1 -0
  315. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-database-cfn.js +27 -0
  316. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-database-cfn.js.map +1 -0
  317. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-table-cfn-id.d.ts +21 -0
  318. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-table-cfn-id.d.ts.map +1 -0
  319. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-table-cfn-id.js +22 -0
  320. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-table-cfn-id.js.map +1 -0
  321. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-table-cfn.d.ts +27 -0
  322. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-table-cfn.d.ts.map +1 -0
  323. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-table-cfn.js +30 -0
  324. package/dist/service/cloudformation/resource/cfn/glue/sim-glue-table-cfn.js.map +1 -0
  325. package/dist/service/cloudformation/resource/cfn/sim-cfn-service-value-adapters.d.ts.map +1 -1
  326. package/dist/service/cloudformation/resource/cfn/sim-cfn-service-value-adapters.js +4 -0
  327. package/dist/service/cloudformation/resource/cfn/sim-cfn-service-value-adapters.js.map +1 -1
  328. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.d.ts.map +1 -1
  329. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.js +8 -0
  330. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.js.map +1 -1
  331. package/dist/service/cloudformation/resource/sim-cfn-resource-record.d.ts.map +1 -1
  332. package/dist/service/cloudformation/resource/sim-cfn-resource-record.js +9 -0
  333. package/dist/service/cloudformation/resource/sim-cfn-resource-record.js.map +1 -1
  334. package/dist/service/glue/arn/sim-glue-arn.d.ts +22 -0
  335. package/dist/service/glue/arn/sim-glue-arn.d.ts.map +1 -0
  336. package/dist/service/glue/arn/sim-glue-arn.js +29 -0
  337. package/dist/service/glue/arn/sim-glue-arn.js.map +1 -0
  338. package/dist/service/glue/arn/sim-glue-authorized-resources.d.ts +17 -0
  339. package/dist/service/glue/arn/sim-glue-authorized-resources.d.ts.map +1 -0
  340. package/dist/service/glue/arn/sim-glue-authorized-resources.js +29 -0
  341. package/dist/service/glue/arn/sim-glue-authorized-resources.js.map +1 -0
  342. package/dist/service/glue/cfn/database/sim-cfn-glue-database-creator.d.ts +27 -0
  343. package/dist/service/glue/cfn/database/sim-cfn-glue-database-creator.d.ts.map +1 -0
  344. package/dist/service/glue/cfn/database/sim-cfn-glue-database-creator.js +43 -0
  345. package/dist/service/glue/cfn/database/sim-cfn-glue-database-creator.js.map +1 -0
  346. package/dist/service/glue/cfn/database/sim-cfn-glue-database-properties.d.ts +31 -0
  347. package/dist/service/glue/cfn/database/sim-cfn-glue-database-properties.d.ts.map +1 -0
  348. package/dist/service/glue/cfn/database/sim-cfn-glue-database-properties.js +61 -0
  349. package/dist/service/glue/cfn/database/sim-cfn-glue-database-properties.js.map +1 -0
  350. package/dist/service/glue/cfn/database/sim-cfn-glue-database-rules.d.ts +18 -0
  351. package/dist/service/glue/cfn/database/sim-cfn-glue-database-rules.d.ts.map +1 -0
  352. package/dist/service/glue/cfn/database/sim-cfn-glue-database-rules.js +43 -0
  353. package/dist/service/glue/cfn/database/sim-cfn-glue-database-rules.js.map +1 -0
  354. package/dist/service/glue/cfn/database/sim-cfn-glue-database-unsimulated-properties.d.ts +10 -0
  355. package/dist/service/glue/cfn/database/sim-cfn-glue-database-unsimulated-properties.d.ts.map +1 -0
  356. package/dist/service/glue/cfn/database/sim-cfn-glue-database-unsimulated-properties.js +25 -0
  357. package/dist/service/glue/cfn/database/sim-cfn-glue-database-unsimulated-properties.js.map +1 -0
  358. package/dist/service/glue/cfn/sim-cfn-glue-catalog-id.d.ts +18 -0
  359. package/dist/service/glue/cfn/sim-cfn-glue-catalog-id.d.ts.map +1 -0
  360. package/dist/service/glue/cfn/sim-cfn-glue-catalog-id.js +20 -0
  361. package/dist/service/glue/cfn/sim-cfn-glue-catalog-id.js.map +1 -0
  362. package/dist/service/glue/cfn/sim-cfn-glue-ignored.d.ts +19 -0
  363. package/dist/service/glue/cfn/sim-cfn-glue-ignored.d.ts.map +1 -0
  364. package/dist/service/glue/cfn/sim-cfn-glue-ignored.js +22 -0
  365. package/dist/service/glue/cfn/sim-cfn-glue-ignored.js.map +1 -0
  366. package/dist/service/glue/cfn/sim-cfn-glue-property-error.d.ts +5 -0
  367. package/dist/service/glue/cfn/sim-cfn-glue-property-error.d.ts.map +1 -0
  368. package/dist/service/glue/cfn/sim-cfn-glue-property-error.js +8 -0
  369. package/dist/service/glue/cfn/sim-cfn-glue-property-error.js.map +1 -0
  370. package/dist/service/glue/cfn/sim-cfn-glue-record.d.ts +37 -0
  371. package/dist/service/glue/cfn/sim-cfn-glue-record.d.ts.map +1 -0
  372. package/dist/service/glue/cfn/sim-cfn-glue-record.js +63 -0
  373. package/dist/service/glue/cfn/sim-cfn-glue-record.js.map +1 -0
  374. package/dist/service/glue/cfn/sim-cfn-glue-values.d.ts +40 -0
  375. package/dist/service/glue/cfn/sim-cfn-glue-values.d.ts.map +1 -0
  376. package/dist/service/glue/cfn/sim-cfn-glue-values.js +74 -0
  377. package/dist/service/glue/cfn/sim-cfn-glue-values.js.map +1 -0
  378. package/dist/service/glue/cfn/sim-glue-cfn-resource-factory.d.ts +28 -0
  379. package/dist/service/glue/cfn/sim-glue-cfn-resource-factory.d.ts.map +1 -0
  380. package/dist/service/glue/cfn/sim-glue-cfn-resource-factory.js +54 -0
  381. package/dist/service/glue/cfn/sim-glue-cfn-resource-factory.js.map +1 -0
  382. package/dist/service/glue/cfn/table/sim-cfn-glue-columns.d.ts +20 -0
  383. package/dist/service/glue/cfn/table/sim-cfn-glue-columns.d.ts.map +1 -0
  384. package/dist/service/glue/cfn/table/sim-cfn-glue-columns.js +51 -0
  385. package/dist/service/glue/cfn/table/sim-cfn-glue-columns.js.map +1 -0
  386. package/dist/service/glue/cfn/table/sim-cfn-glue-storage-descriptor.d.ts +19 -0
  387. package/dist/service/glue/cfn/table/sim-cfn-glue-storage-descriptor.d.ts.map +1 -0
  388. package/dist/service/glue/cfn/table/sim-cfn-glue-storage-descriptor.js +63 -0
  389. package/dist/service/glue/cfn/table/sim-cfn-glue-storage-descriptor.js.map +1 -0
  390. package/dist/service/glue/cfn/table/sim-cfn-glue-table-creator.d.ts +30 -0
  391. package/dist/service/glue/cfn/table/sim-cfn-glue-table-creator.d.ts.map +1 -0
  392. package/dist/service/glue/cfn/table/sim-cfn-glue-table-creator.js +47 -0
  393. package/dist/service/glue/cfn/table/sim-cfn-glue-table-creator.js.map +1 -0
  394. package/dist/service/glue/cfn/table/sim-cfn-glue-table-input.d.ts +16 -0
  395. package/dist/service/glue/cfn/table/sim-cfn-glue-table-input.d.ts.map +1 -0
  396. package/dist/service/glue/cfn/table/sim-cfn-glue-table-input.js +26 -0
  397. package/dist/service/glue/cfn/table/sim-cfn-glue-table-input.js.map +1 -0
  398. package/dist/service/glue/cfn/table/sim-cfn-glue-table-properties.d.ts +31 -0
  399. package/dist/service/glue/cfn/table/sim-cfn-glue-table-properties.d.ts.map +1 -0
  400. package/dist/service/glue/cfn/table/sim-cfn-glue-table-properties.js +55 -0
  401. package/dist/service/glue/cfn/table/sim-cfn-glue-table-properties.js.map +1 -0
  402. package/dist/service/glue/cfn/table/sim-cfn-glue-table-rules.d.ts +12 -0
  403. package/dist/service/glue/cfn/table/sim-cfn-glue-table-rules.d.ts.map +1 -0
  404. package/dist/service/glue/cfn/table/sim-cfn-glue-table-rules.js +37 -0
  405. package/dist/service/glue/cfn/table/sim-cfn-glue-table-rules.js.map +1 -0
  406. package/dist/service/glue/cfn/table/sim-cfn-glue-table-unsimulated-properties.d.ts +19 -0
  407. package/dist/service/glue/cfn/table/sim-cfn-glue-table-unsimulated-properties.d.ts.map +1 -0
  408. package/dist/service/glue/cfn/table/sim-cfn-glue-table-unsimulated-properties.js +75 -0
  409. package/dist/service/glue/cfn/table/sim-cfn-glue-table-unsimulated-properties.js.map +1 -0
  410. package/dist/service/glue/command/authorize/sim-glue-authorize-resources.d.ts +18 -0
  411. package/dist/service/glue/command/authorize/sim-glue-authorize-resources.d.ts.map +1 -0
  412. package/dist/service/glue/command/authorize/sim-glue-authorize-resources.js +26 -0
  413. package/dist/service/glue/command/authorize/sim-glue-authorize-resources.js.map +1 -0
  414. package/dist/service/glue/command/authorize/sim-glue-authorizer.d.ts +45 -0
  415. package/dist/service/glue/command/authorize/sim-glue-authorizer.d.ts.map +1 -0
  416. package/dist/service/glue/command/authorize/sim-glue-authorizer.js +59 -0
  417. package/dist/service/glue/command/authorize/sim-glue-authorizer.js.map +1 -0
  418. package/dist/service/glue/command/database/database.command.d.ts +86 -0
  419. package/dist/service/glue/command/database/database.command.d.ts.map +1 -0
  420. package/dist/service/glue/command/database/database.command.js +2 -0
  421. package/dist/service/glue/command/database/database.command.js.map +1 -0
  422. package/dist/service/glue/command/database/sim-glue-database-commands.d.ts +42 -0
  423. package/dist/service/glue/command/database/sim-glue-database-commands.d.ts.map +1 -0
  424. package/dist/service/glue/command/database/sim-glue-database-commands.js +74 -0
  425. package/dist/service/glue/command/database/sim-glue-database-commands.js.map +1 -0
  426. package/dist/service/glue/command/database/sim-glue-database-detail.d.ts +10 -0
  427. package/dist/service/glue/command/database/sim-glue-database-detail.d.ts.map +1 -0
  428. package/dist/service/glue/command/database/sim-glue-database-detail.js +18 -0
  429. package/dist/service/glue/command/database/sim-glue-database-detail.js.map +1 -0
  430. package/dist/service/glue/command/sim-glue-catalog-id.d.ts +11 -0
  431. package/dist/service/glue/command/sim-glue-catalog-id.d.ts.map +1 -0
  432. package/dist/service/glue/command/sim-glue-catalog-id.js +18 -0
  433. package/dist/service/glue/command/sim-glue-catalog-id.js.map +1 -0
  434. package/dist/service/glue/command/sim-glue-request-options.d.ts +12 -0
  435. package/dist/service/glue/command/sim-glue-request-options.d.ts.map +1 -0
  436. package/dist/service/glue/command/sim-glue-request-options.js +2 -0
  437. package/dist/service/glue/command/sim-glue-request-options.js.map +1 -0
  438. package/dist/service/glue/command/table/sim-glue-table-commands.d.ts +43 -0
  439. package/dist/service/glue/command/table/sim-glue-table-commands.d.ts.map +1 -0
  440. package/dist/service/glue/command/table/sim-glue-table-commands.js +86 -0
  441. package/dist/service/glue/command/table/sim-glue-table-commands.js.map +1 -0
  442. package/dist/service/glue/command/table/sim-glue-table-detail.d.ts +14 -0
  443. package/dist/service/glue/command/table/sim-glue-table-detail.d.ts.map +1 -0
  444. package/dist/service/glue/command/table/sim-glue-table-detail.js +28 -0
  445. package/dist/service/glue/command/table/sim-glue-table-detail.js.map +1 -0
  446. package/dist/service/glue/command/table/table.command.d.ts +105 -0
  447. package/dist/service/glue/command/table/table.command.d.ts.map +1 -0
  448. package/dist/service/glue/command/table/table.command.js +2 -0
  449. package/dist/service/glue/command/table/table.command.js.map +1 -0
  450. package/dist/service/glue/database/sim-glue-catalog-name.d.ts +8 -0
  451. package/dist/service/glue/database/sim-glue-catalog-name.d.ts.map +1 -0
  452. package/dist/service/glue/database/sim-glue-catalog-name.js +26 -0
  453. package/dist/service/glue/database/sim-glue-catalog-name.js.map +1 -0
  454. package/dist/service/glue/database/sim-glue-database-store.d.ts +37 -0
  455. package/dist/service/glue/database/sim-glue-database-store.d.ts.map +1 -0
  456. package/dist/service/glue/database/sim-glue-database-store.js +54 -0
  457. package/dist/service/glue/database/sim-glue-database-store.js.map +1 -0
  458. package/dist/service/glue/database/sim-glue-database.d.ts +31 -0
  459. package/dist/service/glue/database/sim-glue-database.d.ts.map +1 -0
  460. package/dist/service/glue/database/sim-glue-database.js +33 -0
  461. package/dist/service/glue/database/sim-glue-database.js.map +1 -0
  462. package/dist/service/glue/error/sim-glue.error.d.ts +38 -0
  463. package/dist/service/glue/error/sim-glue.error.d.ts.map +1 -0
  464. package/dist/service/glue/error/sim-glue.error.js +41 -0
  465. package/dist/service/glue/error/sim-glue.error.js.map +1 -0
  466. package/dist/service/glue/index.d.ts +14 -0
  467. package/dist/service/glue/index.d.ts.map +1 -0
  468. package/dist/service/glue/index.js +9 -0
  469. package/dist/service/glue/index.js.map +1 -0
  470. package/dist/service/glue/sdk/sim-glue-sdk-command-router.d.ts +14 -0
  471. package/dist/service/glue/sdk/sim-glue-sdk-command-router.d.ts.map +1 -0
  472. package/dist/service/glue/sdk/sim-glue-sdk-command-router.js +52 -0
  473. package/dist/service/glue/sdk/sim-glue-sdk-command-router.js.map +1 -0
  474. package/dist/service/glue/sim-glue.d.ts +74 -0
  475. package/dist/service/glue/sim-glue.d.ts.map +1 -0
  476. package/dist/service/glue/sim-glue.js +128 -0
  477. package/dist/service/glue/sim-glue.js.map +1 -0
  478. package/dist/service/glue/table/sim-glue-table-input-shape.d.ts +37 -0
  479. package/dist/service/glue/table/sim-glue-table-input-shape.d.ts.map +1 -0
  480. package/dist/service/glue/table/sim-glue-table-input-shape.js +26 -0
  481. package/dist/service/glue/table/sim-glue-table-input-shape.js.map +1 -0
  482. package/dist/service/glue/table/sim-glue-table-schema.d.ts +51 -0
  483. package/dist/service/glue/table/sim-glue-table-schema.d.ts.map +1 -0
  484. package/dist/service/glue/table/sim-glue-table-schema.js +2 -0
  485. package/dist/service/glue/table/sim-glue-table-schema.js.map +1 -0
  486. package/dist/service/glue/table/sim-glue-table-store.d.ts +35 -0
  487. package/dist/service/glue/table/sim-glue-table-store.d.ts.map +1 -0
  488. package/dist/service/glue/table/sim-glue-table-store.js +71 -0
  489. package/dist/service/glue/table/sim-glue-table-store.js.map +1 -0
  490. package/dist/service/glue/table/sim-glue-table.d.ts +55 -0
  491. package/dist/service/glue/table/sim-glue-table.d.ts.map +1 -0
  492. package/dist/service/glue/table/sim-glue-table.js +58 -0
  493. package/dist/service/glue/table/sim-glue-table.js.map +1 -0
  494. package/dist/service/glue/write/sim-glue-catalog-writer.d.ts +35 -0
  495. package/dist/service/glue/write/sim-glue-catalog-writer.d.ts.map +1 -0
  496. package/dist/service/glue/write/sim-glue-catalog-writer.js +40 -0
  497. package/dist/service/glue/write/sim-glue-catalog-writer.js.map +1 -0
  498. package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.d.ts +5 -1
  499. package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.d.ts.map +1 -1
  500. package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.js +10 -1
  501. package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.js.map +1 -1
  502. package/dist/service/logs/delivery/cloudfront/sim-aws-logs-delivery-distributions.d.ts +34 -0
  503. package/dist/service/logs/delivery/cloudfront/sim-aws-logs-delivery-distributions.d.ts.map +1 -0
  504. package/dist/service/logs/delivery/cloudfront/sim-aws-logs-delivery-distributions.js +54 -0
  505. package/dist/service/logs/delivery/cloudfront/sim-aws-logs-delivery-distributions.js.map +1 -0
  506. package/dist/service/logs/delivery/sim-logs-delivery-source-resources.d.ts +28 -0
  507. package/dist/service/logs/delivery/sim-logs-delivery-source-resources.d.ts.map +1 -0
  508. package/dist/service/logs/delivery/sim-logs-delivery-source-resources.js +14 -0
  509. package/dist/service/logs/delivery/sim-logs-delivery-source-resources.js.map +1 -0
  510. package/dist/service/logs/sim-logs-commands.d.ts +7 -0
  511. package/dist/service/logs/sim-logs-commands.d.ts.map +1 -1
  512. package/dist/service/logs/sim-logs-commands.js +3 -1
  513. package/dist/service/logs/sim-logs-commands.js.map +1 -1
  514. package/dist/util/record/defined-entries.d.ts +10 -0
  515. package/dist/util/record/defined-entries.d.ts.map +1 -0
  516. package/dist/util/record/defined-entries.js +12 -0
  517. package/dist/util/record/defined-entries.js.map +1 -0
  518. package/package.json +11 -1
@@ -0,0 +1,45 @@
1
+ import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
2
+ import type { SimAwsResolvedCaller } from "../../../aws/caller/sim-aws-caller-resolver.js";
3
+ import type { SimAwsAccountRegionScope } from "../../../aws/sim-aws-account-region-scope.js";
4
+ import type { SimIamInterServiceAuthZ } from "../../../iam/authorize/sim-iam-inter-service-auth-z.js";
5
+ interface SimGlueAuthorizerProperties {
6
+ readonly iam: SimIamInterServiceAuthZ;
7
+ readonly accountRegionScope: SimAwsAccountRegionScope;
8
+ }
9
+ /**
10
+ * Applies simulated IAM authorization to Glue requests.
11
+ *
12
+ * Data Catalog resources are a hierarchy with the catalog at the root, and an
13
+ * operation on one needs permission on that resource and on every ancestor of
14
+ * it. Reading a table needs the table, the database and the catalog, and a
15
+ * policy naming only the table ARN is denied. Deleting a database also needs
16
+ * permission on every table in it.
17
+ *
18
+ * That rule is why each method authorizes a list. A policy written for real
19
+ * Glue already names the ancestors, and one that names only the leaf fails the
20
+ * same way in both places.
21
+ */
22
+ export declare class SimGlueAuthorizer {
23
+ #private;
24
+ constructor(properties: SimGlueAuthorizerProperties);
25
+ /**
26
+ * Ensure the caller may perform an action on a database.
27
+ *
28
+ * The database need not exist. Real IAM evaluates a request before the
29
+ * service handles it, so a caller with no permission is refused whether or
30
+ * not the database is there.
31
+ */
32
+ authorizeDatabase(action: string, databaseName: string, caller?: SimAwsCaller): SimAwsResolvedCaller;
33
+ /** Ensure the caller may perform an action on a table. */
34
+ authorizeTable(action: string, databaseName: string, tableName: string, caller?: SimAwsCaller): SimAwsResolvedCaller;
35
+ /** Ensure the caller may delete a database holding these tables. */
36
+ authorizeDatabaseDeletion(databaseName: string, tableNames: readonly string[], caller?: SimAwsCaller): SimAwsResolvedCaller;
37
+ /**
38
+ * Ensure the caller may perform an action naming no particular database.
39
+ *
40
+ * The catalog has no ancestor, so it is the whole of the list.
41
+ */
42
+ authorizeCatalog(action: string, caller?: SimAwsCaller): SimAwsResolvedCaller;
43
+ }
44
+ export {};
45
+ //# sourceMappingURL=sim-glue-authorizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-glue-authorizer.d.ts","sourceRoot":"","sources":["../../../../../src/service/glue/command/authorize/sim-glue-authorizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gDAAgD,CAAC;AAC3F,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wDAAwD,CAAC;AAStG,UAAU,2BAA2B;IACnC,QAAQ,CAAC,GAAG,EAAE,uBAAuB,CAAC;IACtC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;CACvD;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,iBAAiB;;IAI5B,YAAY,UAAU,EAAE,2BAA2B,EAGlD;IAED;;;;;;OAMG;IACH,iBAAiB,CACf,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,YAAY,GACpB,oBAAoB,CAMtB;IAED,0DAA0D;IAC1D,cAAc,CACZ,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,YAAY,GACpB,oBAAoB,CAMtB;IAED,oEAAoE;IACpE,yBAAyB,CACvB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,MAAM,CAAC,EAAE,YAAY,GACpB,oBAAoB,CAMtB;IAED;;;;OAIG;IACH,gBAAgB,CACd,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,YAAY,GACpB,oBAAoB,CAEtB;CAcF"}
@@ -0,0 +1,59 @@
1
+ import { simGlueCatalogArn } from "../../arn/sim-glue-arn.js";
2
+ import { authorizeSimGlueResources } from "./sim-glue-authorize-resources.js";
3
+ import { simGlueDatabaseDeletionResources, simGlueDatabaseResources, simGlueTableResources, } from "../../arn/sim-glue-authorized-resources.js";
4
+ /**
5
+ * Applies simulated IAM authorization to Glue requests.
6
+ *
7
+ * Data Catalog resources are a hierarchy with the catalog at the root, and an
8
+ * operation on one needs permission on that resource and on every ancestor of
9
+ * it. Reading a table needs the table, the database and the catalog, and a
10
+ * policy naming only the table ARN is denied. Deleting a database also needs
11
+ * permission on every table in it.
12
+ *
13
+ * That rule is why each method authorizes a list. A policy written for real
14
+ * Glue already names the ancestors, and one that names only the leaf fails the
15
+ * same way in both places.
16
+ */
17
+ export class SimGlueAuthorizer {
18
+ #iam;
19
+ #scope;
20
+ constructor(properties) {
21
+ this.#iam = properties.iam;
22
+ this.#scope = properties.accountRegionScope;
23
+ }
24
+ /**
25
+ * Ensure the caller may perform an action on a database.
26
+ *
27
+ * The database need not exist. Real IAM evaluates a request before the
28
+ * service handles it, so a caller with no permission is refused whether or
29
+ * not the database is there.
30
+ */
31
+ authorizeDatabase(action, databaseName, caller) {
32
+ return this.#authorize(action, simGlueDatabaseResources(this.#scope, databaseName), caller);
33
+ }
34
+ /** Ensure the caller may perform an action on a table. */
35
+ authorizeTable(action, databaseName, tableName, caller) {
36
+ return this.#authorize(action, simGlueTableResources(this.#scope, databaseName, tableName), caller);
37
+ }
38
+ /** Ensure the caller may delete a database holding these tables. */
39
+ authorizeDatabaseDeletion(databaseName, tableNames, caller) {
40
+ return this.#authorize("glue:DeleteDatabase", simGlueDatabaseDeletionResources(this.#scope, databaseName, tableNames), caller);
41
+ }
42
+ /**
43
+ * Ensure the caller may perform an action naming no particular database.
44
+ *
45
+ * The catalog has no ancestor, so it is the whole of the list.
46
+ */
47
+ authorizeCatalog(action, caller) {
48
+ return this.#authorize(action, [simGlueCatalogArn(this.#scope)], caller);
49
+ }
50
+ #authorize(action, resources, caller) {
51
+ return authorizeSimGlueResources({
52
+ iam: this.#iam,
53
+ action,
54
+ resources,
55
+ caller,
56
+ });
57
+ }
58
+ }
59
+ //# sourceMappingURL=sim-glue-authorizer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-glue-authorizer.js","sourceRoot":"","sources":["../../../../../src/service/glue/command/authorize/sim-glue-authorizer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EACL,gCAAgC,EAChC,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,4CAA4C,CAAC;AAOpD;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,iBAAiB;IACnB,IAAI,CAA0B;IAC9B,MAAM,CAA2B;IAE1C,YAAY,UAAuC;QACjD,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAC9C,CAAC;IAED;;;;;;OAMG;IACH,iBAAiB,CACf,MAAc,EACd,YAAoB,EACpB,MAAqB;QAErB,OAAO,IAAI,CAAC,UAAU,CACpB,MAAM,EACN,wBAAwB,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,EACnD,MAAM,CACP,CAAC;IACJ,CAAC;IAED,0DAA0D;IAC1D,cAAc,CACZ,MAAc,EACd,YAAoB,EACpB,SAAiB,EACjB,MAAqB;QAErB,OAAO,IAAI,CAAC,UAAU,CACpB,MAAM,EACN,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,EAC3D,MAAM,CACP,CAAC;IACJ,CAAC;IAED,oEAAoE;IACpE,yBAAyB,CACvB,YAAoB,EACpB,UAA6B,EAC7B,MAAqB;QAErB,OAAO,IAAI,CAAC,UAAU,CACpB,qBAAqB,EACrB,gCAAgC,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,CAAC,EACvE,MAAM,CACP,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CACd,MAAc,EACd,MAAqB;QAErB,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC3E,CAAC;IAED,UAAU,CACR,MAAc,EACd,SAA4B,EAC5B,MAAgC;QAEhC,OAAO,yBAAyB,CAAC;YAC/B,GAAG,EAAE,IAAI,CAAC,IAAI;YACd,MAAM;YACN,SAAS;YACT,MAAM;SACP,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,86 @@
1
+ import type { SimResponseMetadata } from "../../../aws/metadata/response-metadata.type.js";
2
+ /**
3
+ * What a caller declares a database with.
4
+ *
5
+ * https://docs.aws.amazon.com/glue/latest/webapi/API_DatabaseInput.html
6
+ */
7
+ export interface SimGlueDatabaseInputShape {
8
+ readonly Name?: string | undefined;
9
+ readonly Description?: string | undefined;
10
+ readonly LocationUri?: string | undefined;
11
+ readonly Parameters?: Readonly<Record<string, string>> | undefined;
12
+ }
13
+ /**
14
+ * What GetDatabase reports about one database.
15
+ */
16
+ export interface SimGlueDatabaseDetail {
17
+ readonly Name: string;
18
+ readonly Description?: string | undefined;
19
+ readonly LocationUri?: string | undefined;
20
+ readonly Parameters: Readonly<Record<string, string>>;
21
+ readonly CreateTime: Date;
22
+ readonly CatalogId: string;
23
+ }
24
+ /**
25
+ * Minimal structural sim Glue CreateDatabase command.
26
+ *
27
+ * https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/glue/command/CreateDatabaseCommand/
28
+ */
29
+ export interface SimCreateDatabaseCommand {
30
+ readonly input: SimCreateDatabaseCommandInput;
31
+ }
32
+ export interface SimCreateDatabaseCommandInput {
33
+ readonly CatalogId?: string | undefined;
34
+ readonly DatabaseInput?: SimGlueDatabaseInputShape | undefined;
35
+ readonly Tags?: Readonly<Record<string, string>> | undefined;
36
+ }
37
+ export interface SimCreateDatabaseCommandOutput {
38
+ readonly $metadata: SimResponseMetadata;
39
+ }
40
+ /**
41
+ * Minimal structural sim Glue GetDatabase command.
42
+ *
43
+ * https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/glue/command/GetDatabaseCommand/
44
+ */
45
+ export interface SimGetDatabaseCommand {
46
+ readonly input: SimGetDatabaseCommandInput;
47
+ }
48
+ export interface SimGetDatabaseCommandInput {
49
+ readonly CatalogId?: string | undefined;
50
+ readonly Name?: string | undefined;
51
+ }
52
+ export interface SimGetDatabaseCommandOutput {
53
+ readonly Database: SimGlueDatabaseDetail;
54
+ readonly $metadata: SimResponseMetadata;
55
+ }
56
+ /**
57
+ * Minimal structural sim Glue GetDatabases command.
58
+ *
59
+ * https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/glue/command/GetDatabasesCommand/
60
+ */
61
+ export interface SimGetDatabasesCommand {
62
+ readonly input: SimGetDatabasesCommandInput;
63
+ }
64
+ export interface SimGetDatabasesCommandInput {
65
+ readonly CatalogId?: string | undefined;
66
+ }
67
+ export interface SimGetDatabasesCommandOutput {
68
+ readonly DatabaseList: readonly SimGlueDatabaseDetail[];
69
+ readonly $metadata: SimResponseMetadata;
70
+ }
71
+ /**
72
+ * Minimal structural sim Glue DeleteDatabase command.
73
+ *
74
+ * https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/glue/command/DeleteDatabaseCommand/
75
+ */
76
+ export interface SimDeleteDatabaseCommand {
77
+ readonly input: SimDeleteDatabaseCommandInput;
78
+ }
79
+ export interface SimDeleteDatabaseCommandInput {
80
+ readonly CatalogId?: string | undefined;
81
+ readonly Name?: string | undefined;
82
+ }
83
+ export interface SimDeleteDatabaseCommandOutput {
84
+ readonly $metadata: SimResponseMetadata;
85
+ }
86
+ //# sourceMappingURL=database.command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database.command.d.ts","sourceRoot":"","sources":["../../../../../src/service/glue/command/database/database.command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAE3F;;;;GAIG;AACH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC;CACpE;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,KAAK,EAAE,6BAA6B,CAAC;CAC/C;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,aAAa,CAAC,EAAE,yBAAyB,GAAG,SAAS,CAAC;IAC/D,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC;CAC9D;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;CACzC;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,KAAK,EAAE,0BAA0B,CAAC;CAC5C;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;CACzC;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE,2BAA2B,CAAC;CAC7C;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,YAAY,EAAE,SAAS,qBAAqB,EAAE,CAAC;IACxD,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;CACzC;AAED;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,KAAK,EAAE,6BAA6B,CAAC;CAC/C;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;CACzC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=database.command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database.command.js","sourceRoot":"","sources":["../../../../../src/service/glue/command/database/database.command.ts"],"names":[],"mappings":""}
@@ -0,0 +1,42 @@
1
+ import type { SimAwsAccountRegionScope } from "../../../aws/sim-aws-account-region-scope.js";
2
+ import type { SimClock } from "../../../../util/clock/sim-clock.js";
3
+ import type { SimGlueDatabaseStore } from "../../database/sim-glue-database-store.js";
4
+ import type { SimGlueTableStore } from "../../table/sim-glue-table-store.js";
5
+ import type { SimGlueAuthorizer } from "../authorize/sim-glue-authorizer.js";
6
+ import type { SimGlueRequestOptions } from "../sim-glue-request-options.js";
7
+ import type { SimCreateDatabaseCommand, SimCreateDatabaseCommandOutput, SimDeleteDatabaseCommand, SimDeleteDatabaseCommandOutput, SimGetDatabaseCommand, SimGetDatabaseCommandOutput, SimGetDatabasesCommand, SimGetDatabasesCommandOutput } from "./database.command.js";
8
+ interface SimGlueDatabaseCommandsProperties {
9
+ readonly databases: SimGlueDatabaseStore;
10
+ readonly tables: SimGlueTableStore;
11
+ readonly authorizer: SimGlueAuthorizer;
12
+ readonly accountRegionScope: SimAwsAccountRegionScope;
13
+ readonly clock: SimClock;
14
+ }
15
+ /**
16
+ * The commands that make, read and remove Glue databases.
17
+ */
18
+ export declare class SimGlueDatabaseCommands {
19
+ #private;
20
+ constructor(properties: SimGlueDatabaseCommandsProperties);
21
+ /**
22
+ * Make a database.
23
+ *
24
+ * Creation is not idempotent on real Glue, so a name already in use fails
25
+ * rather than answering with the database that is there.
26
+ */
27
+ createDatabase(command: SimCreateDatabaseCommand, options?: SimGlueRequestOptions): SimCreateDatabaseCommandOutput;
28
+ /**
29
+ * Read a database back.
30
+ */
31
+ getDatabase(command: SimGetDatabaseCommand, options?: SimGlueRequestOptions): SimGetDatabaseCommandOutput;
32
+ /**
33
+ * Read every database in this catalog, in creation order.
34
+ */
35
+ getDatabases(command: SimGetDatabasesCommand, options?: SimGlueRequestOptions): SimGetDatabasesCommandOutput;
36
+ /**
37
+ * Remove a database, and the tables it holds with it.
38
+ */
39
+ deleteDatabase(command: SimDeleteDatabaseCommand, options?: SimGlueRequestOptions): SimDeleteDatabaseCommandOutput;
40
+ }
41
+ export {};
42
+ //# sourceMappingURL=sim-glue-database-commands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-glue-database-commands.d.ts","sourceRoot":"","sources":["../../../../../src/service/glue/command/database/sim-glue-database-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAEpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAE7E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,KAAK,EACV,wBAAwB,EACxB,8BAA8B,EAC9B,wBAAwB,EACxB,8BAA8B,EAC9B,qBAAqB,EACrB,2BAA2B,EAC3B,sBAAsB,EACtB,4BAA4B,EAC7B,MAAM,uBAAuB,CAAC;AAG/B,UAAU,iCAAiC;IACzC,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IACvC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;IACtD,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,uBAAuB;;IAOlC,YAAY,UAAU,EAAE,iCAAiC,EAMxD;IAED;;;;;OAKG;IACH,cAAc,CACZ,OAAO,EAAE,wBAAwB,EACjC,OAAO,CAAC,EAAE,qBAAqB,GAC9B,8BAA8B,CAmBhC;IAED;;OAEG;IACH,WAAW,CACT,OAAO,EAAE,qBAAqB,EAC9B,OAAO,CAAC,EAAE,qBAAqB,GAC9B,2BAA2B,CAe7B;IAED;;OAEG;IACH,YAAY,CACV,OAAO,EAAE,sBAAsB,EAC/B,OAAO,CAAC,EAAE,qBAAqB,GAC9B,4BAA4B,CAS9B;IAED;;OAEG;IACH,cAAc,CACZ,OAAO,EAAE,wBAAwB,EACjC,OAAO,CAAC,EAAE,qBAAqB,GAC9B,8BAA8B,CAgBhC;CACF"}
@@ -0,0 +1,74 @@
1
+ import { requiredSimGlueName } from "../../database/sim-glue-catalog-name.js";
2
+ import { requireSimGlueCatalogId } from "../sim-glue-catalog-id.js";
3
+ import { simGlueDatabaseDetail } from "./sim-glue-database-detail.js";
4
+ /**
5
+ * The commands that make, read and remove Glue databases.
6
+ */
7
+ export class SimGlueDatabaseCommands {
8
+ #databases;
9
+ #tables;
10
+ #authorizer;
11
+ #accountRegionScope;
12
+ #clock;
13
+ constructor(properties) {
14
+ this.#databases = properties.databases;
15
+ this.#tables = properties.tables;
16
+ this.#authorizer = properties.authorizer;
17
+ this.#accountRegionScope = properties.accountRegionScope;
18
+ this.#clock = properties.clock;
19
+ }
20
+ /**
21
+ * Make a database.
22
+ *
23
+ * Creation is not idempotent on real Glue, so a name already in use fails
24
+ * rather than answering with the database that is there.
25
+ */
26
+ createDatabase(command, options) {
27
+ requireSimGlueCatalogId(this.#accountRegionScope, command.input.CatalogId);
28
+ const input = command.input.DatabaseInput ?? {};
29
+ const name = requiredSimGlueName("DatabaseInput.Name", input.Name);
30
+ this.#authorizer.authorizeDatabase("glue:CreateDatabase", name, options?.caller);
31
+ this.#databases.create(name, this.#clock.now(), {
32
+ description: input.Description,
33
+ locationUri: input.LocationUri,
34
+ parameters: input.Parameters,
35
+ });
36
+ return { $metadata: {} };
37
+ }
38
+ /**
39
+ * Read a database back.
40
+ */
41
+ getDatabase(command, options) {
42
+ requireSimGlueCatalogId(this.#accountRegionScope, command.input.CatalogId);
43
+ const name = requiredSimGlueName("Name", command.input.Name);
44
+ this.#authorizer.authorizeDatabase("glue:GetDatabase", name, options?.caller);
45
+ return {
46
+ Database: simGlueDatabaseDetail(this.#databases.require(name)),
47
+ $metadata: {},
48
+ };
49
+ }
50
+ /**
51
+ * Read every database in this catalog, in creation order.
52
+ */
53
+ getDatabases(command, options) {
54
+ requireSimGlueCatalogId(this.#accountRegionScope, command.input.CatalogId);
55
+ this.#authorizer.authorizeCatalog("glue:GetDatabases", options?.caller);
56
+ return {
57
+ DatabaseList: this.#databases.all.map(simGlueDatabaseDetail),
58
+ $metadata: {},
59
+ };
60
+ }
61
+ /**
62
+ * Remove a database, and the tables it holds with it.
63
+ */
64
+ deleteDatabase(command, options) {
65
+ requireSimGlueCatalogId(this.#accountRegionScope, command.input.CatalogId);
66
+ const name = requiredSimGlueName("Name", command.input.Name);
67
+ this.#authorizer.authorizeDatabaseDeletion(name, this.#tables.inDatabase(name).map((table) => table.name), options?.caller);
68
+ this.#databases.require(name);
69
+ this.#databases.delete(name);
70
+ this.#tables.deleteDatabase(name);
71
+ return { $metadata: {} };
72
+ }
73
+ }
74
+ //# sourceMappingURL=sim-glue-database-commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-glue-database-commands.js","sourceRoot":"","sources":["../../../../../src/service/glue/command/database/sim-glue-database-commands.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type { SimGlueDatabase } from "../../database/sim-glue-database.js";
2
+ import type { SimGlueDatabaseDetail } from "./database.command.js";
3
+ /**
4
+ * What GetDatabase and GetDatabases report about a database.
5
+ *
6
+ * The result is detached from the stored database, for the reason
7
+ * `simGlueTableDetail` gives.
8
+ */
9
+ export declare function simGlueDatabaseDetail(database: SimGlueDatabase): SimGlueDatabaseDetail;
10
+ //# sourceMappingURL=sim-glue-database-detail.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-glue-database-detail.d.ts","sourceRoot":"","sources":["../../../../../src/service/glue/command/database/sim-glue-database-detail.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAE3E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEnE;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,eAAe,GACxB,qBAAqB,CAWvB"}
@@ -0,0 +1,18 @@
1
+ import { definedEntries } from "../../../../util/record/defined-entries.js";
2
+ /**
3
+ * What GetDatabase and GetDatabases report about a database.
4
+ *
5
+ * The result is detached from the stored database, for the reason
6
+ * `simGlueTableDetail` gives.
7
+ */
8
+ export function simGlueDatabaseDetail(database) {
9
+ return structuredClone(definedEntries({
10
+ Name: database.name,
11
+ Description: database.description,
12
+ LocationUri: database.locationUri,
13
+ Parameters: database.parameters,
14
+ CreateTime: database.createTime,
15
+ CatalogId: database.catalogId,
16
+ }));
17
+ }
18
+ //# sourceMappingURL=sim-glue-database-detail.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-glue-database-detail.js","sourceRoot":"","sources":["../../../../../src/service/glue/command/database/sim-glue-database-detail.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAG5E;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAAyB;IAEzB,OAAO,eAAe,CACpB,cAAc,CAAC;QACb,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,SAAS,EAAE,QAAQ,CAAC,SAAS;KAC9B,CAAC,CACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
2
+ /**
3
+ * Check the catalog a request names is the one this simulation holds.
4
+ *
5
+ * `CatalogId` defaults to the caller's own account on real Glue, and naming
6
+ * another account's catalog reaches that account's Data Catalog through a
7
+ * resource policy. Nothing here crosses accounts, so a catalog id belonging to
8
+ * another account is refused rather than quietly answered from this one.
9
+ */
10
+ export declare function requireSimGlueCatalogId(accountRegionScope: SimAwsAccountRegionScope, catalogId: string | undefined): void;
11
+ //# sourceMappingURL=sim-glue-catalog-id.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-glue-catalog-id.d.ts","sourceRoot":"","sources":["../../../../src/service/glue/command/sim-glue-catalog-id.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAG1F;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,kBAAkB,EAAE,wBAAwB,EAC5C,SAAS,EAAE,MAAM,GAAG,SAAS,GAC5B,IAAI,CAUN"}
@@ -0,0 +1,18 @@
1
+ import { SimGlueInvalidInputException } from "../error/sim-glue.error.js";
2
+ /**
3
+ * Check the catalog a request names is the one this simulation holds.
4
+ *
5
+ * `CatalogId` defaults to the caller's own account on real Glue, and naming
6
+ * another account's catalog reaches that account's Data Catalog through a
7
+ * resource policy. Nothing here crosses accounts, so a catalog id belonging to
8
+ * another account is refused rather than quietly answered from this one.
9
+ */
10
+ export function requireSimGlueCatalogId(accountRegionScope, catalogId) {
11
+ if (catalogId === undefined || catalogId === accountRegionScope.accountId) {
12
+ return;
13
+ }
14
+ throw new SimGlueInvalidInputException(`Simulated Glue holds the Data Catalog of account ` +
15
+ `${accountRegionScope.accountId}, and CatalogId ${catalogId} names ` +
16
+ `another account. Cross-account Data Catalog access is not simulated.`);
17
+ }
18
+ //# sourceMappingURL=sim-glue-catalog-id.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-glue-catalog-id.js","sourceRoot":"","sources":["../../../../src/service/glue/command/sim-glue-catalog-id.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAE1E;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CACrC,kBAA4C,EAC5C,SAA6B;IAE7B,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,kBAAkB,CAAC,SAAS,EAAE,CAAC;QAC1E,OAAO;IACT,CAAC;IAED,MAAM,IAAI,4BAA4B,CACpC,mDAAmD;QACjD,GAAG,kBAAkB,CAAC,SAAS,mBAAmB,SAAS,SAAS;QACpE,sEAAsE,CACzE,CAAC;AACJ,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
2
+ /**
3
+ * What a simulated Glue request carries besides its command input.
4
+ */
5
+ export interface SimGlueRequestOptions {
6
+ /**
7
+ * Who is making the request. An omitted caller is the Account root, as it is
8
+ * everywhere else in the simulation.
9
+ */
10
+ readonly caller?: SimAwsCaller;
11
+ }
12
+ //# sourceMappingURL=sim-glue-request-options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-glue-request-options.d.ts","sourceRoot":"","sources":["../../../../src/service/glue/command/sim-glue-request-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=sim-glue-request-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-glue-request-options.js","sourceRoot":"","sources":["../../../../src/service/glue/command/sim-glue-request-options.ts"],"names":[],"mappings":""}
@@ -0,0 +1,43 @@
1
+ import type { SimClock } from "../../../../util/clock/sim-clock.js";
2
+ import type { SimAwsAccountRegionScope } from "../../../aws/sim-aws-account-region-scope.js";
3
+ import type { SimGlueDatabaseStore } from "../../database/sim-glue-database-store.js";
4
+ import type { SimGlueTableStore } from "../../table/sim-glue-table-store.js";
5
+ import type { SimGlueAuthorizer } from "../authorize/sim-glue-authorizer.js";
6
+ import type { SimGlueRequestOptions } from "../sim-glue-request-options.js";
7
+ import type { SimCreateTableCommand, SimCreateTableCommandOutput, SimDeleteTableCommand, SimDeleteTableCommandOutput, SimGetTableCommand, SimGetTableCommandOutput, SimGetTablesCommand, SimGetTablesCommandOutput } from "./table.command.js";
8
+ interface SimGlueTableCommandsProperties {
9
+ readonly databases: SimGlueDatabaseStore;
10
+ readonly tables: SimGlueTableStore;
11
+ readonly authorizer: SimGlueAuthorizer;
12
+ readonly accountRegionScope: SimAwsAccountRegionScope;
13
+ readonly clock: SimClock;
14
+ }
15
+ /**
16
+ * The commands that make, read and remove Glue tables.
17
+ */
18
+ export declare class SimGlueTableCommands {
19
+ #private;
20
+ constructor(properties: SimGlueTableCommandsProperties);
21
+ /**
22
+ * Make a table in a database.
23
+ *
24
+ * The database has to be there. Real Glue answers `EntityNotFoundException`
25
+ * for one that is absent rather than creating it on the way past.
26
+ */
27
+ createTable(command: SimCreateTableCommand, options?: SimGlueRequestOptions): SimCreateTableCommandOutput;
28
+ /**
29
+ * Read a table back, with its storage descriptor, partition keys and
30
+ * parameters as they were declared.
31
+ */
32
+ getTable(command: SimGetTableCommand, options?: SimGlueRequestOptions): SimGetTableCommandOutput;
33
+ /**
34
+ * Read every table in one database, in creation order.
35
+ */
36
+ getTables(command: SimGetTablesCommand, options?: SimGlueRequestOptions): SimGetTablesCommandOutput;
37
+ /**
38
+ * Remove a table.
39
+ */
40
+ deleteTable(command: SimDeleteTableCommand, options?: SimGlueRequestOptions): SimDeleteTableCommandOutput;
41
+ }
42
+ export {};
43
+ //# sourceMappingURL=sim-glue-table-commands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-glue-table-commands.d.ts","sourceRoot":"","sources":["../../../../../src/service/glue/command/table/sim-glue-table-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAE7F,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAK7E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAE7E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,KAAK,EACV,qBAAqB,EACrB,2BAA2B,EAC3B,qBAAqB,EACrB,2BAA2B,EAC3B,kBAAkB,EAClB,wBAAwB,EACxB,mBAAmB,EACnB,yBAAyB,EAC1B,MAAM,oBAAoB,CAAC;AAG5B,UAAU,8BAA8B;IACtC,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IACvC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;IACtD,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,oBAAoB;;IAO/B,YAAY,UAAU,EAAE,8BAA8B,EAMrD;IAED;;;;;OAKG;IACH,WAAW,CACT,OAAO,EAAE,qBAAqB,EAC9B,OAAO,CAAC,EAAE,qBAAqB,GAC9B,2BAA2B,CAsC7B;IAED;;;OAGG;IACH,QAAQ,CACN,OAAO,EAAE,kBAAkB,EAC3B,OAAO,CAAC,EAAE,qBAAqB,GAC9B,wBAAwB,CAsB1B;IAED;;OAEG;IACH,SAAS,CACP,OAAO,EAAE,mBAAmB,EAC5B,OAAO,CAAC,EAAE,qBAAqB,GAC9B,yBAAyB,CAoB3B;IAED;;OAEG;IACH,WAAW,CACT,OAAO,EAAE,qBAAqB,EAC9B,OAAO,CAAC,EAAE,qBAAqB,GAC9B,2BAA2B,CAoB7B;CACF"}
@@ -0,0 +1,86 @@
1
+ import { requiredSimGlueName } from "../../database/sim-glue-catalog-name.js";
2
+ import { requiredSimGlueColumns, requiredSimGlueStorageDescriptor, } from "../../table/sim-glue-table-input-shape.js";
3
+ import { requireSimGlueCatalogId } from "../sim-glue-catalog-id.js";
4
+ import { simGlueTableDetail } from "./sim-glue-table-detail.js";
5
+ /**
6
+ * The commands that make, read and remove Glue tables.
7
+ */
8
+ export class SimGlueTableCommands {
9
+ #databases;
10
+ #tables;
11
+ #authorizer;
12
+ #accountRegionScope;
13
+ #clock;
14
+ constructor(properties) {
15
+ this.#databases = properties.databases;
16
+ this.#tables = properties.tables;
17
+ this.#authorizer = properties.authorizer;
18
+ this.#accountRegionScope = properties.accountRegionScope;
19
+ this.#clock = properties.clock;
20
+ }
21
+ /**
22
+ * Make a table in a database.
23
+ *
24
+ * The database has to be there. Real Glue answers `EntityNotFoundException`
25
+ * for one that is absent rather than creating it on the way past.
26
+ */
27
+ createTable(command, options) {
28
+ requireSimGlueCatalogId(this.#accountRegionScope, command.input.CatalogId);
29
+ const databaseName = requiredSimGlueName("DatabaseName", command.input.DatabaseName);
30
+ const input = command.input.TableInput ?? {};
31
+ const name = requiredSimGlueName("TableInput.Name", input.Name ?? command.input.Name);
32
+ this.#authorizer.authorizeTable("glue:CreateTable", databaseName, name, options?.caller);
33
+ this.#databases.require(databaseName);
34
+ this.#tables.create(databaseName, name, this.#clock.now(), {
35
+ description: input.Description,
36
+ owner: input.Owner,
37
+ retention: input.Retention,
38
+ tableType: input.TableType,
39
+ partitionKeys: requiredSimGlueColumns("TableInput.PartitionKeys", input.PartitionKeys),
40
+ storageDescriptor: requiredSimGlueStorageDescriptor("TableInput.StorageDescriptor", input.StorageDescriptor),
41
+ parameters: input.Parameters,
42
+ });
43
+ return { $metadata: {} };
44
+ }
45
+ /**
46
+ * Read a table back, with its storage descriptor, partition keys and
47
+ * parameters as they were declared.
48
+ */
49
+ getTable(command, options) {
50
+ requireSimGlueCatalogId(this.#accountRegionScope, command.input.CatalogId);
51
+ const databaseName = requiredSimGlueName("DatabaseName", command.input.DatabaseName);
52
+ const name = requiredSimGlueName("Name", command.input.Name);
53
+ this.#authorizer.authorizeTable("glue:GetTable", databaseName, name, options?.caller);
54
+ this.#databases.require(databaseName);
55
+ return {
56
+ Table: simGlueTableDetail(this.#tables.require(databaseName, name)),
57
+ $metadata: {},
58
+ };
59
+ }
60
+ /**
61
+ * Read every table in one database, in creation order.
62
+ */
63
+ getTables(command, options) {
64
+ requireSimGlueCatalogId(this.#accountRegionScope, command.input.CatalogId);
65
+ const databaseName = requiredSimGlueName("DatabaseName", command.input.DatabaseName);
66
+ this.#authorizer.authorizeDatabase("glue:GetTables", databaseName, options?.caller);
67
+ this.#databases.require(databaseName);
68
+ return {
69
+ TableList: this.#tables.inDatabase(databaseName).map(simGlueTableDetail),
70
+ $metadata: {},
71
+ };
72
+ }
73
+ /**
74
+ * Remove a table.
75
+ */
76
+ deleteTable(command, options) {
77
+ requireSimGlueCatalogId(this.#accountRegionScope, command.input.CatalogId);
78
+ const databaseName = requiredSimGlueName("DatabaseName", command.input.DatabaseName);
79
+ const name = requiredSimGlueName("Name", command.input.Name);
80
+ this.#authorizer.authorizeTable("glue:DeleteTable", databaseName, name, options?.caller);
81
+ this.#tables.require(databaseName, name);
82
+ this.#tables.delete(databaseName, name);
83
+ return { $metadata: {} };
84
+ }
85
+ }
86
+ //# sourceMappingURL=sim-glue-table-commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-glue-table-commands.js","sourceRoot":"","sources":["../../../../../src/service/glue/command/table/sim-glue-table-commands.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { SimGlueTable } from "../../table/sim-glue-table.js";
2
+ import type { SimGlueTableDetail } from "./table.command.js";
3
+ /**
4
+ * What GetTable and GetTables report about a table.
5
+ *
6
+ * Nothing updates a table yet, so the update time is the creation time.
7
+ *
8
+ * The result is detached from the stored table. Real Glue answers each request
9
+ * with its own object, and a caller holding a reference into the catalog could
10
+ * otherwise change a definition without a command or the permission to make
11
+ * one.
12
+ */
13
+ export declare function simGlueTableDetail(table: SimGlueTable): SimGlueTableDetail;
14
+ //# sourceMappingURL=sim-glue-table-detail.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-glue-table-detail.d.ts","sourceRoot":"","sources":["../../../../../src/service/glue/command/table/sim-glue-table-detail.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE7D;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,kBAAkB,CAiB1E"}