@goast/typescript 0.4.0-beta4 → 0.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 (1458) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +1 -0
  3. package/esm/_dnt.test_polyfills.d.ts +18 -0
  4. package/esm/_dnt.test_polyfills.d.ts.map +1 -0
  5. package/esm/_dnt.test_polyfills.js +17 -0
  6. package/esm/_dnt.test_shims.d.ts +6 -0
  7. package/esm/_dnt.test_shims.d.ts.map +1 -0
  8. package/esm/_dnt.test_shims.js +61 -0
  9. package/esm/deps/jsr.io/@std/assert/1.0.6/assertion_error.d.ts +26 -0
  10. package/esm/deps/jsr.io/@std/assert/1.0.6/assertion_error.d.ts.map +1 -0
  11. package/esm/deps/jsr.io/@std/assert/1.0.6/assertion_error.js +30 -0
  12. package/esm/deps/jsr.io/@std/assert/1.0.6/equal.d.ts +17 -0
  13. package/esm/deps/jsr.io/@std/assert/1.0.6/equal.d.ts.map +1 -0
  14. package/esm/deps/jsr.io/@std/assert/1.0.6/equal.js +136 -0
  15. package/esm/deps/jsr.io/@std/assert/1.0.6/equals.d.ts +22 -0
  16. package/esm/deps/jsr.io/@std/assert/1.0.6/equals.d.ts.map +1 -0
  17. package/esm/deps/jsr.io/@std/assert/1.0.6/equals.js +45 -0
  18. package/esm/deps/jsr.io/@std/assert/1.0.6/false.d.ts +18 -0
  19. package/esm/deps/jsr.io/@std/assert/1.0.6/false.d.ts.map +1 -0
  20. package/esm/deps/jsr.io/@std/assert/1.0.6/false.js +22 -0
  21. package/esm/deps/jsr.io/@std/assert/1.0.6/instance_of.d.ts +23 -0
  22. package/esm/deps/jsr.io/@std/assert/1.0.6/instance_of.d.ts.map +1 -0
  23. package/esm/deps/jsr.io/@std/assert/1.0.6/instance_of.js +53 -0
  24. package/esm/deps/jsr.io/@std/assert/1.0.6/is_error.d.ts +25 -0
  25. package/esm/deps/jsr.io/@std/assert/1.0.6/is_error.d.ts.map +1 -0
  26. package/esm/deps/jsr.io/@std/assert/1.0.6/is_error.js +54 -0
  27. package/esm/deps/jsr.io/@std/assert/1.0.6/match.d.ts +18 -0
  28. package/esm/deps/jsr.io/@std/assert/1.0.6/match.d.ts.map +1 -0
  29. package/esm/deps/jsr.io/@std/assert/1.0.6/match.js +26 -0
  30. package/esm/deps/jsr.io/@std/assert/1.0.6/not_instance_of.d.ts +20 -0
  31. package/esm/deps/jsr.io/@std/assert/1.0.6/not_instance_of.d.ts.map +1 -0
  32. package/esm/deps/jsr.io/@std/assert/1.0.6/not_instance_of.js +29 -0
  33. package/esm/deps/jsr.io/@std/assert/1.0.6/not_match.d.ts +18 -0
  34. package/esm/deps/jsr.io/@std/assert/1.0.6/not_match.d.ts.map +1 -0
  35. package/esm/deps/jsr.io/@std/assert/1.0.6/not_match.js +26 -0
  36. package/esm/deps/jsr.io/@std/assert/1.0.6/not_strict_equals.d.ts +23 -0
  37. package/esm/deps/jsr.io/@std/assert/1.0.6/not_strict_equals.d.ts.map +1 -0
  38. package/esm/deps/jsr.io/@std/assert/1.0.6/not_strict_equals.js +32 -0
  39. package/esm/deps/jsr.io/@std/assert/1.0.6/object_match.d.ts +28 -0
  40. package/esm/deps/jsr.io/@std/assert/1.0.6/object_match.d.ts.map +1 -0
  41. package/esm/deps/jsr.io/@std/assert/1.0.6/object_match.js +159 -0
  42. package/esm/deps/jsr.io/@std/assert/1.0.6/rejects.d.ts +42 -0
  43. package/esm/deps/jsr.io/@std/assert/1.0.6/rejects.d.ts.map +1 -0
  44. package/esm/deps/jsr.io/@std/assert/1.0.6/rejects.js +53 -0
  45. package/esm/deps/jsr.io/@std/assert/1.0.6/strict_equals.d.ts +24 -0
  46. package/esm/deps/jsr.io/@std/assert/1.0.6/strict_equals.d.ts.map +1 -0
  47. package/esm/deps/jsr.io/@std/assert/1.0.6/strict_equals.js +57 -0
  48. package/esm/deps/jsr.io/@std/expect/1.0.5/_assert_equals.d.ts +20 -0
  49. package/esm/deps/jsr.io/@std/expect/1.0.5/_assert_equals.d.ts.map +1 -0
  50. package/esm/deps/jsr.io/@std/expect/1.0.5/_assert_equals.js +29 -0
  51. package/esm/deps/jsr.io/@std/expect/1.0.5/_assert_not_equals.d.ts +17 -0
  52. package/esm/deps/jsr.io/@std/expect/1.0.5/_assert_not_equals.d.ts.map +1 -0
  53. package/esm/deps/jsr.io/@std/expect/1.0.5/_assert_not_equals.js +26 -0
  54. package/esm/deps/jsr.io/@std/expect/1.0.5/_assertion.d.ts +3 -0
  55. package/esm/deps/jsr.io/@std/expect/1.0.5/_assertion.d.ts.map +1 -0
  56. package/esm/deps/jsr.io/@std/expect/1.0.5/_assertion.js +9 -0
  57. package/esm/deps/jsr.io/@std/expect/1.0.5/_asymmetric_matchers.d.ts +36 -0
  58. package/esm/deps/jsr.io/@std/expect/1.0.5/_asymmetric_matchers.d.ts.map +1 -0
  59. package/esm/deps/jsr.io/@std/expect/1.0.5/_asymmetric_matchers.js +124 -0
  60. package/esm/deps/jsr.io/@std/expect/1.0.5/_build_message.d.ts +6 -0
  61. package/esm/deps/jsr.io/@std/expect/1.0.5/_build_message.d.ts.map +1 -0
  62. package/esm/deps/jsr.io/@std/expect/1.0.5/_build_message.js +29 -0
  63. package/esm/deps/jsr.io/@std/expect/1.0.5/_custom_equality_tester.d.ts +4 -0
  64. package/esm/deps/jsr.io/@std/expect/1.0.5/_custom_equality_tester.d.ts.map +1 -0
  65. package/esm/deps/jsr.io/@std/expect/1.0.5/_custom_equality_tester.js +11 -0
  66. package/esm/deps/jsr.io/@std/expect/1.0.5/_equal.d.ts +9 -0
  67. package/esm/deps/jsr.io/@std/expect/1.0.5/_equal.d.ts.map +1 -0
  68. package/esm/deps/jsr.io/@std/expect/1.0.5/_equal.js +191 -0
  69. package/esm/deps/jsr.io/@std/expect/1.0.5/_extend.d.ts +4 -0
  70. package/esm/deps/jsr.io/@std/expect/1.0.5/_extend.d.ts.map +1 -0
  71. package/esm/deps/jsr.io/@std/expect/1.0.5/_extend.js +11 -0
  72. package/esm/deps/jsr.io/@std/expect/1.0.5/_inspect_args.d.ts +3 -0
  73. package/esm/deps/jsr.io/@std/expect/1.0.5/_inspect_args.d.ts.map +1 -0
  74. package/esm/deps/jsr.io/@std/expect/1.0.5/_inspect_args.js +12 -0
  75. package/esm/deps/jsr.io/@std/expect/1.0.5/_matchers.d.ts +34 -0
  76. package/esm/deps/jsr.io/@std/expect/1.0.5/_matchers.d.ts.map +1 -0
  77. package/esm/deps/jsr.io/@std/expect/1.0.5/_matchers.js +564 -0
  78. package/esm/deps/jsr.io/@std/expect/1.0.5/_mock_util.d.ts +11 -0
  79. package/esm/deps/jsr.io/@std/expect/1.0.5/_mock_util.d.ts.map +1 -0
  80. package/esm/deps/jsr.io/@std/expect/1.0.5/_mock_util.js +10 -0
  81. package/esm/deps/jsr.io/@std/expect/1.0.5/_types.d.ts +838 -0
  82. package/esm/deps/jsr.io/@std/expect/1.0.5/_types.d.ts.map +1 -0
  83. package/esm/deps/jsr.io/@std/expect/1.0.5/_types.js +3 -0
  84. package/esm/deps/jsr.io/@std/expect/1.0.5/_utils.d.ts +8 -0
  85. package/esm/deps/jsr.io/@std/expect/1.0.5/_utils.d.ts.map +1 -0
  86. package/esm/deps/jsr.io/@std/expect/1.0.5/_utils.js +159 -0
  87. package/esm/deps/jsr.io/@std/expect/1.0.5/expect.d.ts +51 -0
  88. package/esm/deps/jsr.io/@std/expect/1.0.5/expect.d.ts.map +1 -0
  89. package/esm/deps/jsr.io/@std/expect/1.0.5/expect.js +425 -0
  90. package/esm/deps/jsr.io/@std/expect/1.0.5/fn.d.ts +29 -0
  91. package/esm/deps/jsr.io/@std/expect/1.0.5/fn.d.ts.map +1 -0
  92. package/esm/deps/jsr.io/@std/expect/1.0.5/fn.js +85 -0
  93. package/esm/deps/jsr.io/@std/expect/1.0.5/mod.d.ts +85 -0
  94. package/esm/deps/jsr.io/@std/expect/1.0.5/mod.d.ts.map +1 -0
  95. package/esm/deps/jsr.io/@std/expect/1.0.5/mod.js +87 -0
  96. package/esm/deps/jsr.io/@std/internal/1.0.4/assertion_state.d.ts +75 -0
  97. package/esm/deps/jsr.io/@std/internal/1.0.4/assertion_state.d.ts.map +1 -0
  98. package/esm/deps/jsr.io/@std/internal/1.0.4/assertion_state.js +101 -0
  99. package/esm/deps/jsr.io/@std/internal/1.0.4/build_message.d.ts +82 -0
  100. package/esm/deps/jsr.io/@std/internal/1.0.4/build_message.d.ts.map +1 -0
  101. package/esm/deps/jsr.io/@std/internal/1.0.4/build_message.js +111 -0
  102. package/esm/deps/jsr.io/@std/internal/1.0.4/diff.d.ts +140 -0
  103. package/esm/deps/jsr.io/@std/internal/1.0.4/diff.d.ts.map +1 -0
  104. package/esm/deps/jsr.io/@std/internal/1.0.4/diff.js +277 -0
  105. package/esm/deps/jsr.io/@std/internal/1.0.4/diff_str.d.ts +99 -0
  106. package/esm/deps/jsr.io/@std/internal/1.0.4/diff_str.d.ts.map +1 -0
  107. package/esm/deps/jsr.io/@std/internal/1.0.4/diff_str.js +180 -0
  108. package/esm/deps/jsr.io/@std/internal/1.0.4/format.d.ts +2 -0
  109. package/esm/deps/jsr.io/@std/internal/1.0.4/format.d.ts.map +1 -0
  110. package/esm/deps/jsr.io/@std/internal/1.0.4/format.js +37 -0
  111. package/esm/deps/jsr.io/@std/internal/1.0.4/styles.d.ts +159 -0
  112. package/esm/deps/jsr.io/@std/internal/1.0.4/styles.d.ts.map +1 -0
  113. package/esm/deps/jsr.io/@std/internal/1.0.4/styles.js +207 -0
  114. package/esm/deps/jsr.io/@std/internal/1.0.4/types.d.ts +16 -0
  115. package/esm/deps/jsr.io/@std/internal/1.0.4/types.d.ts.map +1 -0
  116. package/esm/deps/jsr.io/@std/internal/1.0.4/types.js +2 -0
  117. package/esm/deps/jsr.io/@std/testing/1.0.3/_test_suite.d.ts +74 -0
  118. package/esm/deps/jsr.io/@std/testing/1.0.3/_test_suite.d.ts.map +1 -0
  119. package/esm/deps/jsr.io/@std/testing/1.0.3/_test_suite.js +340 -0
  120. package/esm/deps/jsr.io/@std/testing/1.0.3/bdd.d.ts +731 -0
  121. package/esm/deps/jsr.io/@std/testing/1.0.3/bdd.d.ts.map +1 -0
  122. package/esm/deps/jsr.io/@std/testing/1.0.3/bdd.js +576 -0
  123. package/esm/deps/jsr.io/@std/testing/1.0.3/mock.d.ts +674 -0
  124. package/esm/deps/jsr.io/@std/testing/1.0.3/mock.d.ts.map +1 -0
  125. package/esm/deps/jsr.io/@std/testing/1.0.3/mock.js +1117 -0
  126. package/esm/mod.d.ts +8 -0
  127. package/esm/mod.d.ts.map +1 -0
  128. package/esm/mod.js +7 -0
  129. package/esm/src/assets.d.ts.map +1 -0
  130. package/esm/src/assets.js +6 -0
  131. package/esm/src/ast/_index.d.ts +39 -0
  132. package/esm/src/ast/_index.d.ts.map +1 -0
  133. package/esm/src/ast/_index.js +36 -0
  134. package/esm/src/ast/common.d.ts.map +1 -0
  135. package/esm/src/ast/index.d.ts.map +1 -0
  136. package/esm/src/ast/node.d.ts.map +1 -0
  137. package/esm/src/ast/nodes/argument.d.ts +19 -0
  138. package/esm/src/ast/nodes/argument.d.ts.map +1 -0
  139. package/esm/src/ast/nodes/argument.test.d.ts +2 -0
  140. package/esm/src/ast/nodes/argument.test.d.ts.map +1 -0
  141. package/esm/src/ast/nodes/argument.test.js +34 -0
  142. package/esm/src/ast/nodes/array-type.d.ts +21 -0
  143. package/esm/src/ast/nodes/array-type.d.ts.map +1 -0
  144. package/esm/src/ast/nodes/array-type.test.d.ts +2 -0
  145. package/esm/src/ast/nodes/array-type.test.d.ts.map +1 -0
  146. package/esm/src/ast/nodes/array-type.test.js +26 -0
  147. package/esm/src/ast/nodes/arrow-function.d.ts +31 -0
  148. package/esm/src/ast/nodes/arrow-function.d.ts.map +1 -0
  149. package/esm/src/ast/nodes/arrow-function.js +83 -0
  150. package/esm/src/ast/nodes/arrow-function.test.d.ts +2 -0
  151. package/esm/src/ast/nodes/arrow-function.test.d.ts.map +1 -0
  152. package/esm/src/ast/nodes/arrow-function.test.js +62 -0
  153. package/esm/src/ast/nodes/call.d.ts +22 -0
  154. package/esm/src/ast/nodes/call.d.ts.map +1 -0
  155. package/esm/src/ast/nodes/call.js +34 -0
  156. package/esm/src/ast/nodes/class.d.ts +43 -0
  157. package/esm/src/ast/nodes/class.d.ts.map +1 -0
  158. package/esm/src/ast/nodes/class.js +120 -0
  159. package/esm/src/ast/nodes/class.test.d.ts +2 -0
  160. package/esm/src/ast/nodes/class.test.d.ts.map +1 -0
  161. package/esm/src/ast/nodes/class.test.js +150 -0
  162. package/esm/src/ast/nodes/constructor-parameter.d.ts +21 -0
  163. package/esm/src/ast/nodes/constructor-parameter.d.ts.map +1 -0
  164. package/esm/src/ast/nodes/constructor-parameter.js +55 -0
  165. package/esm/src/ast/nodes/constructor-parameter.test.d.ts +2 -0
  166. package/esm/src/ast/nodes/constructor-parameter.test.d.ts.map +1 -0
  167. package/esm/src/ast/nodes/constructor-parameter.test.js +99 -0
  168. package/esm/src/ast/nodes/constructor.d.ts +27 -0
  169. package/esm/src/ast/nodes/constructor.d.ts.map +1 -0
  170. package/esm/src/ast/nodes/constructor.js +62 -0
  171. package/esm/src/ast/nodes/constructor.test.d.ts +2 -0
  172. package/esm/src/ast/nodes/constructor.test.d.ts.map +1 -0
  173. package/esm/src/ast/nodes/constructor.test.js +102 -0
  174. package/esm/src/ast/nodes/decorator.d.ts +25 -0
  175. package/esm/src/ast/nodes/decorator.d.ts.map +1 -0
  176. package/esm/src/ast/nodes/decorator.js +46 -0
  177. package/esm/src/ast/nodes/decorator.test.d.ts +2 -0
  178. package/esm/src/ast/nodes/decorator.test.d.ts.map +1 -0
  179. package/esm/src/ast/nodes/decorator.test.js +47 -0
  180. package/esm/src/ast/nodes/doc-tag.d.ts +74 -0
  181. package/esm/src/ast/nodes/doc-tag.d.ts.map +1 -0
  182. package/esm/src/ast/nodes/doc-tag.js +79 -0
  183. package/esm/src/ast/nodes/doc-tag.test.d.ts +2 -0
  184. package/esm/src/ast/nodes/doc-tag.test.d.ts.map +1 -0
  185. package/esm/src/ast/nodes/doc-tag.test.js +30 -0
  186. package/esm/src/ast/nodes/doc.d.ts +30 -0
  187. package/esm/src/ast/nodes/doc.d.ts.map +1 -0
  188. package/esm/src/ast/nodes/doc.js +65 -0
  189. package/esm/src/ast/nodes/doc.test.d.ts +2 -0
  190. package/esm/src/ast/nodes/doc.test.d.ts.map +1 -0
  191. package/esm/src/ast/nodes/doc.test.js +31 -0
  192. package/esm/src/ast/nodes/enum-value.d.ts +24 -0
  193. package/esm/src/ast/nodes/enum-value.d.ts.map +1 -0
  194. package/esm/src/ast/nodes/enum-value.test.d.ts +2 -0
  195. package/esm/src/ast/nodes/enum-value.test.d.ts.map +1 -0
  196. package/esm/src/ast/nodes/enum-value.test.js +52 -0
  197. package/esm/src/ast/nodes/enum.d.ts +28 -0
  198. package/esm/src/ast/nodes/enum.d.ts.map +1 -0
  199. package/esm/src/ast/nodes/enum.js +72 -0
  200. package/esm/src/ast/nodes/enum.test.d.ts +2 -0
  201. package/esm/src/ast/nodes/enum.test.d.ts.map +1 -0
  202. package/esm/src/ast/nodes/enum.test.js +66 -0
  203. package/esm/src/ast/nodes/export.d.ts +23 -0
  204. package/esm/src/ast/nodes/export.d.ts.map +1 -0
  205. package/esm/src/ast/nodes/export.test.d.ts +2 -0
  206. package/esm/src/ast/nodes/export.test.d.ts.map +1 -0
  207. package/esm/src/ast/nodes/export.test.js +22 -0
  208. package/esm/src/ast/nodes/function-type.d.ts +25 -0
  209. package/esm/src/ast/nodes/function-type.d.ts.map +1 -0
  210. package/esm/src/ast/nodes/function-type.js +49 -0
  211. package/esm/src/ast/nodes/function-type.test.d.ts +2 -0
  212. package/esm/src/ast/nodes/function-type.test.d.ts.map +1 -0
  213. package/esm/src/ast/nodes/function-type.test.js +48 -0
  214. package/esm/src/ast/nodes/function.d.ts +37 -0
  215. package/esm/src/ast/nodes/function.d.ts.map +1 -0
  216. package/esm/src/ast/nodes/function.js +104 -0
  217. package/esm/src/ast/nodes/function.test.d.ts +2 -0
  218. package/esm/src/ast/nodes/function.test.d.ts.map +1 -0
  219. package/esm/src/ast/nodes/function.test.js +108 -0
  220. package/esm/src/ast/nodes/generic-parameter.d.ts +27 -0
  221. package/esm/src/ast/nodes/generic-parameter.d.ts.map +1 -0
  222. package/esm/src/ast/nodes/generic-parameter.js +67 -0
  223. package/esm/src/ast/nodes/generic-parameter.test.d.ts +2 -0
  224. package/esm/src/ast/nodes/generic-parameter.test.d.ts.map +1 -0
  225. package/esm/src/ast/nodes/generic-parameter.test.js +70 -0
  226. package/esm/src/ast/nodes/indexer.d.ts +25 -0
  227. package/esm/src/ast/nodes/indexer.d.ts.map +1 -0
  228. package/esm/src/ast/nodes/indexer.test.d.ts +2 -0
  229. package/esm/src/ast/nodes/indexer.test.d.ts.map +1 -0
  230. package/esm/src/ast/nodes/indexer.test.js +32 -0
  231. package/esm/src/ast/nodes/interface.d.ts +38 -0
  232. package/esm/src/ast/nodes/interface.d.ts.map +1 -0
  233. package/esm/src/ast/nodes/interface.js +98 -0
  234. package/esm/src/ast/nodes/interface.test.d.ts +2 -0
  235. package/esm/src/ast/nodes/interface.test.d.ts.map +1 -0
  236. package/esm/src/ast/nodes/interface.test.js +115 -0
  237. package/esm/src/ast/nodes/intersection-type.d.ts +19 -0
  238. package/esm/src/ast/nodes/intersection-type.d.ts.map +1 -0
  239. package/esm/src/ast/nodes/intersection-type.test.d.ts +2 -0
  240. package/esm/src/ast/nodes/intersection-type.test.d.ts.map +1 -0
  241. package/esm/src/ast/nodes/intersection-type.test.js +38 -0
  242. package/esm/src/ast/nodes/lookup-type.d.ts +21 -0
  243. package/esm/src/ast/nodes/lookup-type.d.ts.map +1 -0
  244. package/esm/src/ast/nodes/method.d.ts +48 -0
  245. package/esm/src/ast/nodes/method.d.ts.map +1 -0
  246. package/esm/src/ast/nodes/method.js +158 -0
  247. package/esm/src/ast/nodes/method.test.d.ts +2 -0
  248. package/esm/src/ast/nodes/method.test.d.ts.map +1 -0
  249. package/esm/src/ast/nodes/method.test.js +148 -0
  250. package/esm/src/ast/nodes/object-type.d.ts +22 -0
  251. package/esm/src/ast/nodes/object-type.d.ts.map +1 -0
  252. package/esm/src/ast/nodes/object-type.test.d.ts +2 -0
  253. package/esm/src/ast/nodes/object-type.test.d.ts.map +1 -0
  254. package/esm/src/ast/nodes/object-type.test.js +30 -0
  255. package/esm/src/ast/nodes/object.d.ts +21 -0
  256. package/esm/src/ast/nodes/object.d.ts.map +1 -0
  257. package/esm/src/ast/nodes/object.test.d.ts +2 -0
  258. package/esm/src/ast/nodes/object.test.d.ts.map +1 -0
  259. package/esm/src/ast/nodes/object.test.js +30 -0
  260. package/esm/src/ast/nodes/parameter.d.ts +30 -0
  261. package/esm/src/ast/nodes/parameter.d.ts.map +1 -0
  262. package/esm/src/ast/nodes/parameter.js +77 -0
  263. package/esm/src/ast/nodes/parameter.test.d.ts +2 -0
  264. package/esm/src/ast/nodes/parameter.test.d.ts.map +1 -0
  265. package/esm/src/ast/nodes/parameter.test.js +71 -0
  266. package/esm/src/ast/nodes/property-accessor.d.ts +54 -0
  267. package/esm/src/ast/nodes/property-accessor.d.ts.map +1 -0
  268. package/esm/src/ast/nodes/property-accessor.js +181 -0
  269. package/esm/src/ast/nodes/property-accessor.test.d.ts +2 -0
  270. package/esm/src/ast/nodes/property-accessor.test.d.ts.map +1 -0
  271. package/esm/src/ast/nodes/property-accessor.test.js +102 -0
  272. package/esm/src/ast/nodes/property.d.ts +64 -0
  273. package/esm/src/ast/nodes/property.d.ts.map +1 -0
  274. package/esm/src/ast/nodes/property.js +189 -0
  275. package/esm/src/ast/nodes/property.test.d.ts +2 -0
  276. package/esm/src/ast/nodes/property.test.d.ts.map +1 -0
  277. package/esm/src/ast/nodes/property.test.js +89 -0
  278. package/esm/src/ast/nodes/reference.d.ts +64 -0
  279. package/esm/src/ast/nodes/reference.d.ts.map +1 -0
  280. package/esm/src/ast/nodes/reference.js +93 -0
  281. package/esm/src/ast/nodes/reference.test.d.ts +2 -0
  282. package/esm/src/ast/nodes/reference.test.d.ts.map +1 -0
  283. package/esm/src/ast/nodes/reference.test.js +31 -0
  284. package/esm/src/ast/nodes/string.d.ts +20 -0
  285. package/esm/src/ast/nodes/string.d.ts.map +1 -0
  286. package/esm/src/ast/nodes/string.test.d.ts +2 -0
  287. package/esm/src/ast/nodes/string.test.d.ts.map +1 -0
  288. package/esm/src/ast/nodes/string.test.js +28 -0
  289. package/esm/src/ast/nodes/tuple.d.ts +21 -0
  290. package/esm/src/ast/nodes/tuple.d.ts.map +1 -0
  291. package/esm/src/ast/nodes/tuple.test.d.ts +2 -0
  292. package/esm/src/ast/nodes/tuple.test.d.ts.map +1 -0
  293. package/esm/src/ast/nodes/tuple.test.js +33 -0
  294. package/esm/src/ast/nodes/type-alias.d.ts +29 -0
  295. package/esm/src/ast/nodes/type-alias.d.ts.map +1 -0
  296. package/esm/src/ast/nodes/type-alias.js +64 -0
  297. package/esm/src/ast/nodes/type-alias.test.d.ts +2 -0
  298. package/esm/src/ast/nodes/type-alias.test.d.ts.map +1 -0
  299. package/esm/src/ast/nodes/type-alias.test.js +27 -0
  300. package/esm/src/ast/nodes/typeof.d.ts +19 -0
  301. package/esm/src/ast/nodes/typeof.d.ts.map +1 -0
  302. package/esm/src/ast/nodes/types.d.ts +19 -0
  303. package/esm/src/ast/nodes/types.d.ts.map +1 -0
  304. package/esm/src/ast/nodes/union-type.d.ts +19 -0
  305. package/esm/src/ast/nodes/union-type.d.ts.map +1 -0
  306. package/esm/src/ast/nodes/union-type.test.d.ts +2 -0
  307. package/esm/src/ast/nodes/union-type.test.d.ts.map +1 -0
  308. package/esm/src/ast/nodes/union-type.test.js +38 -0
  309. package/esm/src/ast/nodes/variable.d.ts +30 -0
  310. package/esm/src/ast/nodes/variable.d.ts.map +1 -0
  311. package/esm/src/ast/nodes/variable.test.d.ts +2 -0
  312. package/esm/src/ast/nodes/variable.test.d.ts.map +1 -0
  313. package/esm/src/ast/nodes/variable.test.js +38 -0
  314. package/esm/src/ast/references/angular.d.ts +9 -0
  315. package/esm/src/ast/references/angular.d.ts.map +1 -0
  316. package/esm/src/ast/references/angular.js +12 -0
  317. package/esm/src/ast/references/easy-network-stub.d.ts +6 -0
  318. package/esm/src/ast/references/easy-network-stub.d.ts.map +1 -0
  319. package/esm/src/ast/references/easy-network-stub.js +9 -0
  320. package/esm/src/ast/references/index.d.ts +6 -0
  321. package/esm/src/ast/references/index.d.ts.map +1 -0
  322. package/esm/src/ast/references/index.js +5 -0
  323. package/esm/src/ast/references/k6.d.ts +5 -0
  324. package/esm/src/ast/references/k6.d.ts.map +1 -0
  325. package/esm/src/ast/references/rxjs.d.ts +7 -0
  326. package/esm/src/ast/references/rxjs.d.ts.map +1 -0
  327. package/esm/src/ast/references/typescript.d.ts +32 -0
  328. package/esm/src/ast/references/typescript.d.ts.map +1 -0
  329. package/esm/src/ast/utils/get-type-script-builder-options.d.ts.map +1 -0
  330. package/esm/src/ast/utils/to-ts-node.d.ts.map +1 -0
  331. package/esm/src/ast/utils/write-ts-generic-parameters.d.ts.map +1 -0
  332. package/esm/src/ast/utils/write-ts-members.d.ts.map +1 -0
  333. package/esm/src/ast/utils/write-ts-members.js +14 -0
  334. package/esm/src/ast/utils/write-ts-nodes.d.ts.map +1 -0
  335. package/esm/src/ast/utils/write-ts-parameters.d.ts.map +1 -0
  336. package/esm/src/common-results.d.ts.map +1 -0
  337. package/esm/src/config.d.ts.map +1 -0
  338. package/esm/src/file-builder.d.ts.map +1 -0
  339. package/esm/src/generators/file-generator.d.ts.map +1 -0
  340. package/esm/src/generators/index.d.ts.map +1 -0
  341. package/esm/src/generators/models/index.d.ts +4 -0
  342. package/esm/src/generators/models/index.d.ts.map +1 -0
  343. package/esm/src/generators/models/index.js +3 -0
  344. package/esm/src/generators/models/model-generator.d.ts +44 -0
  345. package/esm/src/generators/models/model-generator.d.ts.map +1 -0
  346. package/esm/src/generators/models/model-generator.js +366 -0
  347. package/esm/src/generators/models/models-generator.d.ts +23 -0
  348. package/esm/src/generators/models/models-generator.d.ts.map +1 -0
  349. package/esm/src/generators/models/models-generator.js +69 -0
  350. package/esm/src/generators/models/models.d.ts.map +1 -0
  351. package/esm/src/generators/services/angular-services/angular-service-generator.d.ts +39 -0
  352. package/esm/src/generators/services/angular-services/angular-service-generator.d.ts.map +1 -0
  353. package/esm/src/generators/services/angular-services/angular-service-generator.js +302 -0
  354. package/esm/src/generators/services/angular-services/angular-services-generator.d.ts +31 -0
  355. package/esm/src/generators/services/angular-services/angular-services-generator.d.ts.map +1 -0
  356. package/esm/src/generators/services/angular-services/angular-services-generator.js +213 -0
  357. package/esm/src/generators/services/angular-services/index.d.ts.map +1 -0
  358. package/esm/src/generators/services/angular-services/models.d.ts +142 -0
  359. package/esm/src/generators/services/angular-services/models.d.ts.map +1 -0
  360. package/esm/src/generators/services/angular-services/refs.d.ts +12 -0
  361. package/esm/src/generators/services/angular-services/refs.d.ts.map +1 -0
  362. package/esm/src/generators/services/easy-network-stub/easy-network-stub-generator.d.ts +33 -0
  363. package/esm/src/generators/services/easy-network-stub/easy-network-stub-generator.d.ts.map +1 -0
  364. package/esm/src/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts +28 -0
  365. package/esm/src/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts.map +1 -0
  366. package/esm/src/generators/services/easy-network-stub/easy-network-stubs-generator.js +132 -0
  367. package/esm/src/generators/services/easy-network-stub/index.d.ts.map +1 -0
  368. package/esm/src/generators/services/easy-network-stub/models.d.ts +78 -0
  369. package/esm/src/generators/services/easy-network-stub/models.d.ts.map +1 -0
  370. package/esm/src/generators/services/easy-network-stub/refs.d.ts +14 -0
  371. package/esm/src/generators/services/easy-network-stub/refs.d.ts.map +1 -0
  372. package/esm/src/generators/services/fetch-clients/fetch-client-generator.d.ts +33 -0
  373. package/esm/src/generators/services/fetch-clients/fetch-client-generator.d.ts.map +1 -0
  374. package/esm/src/generators/services/fetch-clients/fetch-client-generator.js +198 -0
  375. package/esm/src/generators/services/fetch-clients/fetch-clients-generator.d.ts +27 -0
  376. package/esm/src/generators/services/fetch-clients/fetch-clients-generator.d.ts.map +1 -0
  377. package/esm/src/generators/services/fetch-clients/fetch-clients-generator.js +105 -0
  378. package/esm/src/generators/services/fetch-clients/index.d.ts.map +1 -0
  379. package/esm/src/generators/services/fetch-clients/models.d.ts +84 -0
  380. package/esm/src/generators/services/fetch-clients/models.d.ts.map +1 -0
  381. package/esm/src/generators/services/fetch-clients/refs.d.ts +8 -0
  382. package/esm/src/generators/services/fetch-clients/refs.d.ts.map +1 -0
  383. package/esm/src/generators/services/k6-clients/index.d.ts.map +1 -0
  384. package/esm/src/generators/services/k6-clients/k6-client-generator.d.ts +40 -0
  385. package/esm/src/generators/services/k6-clients/k6-client-generator.d.ts.map +1 -0
  386. package/esm/src/generators/services/k6-clients/k6-client-generator.js +311 -0
  387. package/esm/src/generators/services/k6-clients/k6-clients-generator.d.ts +27 -0
  388. package/esm/src/generators/services/k6-clients/k6-clients-generator.d.ts.map +1 -0
  389. package/esm/src/generators/services/k6-clients/k6-clients-generator.js +109 -0
  390. package/esm/src/generators/services/k6-clients/models.d.ts +119 -0
  391. package/esm/src/generators/services/k6-clients/models.d.ts.map +1 -0
  392. package/esm/src/generators/services/k6-clients/refs.d.ts +7 -0
  393. package/esm/src/generators/services/k6-clients/refs.d.ts.map +1 -0
  394. package/esm/src/import-collection.d.ts.map +1 -0
  395. package/esm/src/import-collection.test.d.ts +2 -0
  396. package/esm/src/import-collection.test.d.ts.map +1 -0
  397. package/esm/src/import-collection.test.js +64 -0
  398. package/esm/src/utils.d.ts +8 -0
  399. package/esm/src/utils.d.ts.map +1 -0
  400. package/esm/tests/openapi-models.test.d.ts +2 -0
  401. package/esm/tests/openapi-models.test.d.ts.map +1 -0
  402. package/esm/tests/openapi-models.test.js +45 -0
  403. package/package.json +6 -6
  404. package/script/_dnt.test_polyfills.d.ts +18 -0
  405. package/script/_dnt.test_polyfills.d.ts.map +1 -0
  406. package/script/_dnt.test_polyfills.js +18 -0
  407. package/script/_dnt.test_shims.d.ts +6 -0
  408. package/script/_dnt.test_shims.d.ts.map +1 -0
  409. package/script/_dnt.test_shims.js +65 -0
  410. package/script/deps/jsr.io/@std/assert/1.0.6/assertion_error.d.ts +26 -0
  411. package/script/deps/jsr.io/@std/assert/1.0.6/assertion_error.d.ts.map +1 -0
  412. package/script/deps/jsr.io/@std/assert/1.0.6/assertion_error.js +34 -0
  413. package/script/deps/jsr.io/@std/assert/1.0.6/equal.d.ts +17 -0
  414. package/script/deps/jsr.io/@std/assert/1.0.6/equal.d.ts.map +1 -0
  415. package/script/deps/jsr.io/@std/assert/1.0.6/equal.js +139 -0
  416. package/script/deps/jsr.io/@std/assert/1.0.6/equals.d.ts +22 -0
  417. package/script/deps/jsr.io/@std/assert/1.0.6/equals.d.ts.map +1 -0
  418. package/script/deps/jsr.io/@std/assert/1.0.6/equals.js +48 -0
  419. package/script/deps/jsr.io/@std/assert/1.0.6/false.d.ts +18 -0
  420. package/script/deps/jsr.io/@std/assert/1.0.6/false.d.ts.map +1 -0
  421. package/script/deps/jsr.io/@std/assert/1.0.6/false.js +25 -0
  422. package/script/deps/jsr.io/@std/assert/1.0.6/instance_of.d.ts +23 -0
  423. package/script/deps/jsr.io/@std/assert/1.0.6/instance_of.d.ts.map +1 -0
  424. package/script/deps/jsr.io/@std/assert/1.0.6/instance_of.js +56 -0
  425. package/script/deps/jsr.io/@std/assert/1.0.6/is_error.d.ts +25 -0
  426. package/script/deps/jsr.io/@std/assert/1.0.6/is_error.d.ts.map +1 -0
  427. package/script/deps/jsr.io/@std/assert/1.0.6/is_error.js +57 -0
  428. package/script/deps/jsr.io/@std/assert/1.0.6/match.d.ts +18 -0
  429. package/script/deps/jsr.io/@std/assert/1.0.6/match.d.ts.map +1 -0
  430. package/script/deps/jsr.io/@std/assert/1.0.6/match.js +29 -0
  431. package/script/deps/jsr.io/@std/assert/1.0.6/not_instance_of.d.ts +20 -0
  432. package/script/deps/jsr.io/@std/assert/1.0.6/not_instance_of.d.ts.map +1 -0
  433. package/script/deps/jsr.io/@std/assert/1.0.6/not_instance_of.js +32 -0
  434. package/script/deps/jsr.io/@std/assert/1.0.6/not_match.d.ts +18 -0
  435. package/script/deps/jsr.io/@std/assert/1.0.6/not_match.d.ts.map +1 -0
  436. package/script/deps/jsr.io/@std/assert/1.0.6/not_match.js +29 -0
  437. package/script/deps/jsr.io/@std/assert/1.0.6/not_strict_equals.d.ts +23 -0
  438. package/script/deps/jsr.io/@std/assert/1.0.6/not_strict_equals.d.ts.map +1 -0
  439. package/script/deps/jsr.io/@std/assert/1.0.6/not_strict_equals.js +35 -0
  440. package/script/deps/jsr.io/@std/assert/1.0.6/object_match.d.ts +28 -0
  441. package/script/deps/jsr.io/@std/assert/1.0.6/object_match.d.ts.map +1 -0
  442. package/script/deps/jsr.io/@std/assert/1.0.6/object_match.js +162 -0
  443. package/script/deps/jsr.io/@std/assert/1.0.6/rejects.d.ts +42 -0
  444. package/script/deps/jsr.io/@std/assert/1.0.6/rejects.d.ts.map +1 -0
  445. package/script/deps/jsr.io/@std/assert/1.0.6/rejects.js +56 -0
  446. package/script/deps/jsr.io/@std/assert/1.0.6/strict_equals.d.ts +24 -0
  447. package/script/deps/jsr.io/@std/assert/1.0.6/strict_equals.d.ts.map +1 -0
  448. package/script/deps/jsr.io/@std/assert/1.0.6/strict_equals.js +60 -0
  449. package/script/deps/jsr.io/@std/expect/1.0.5/_assert_equals.d.ts +20 -0
  450. package/script/deps/jsr.io/@std/expect/1.0.5/_assert_equals.d.ts.map +1 -0
  451. package/script/deps/jsr.io/@std/expect/1.0.5/_assert_equals.js +32 -0
  452. package/script/deps/jsr.io/@std/expect/1.0.5/_assert_not_equals.d.ts +17 -0
  453. package/script/deps/jsr.io/@std/expect/1.0.5/_assert_not_equals.d.ts.map +1 -0
  454. package/script/deps/jsr.io/@std/expect/1.0.5/_assert_not_equals.js +29 -0
  455. package/script/deps/jsr.io/@std/expect/1.0.5/_assertion.d.ts +3 -0
  456. package/script/deps/jsr.io/@std/expect/1.0.5/_assertion.d.ts.map +1 -0
  457. package/script/deps/jsr.io/@std/expect/1.0.5/_assertion.js +13 -0
  458. package/script/deps/jsr.io/@std/expect/1.0.5/_asymmetric_matchers.d.ts +36 -0
  459. package/script/deps/jsr.io/@std/expect/1.0.5/_asymmetric_matchers.d.ts.map +1 -0
  460. package/script/deps/jsr.io/@std/expect/1.0.5/_asymmetric_matchers.js +140 -0
  461. package/script/deps/jsr.io/@std/expect/1.0.5/_build_message.d.ts +6 -0
  462. package/script/deps/jsr.io/@std/expect/1.0.5/_build_message.d.ts.map +1 -0
  463. package/script/deps/jsr.io/@std/expect/1.0.5/_build_message.js +33 -0
  464. package/script/deps/jsr.io/@std/expect/1.0.5/_custom_equality_tester.d.ts +4 -0
  465. package/script/deps/jsr.io/@std/expect/1.0.5/_custom_equality_tester.d.ts.map +1 -0
  466. package/script/deps/jsr.io/@std/expect/1.0.5/_custom_equality_tester.js +15 -0
  467. package/script/deps/jsr.io/@std/expect/1.0.5/_equal.d.ts +9 -0
  468. package/script/deps/jsr.io/@std/expect/1.0.5/_equal.d.ts.map +1 -0
  469. package/script/deps/jsr.io/@std/expect/1.0.5/_equal.js +194 -0
  470. package/script/deps/jsr.io/@std/expect/1.0.5/_extend.d.ts +4 -0
  471. package/script/deps/jsr.io/@std/expect/1.0.5/_extend.d.ts.map +1 -0
  472. package/script/deps/jsr.io/@std/expect/1.0.5/_extend.js +15 -0
  473. package/script/deps/jsr.io/@std/expect/1.0.5/_inspect_args.d.ts +3 -0
  474. package/script/deps/jsr.io/@std/expect/1.0.5/_inspect_args.d.ts.map +1 -0
  475. package/script/deps/jsr.io/@std/expect/1.0.5/_inspect_args.js +17 -0
  476. package/script/deps/jsr.io/@std/expect/1.0.5/_matchers.d.ts +34 -0
  477. package/script/deps/jsr.io/@std/expect/1.0.5/_matchers.d.ts.map +1 -0
  478. package/script/deps/jsr.io/@std/expect/1.0.5/_matchers.js +598 -0
  479. package/script/deps/jsr.io/@std/expect/1.0.5/_mock_util.d.ts +11 -0
  480. package/script/deps/jsr.io/@std/expect/1.0.5/_mock_util.d.ts.map +1 -0
  481. package/script/deps/jsr.io/@std/expect/1.0.5/_mock_util.js +14 -0
  482. package/script/deps/jsr.io/@std/expect/1.0.5/_types.d.ts +838 -0
  483. package/script/deps/jsr.io/@std/expect/1.0.5/_types.d.ts.map +1 -0
  484. package/script/deps/jsr.io/@std/expect/1.0.5/_types.js +4 -0
  485. package/script/deps/jsr.io/@std/expect/1.0.5/_utils.d.ts +8 -0
  486. package/script/deps/jsr.io/@std/expect/1.0.5/_utils.d.ts.map +1 -0
  487. package/script/deps/jsr.io/@std/expect/1.0.5/_utils.js +166 -0
  488. package/script/deps/jsr.io/@std/expect/1.0.5/expect.d.ts +51 -0
  489. package/script/deps/jsr.io/@std/expect/1.0.5/expect.d.ts.map +1 -0
  490. package/script/deps/jsr.io/@std/expect/1.0.5/expect.js +429 -0
  491. package/script/deps/jsr.io/@std/expect/1.0.5/fn.d.ts +29 -0
  492. package/script/deps/jsr.io/@std/expect/1.0.5/fn.d.ts.map +1 -0
  493. package/script/deps/jsr.io/@std/expect/1.0.5/fn.js +88 -0
  494. package/script/deps/jsr.io/@std/expect/1.0.5/mod.d.ts +85 -0
  495. package/script/deps/jsr.io/@std/expect/1.0.5/mod.d.ts.map +1 -0
  496. package/script/deps/jsr.io/@std/expect/1.0.5/mod.js +90 -0
  497. package/script/deps/jsr.io/@std/internal/1.0.4/assertion_state.d.ts +75 -0
  498. package/script/deps/jsr.io/@std/internal/1.0.4/assertion_state.d.ts.map +1 -0
  499. package/script/deps/jsr.io/@std/internal/1.0.4/assertion_state.js +106 -0
  500. package/script/deps/jsr.io/@std/internal/1.0.4/build_message.d.ts +82 -0
  501. package/script/deps/jsr.io/@std/internal/1.0.4/build_message.d.ts.map +1 -0
  502. package/script/deps/jsr.io/@std/internal/1.0.4/build_message.js +116 -0
  503. package/script/deps/jsr.io/@std/internal/1.0.4/diff.d.ts +140 -0
  504. package/script/deps/jsr.io/@std/internal/1.0.4/diff.d.ts.map +1 -0
  505. package/script/deps/jsr.io/@std/internal/1.0.4/diff.js +284 -0
  506. package/script/deps/jsr.io/@std/internal/1.0.4/diff_str.d.ts +99 -0
  507. package/script/deps/jsr.io/@std/internal/1.0.4/diff_str.d.ts.map +1 -0
  508. package/script/deps/jsr.io/@std/internal/1.0.4/diff_str.js +186 -0
  509. package/script/deps/jsr.io/@std/internal/1.0.4/format.d.ts +2 -0
  510. package/script/deps/jsr.io/@std/internal/1.0.4/format.d.ts.map +1 -0
  511. package/script/deps/jsr.io/@std/internal/1.0.4/format.js +41 -0
  512. package/script/deps/jsr.io/@std/internal/1.0.4/styles.d.ts +159 -0
  513. package/script/deps/jsr.io/@std/internal/1.0.4/styles.d.ts.map +1 -0
  514. package/script/deps/jsr.io/@std/internal/1.0.4/styles.js +220 -0
  515. package/script/deps/jsr.io/@std/internal/1.0.4/types.d.ts +16 -0
  516. package/script/deps/jsr.io/@std/internal/1.0.4/types.d.ts.map +1 -0
  517. package/script/deps/jsr.io/@std/internal/1.0.4/types.js +3 -0
  518. package/script/deps/jsr.io/@std/testing/1.0.3/_test_suite.d.ts +74 -0
  519. package/script/deps/jsr.io/@std/testing/1.0.3/_test_suite.d.ts.map +1 -0
  520. package/script/deps/jsr.io/@std/testing/1.0.3/_test_suite.js +345 -0
  521. package/script/deps/jsr.io/@std/testing/1.0.3/bdd.d.ts +731 -0
  522. package/script/deps/jsr.io/@std/testing/1.0.3/bdd.d.ts.map +1 -0
  523. package/script/deps/jsr.io/@std/testing/1.0.3/bdd.js +587 -0
  524. package/script/deps/jsr.io/@std/testing/1.0.3/mock.d.ts +674 -0
  525. package/script/deps/jsr.io/@std/testing/1.0.3/mock.d.ts.map +1 -0
  526. package/script/deps/jsr.io/@std/testing/1.0.3/mock.js +1136 -0
  527. package/script/mod.d.ts +8 -0
  528. package/script/mod.d.ts.map +1 -0
  529. package/script/mod.js +10 -0
  530. package/script/src/assets.d.ts.map +1 -0
  531. package/script/src/assets.js +9 -0
  532. package/script/src/ast/_index.d.ts +39 -0
  533. package/script/src/ast/_index.d.ts.map +1 -0
  534. package/script/src/ast/_index.js +108 -0
  535. package/script/src/ast/common.d.ts.map +1 -0
  536. package/script/src/ast/index.d.ts.map +1 -0
  537. package/script/src/ast/node.d.ts.map +1 -0
  538. package/script/src/ast/nodes/argument.d.ts +19 -0
  539. package/script/src/ast/nodes/argument.d.ts.map +1 -0
  540. package/script/src/ast/nodes/argument.test.d.ts +2 -0
  541. package/script/src/ast/nodes/argument.test.d.ts.map +1 -0
  542. package/script/src/ast/nodes/argument.test.js +36 -0
  543. package/script/src/ast/nodes/array-type.d.ts +21 -0
  544. package/script/src/ast/nodes/array-type.d.ts.map +1 -0
  545. package/script/src/ast/nodes/array-type.test.d.ts +2 -0
  546. package/script/src/ast/nodes/array-type.test.d.ts.map +1 -0
  547. package/script/src/ast/nodes/array-type.test.js +28 -0
  548. package/script/src/ast/nodes/arrow-function.d.ts +31 -0
  549. package/script/src/ast/nodes/arrow-function.d.ts.map +1 -0
  550. package/script/src/ast/nodes/arrow-function.js +87 -0
  551. package/script/src/ast/nodes/arrow-function.test.d.ts +2 -0
  552. package/script/src/ast/nodes/arrow-function.test.d.ts.map +1 -0
  553. package/script/src/ast/nodes/arrow-function.test.js +64 -0
  554. package/script/src/ast/nodes/call.d.ts +22 -0
  555. package/script/src/ast/nodes/call.d.ts.map +1 -0
  556. package/script/src/ast/nodes/call.js +38 -0
  557. package/script/src/ast/nodes/class.d.ts +43 -0
  558. package/script/src/ast/nodes/class.d.ts.map +1 -0
  559. package/script/src/ast/nodes/class.js +124 -0
  560. package/script/src/ast/nodes/class.test.d.ts +2 -0
  561. package/script/src/ast/nodes/class.test.d.ts.map +1 -0
  562. package/script/src/ast/nodes/class.test.js +152 -0
  563. package/script/src/ast/nodes/constructor-parameter.d.ts +21 -0
  564. package/script/src/ast/nodes/constructor-parameter.d.ts.map +1 -0
  565. package/script/src/ast/nodes/constructor-parameter.js +59 -0
  566. package/script/src/ast/nodes/constructor-parameter.test.d.ts +2 -0
  567. package/script/src/ast/nodes/constructor-parameter.test.d.ts.map +1 -0
  568. package/script/src/ast/nodes/constructor-parameter.test.js +101 -0
  569. package/script/src/ast/nodes/constructor.d.ts +27 -0
  570. package/script/src/ast/nodes/constructor.d.ts.map +1 -0
  571. package/script/src/ast/nodes/constructor.js +66 -0
  572. package/script/src/ast/nodes/constructor.test.d.ts +2 -0
  573. package/script/src/ast/nodes/constructor.test.d.ts.map +1 -0
  574. package/script/src/ast/nodes/constructor.test.js +104 -0
  575. package/script/src/ast/nodes/decorator.d.ts +25 -0
  576. package/script/src/ast/nodes/decorator.d.ts.map +1 -0
  577. package/script/src/ast/nodes/decorator.js +50 -0
  578. package/script/src/ast/nodes/decorator.test.d.ts +2 -0
  579. package/script/src/ast/nodes/decorator.test.d.ts.map +1 -0
  580. package/script/src/ast/nodes/decorator.test.js +49 -0
  581. package/script/src/ast/nodes/doc-tag.d.ts +74 -0
  582. package/script/src/ast/nodes/doc-tag.d.ts.map +1 -0
  583. package/script/src/ast/nodes/doc-tag.js +83 -0
  584. package/script/src/ast/nodes/doc-tag.test.d.ts +2 -0
  585. package/script/src/ast/nodes/doc-tag.test.d.ts.map +1 -0
  586. package/script/src/ast/nodes/doc-tag.test.js +32 -0
  587. package/script/src/ast/nodes/doc.d.ts +30 -0
  588. package/script/src/ast/nodes/doc.d.ts.map +1 -0
  589. package/script/src/ast/nodes/doc.js +69 -0
  590. package/script/src/ast/nodes/doc.test.d.ts +2 -0
  591. package/script/src/ast/nodes/doc.test.d.ts.map +1 -0
  592. package/script/src/ast/nodes/doc.test.js +33 -0
  593. package/script/src/ast/nodes/enum-value.d.ts +24 -0
  594. package/script/src/ast/nodes/enum-value.d.ts.map +1 -0
  595. package/script/src/ast/nodes/enum-value.test.d.ts +2 -0
  596. package/script/src/ast/nodes/enum-value.test.d.ts.map +1 -0
  597. package/script/src/ast/nodes/enum-value.test.js +54 -0
  598. package/script/src/ast/nodes/enum.d.ts +28 -0
  599. package/script/src/ast/nodes/enum.d.ts.map +1 -0
  600. package/script/src/ast/nodes/enum.js +76 -0
  601. package/script/src/ast/nodes/enum.test.d.ts +2 -0
  602. package/script/src/ast/nodes/enum.test.d.ts.map +1 -0
  603. package/script/src/ast/nodes/enum.test.js +68 -0
  604. package/script/src/ast/nodes/export.d.ts +23 -0
  605. package/script/src/ast/nodes/export.d.ts.map +1 -0
  606. package/script/src/ast/nodes/export.test.d.ts +2 -0
  607. package/script/src/ast/nodes/export.test.d.ts.map +1 -0
  608. package/script/src/ast/nodes/export.test.js +24 -0
  609. package/script/src/ast/nodes/function-type.d.ts +25 -0
  610. package/script/src/ast/nodes/function-type.d.ts.map +1 -0
  611. package/script/src/ast/nodes/function-type.js +53 -0
  612. package/script/src/ast/nodes/function-type.test.d.ts +2 -0
  613. package/script/src/ast/nodes/function-type.test.d.ts.map +1 -0
  614. package/script/src/ast/nodes/function-type.test.js +50 -0
  615. package/script/src/ast/nodes/function.d.ts +37 -0
  616. package/script/src/ast/nodes/function.d.ts.map +1 -0
  617. package/script/src/ast/nodes/function.js +108 -0
  618. package/script/src/ast/nodes/function.test.d.ts +2 -0
  619. package/script/src/ast/nodes/function.test.d.ts.map +1 -0
  620. package/script/src/ast/nodes/function.test.js +110 -0
  621. package/script/src/ast/nodes/generic-parameter.d.ts +27 -0
  622. package/script/src/ast/nodes/generic-parameter.d.ts.map +1 -0
  623. package/script/src/ast/nodes/generic-parameter.js +71 -0
  624. package/script/src/ast/nodes/generic-parameter.test.d.ts +2 -0
  625. package/script/src/ast/nodes/generic-parameter.test.d.ts.map +1 -0
  626. package/script/src/ast/nodes/generic-parameter.test.js +72 -0
  627. package/script/src/ast/nodes/indexer.d.ts +25 -0
  628. package/script/src/ast/nodes/indexer.d.ts.map +1 -0
  629. package/script/src/ast/nodes/indexer.test.d.ts +2 -0
  630. package/script/src/ast/nodes/indexer.test.d.ts.map +1 -0
  631. package/script/src/ast/nodes/indexer.test.js +34 -0
  632. package/script/src/ast/nodes/interface.d.ts +38 -0
  633. package/script/src/ast/nodes/interface.d.ts.map +1 -0
  634. package/script/src/ast/nodes/interface.js +102 -0
  635. package/script/src/ast/nodes/interface.test.d.ts +2 -0
  636. package/script/src/ast/nodes/interface.test.d.ts.map +1 -0
  637. package/script/src/ast/nodes/interface.test.js +117 -0
  638. package/script/src/ast/nodes/intersection-type.d.ts +19 -0
  639. package/script/src/ast/nodes/intersection-type.d.ts.map +1 -0
  640. package/script/src/ast/nodes/intersection-type.test.d.ts +2 -0
  641. package/script/src/ast/nodes/intersection-type.test.d.ts.map +1 -0
  642. package/script/src/ast/nodes/intersection-type.test.js +40 -0
  643. package/script/src/ast/nodes/lookup-type.d.ts +21 -0
  644. package/script/src/ast/nodes/lookup-type.d.ts.map +1 -0
  645. package/script/src/ast/nodes/method.d.ts +48 -0
  646. package/script/src/ast/nodes/method.d.ts.map +1 -0
  647. package/script/src/ast/nodes/method.js +163 -0
  648. package/script/src/ast/nodes/method.test.d.ts +2 -0
  649. package/script/src/ast/nodes/method.test.d.ts.map +1 -0
  650. package/script/src/ast/nodes/method.test.js +150 -0
  651. package/script/src/ast/nodes/object-type.d.ts +22 -0
  652. package/script/src/ast/nodes/object-type.d.ts.map +1 -0
  653. package/script/src/ast/nodes/object-type.test.d.ts +2 -0
  654. package/script/src/ast/nodes/object-type.test.d.ts.map +1 -0
  655. package/script/src/ast/nodes/object-type.test.js +32 -0
  656. package/script/src/ast/nodes/object.d.ts +21 -0
  657. package/script/src/ast/nodes/object.d.ts.map +1 -0
  658. package/script/src/ast/nodes/object.test.d.ts +2 -0
  659. package/script/src/ast/nodes/object.test.d.ts.map +1 -0
  660. package/script/src/ast/nodes/object.test.js +32 -0
  661. package/script/src/ast/nodes/parameter.d.ts +30 -0
  662. package/script/src/ast/nodes/parameter.d.ts.map +1 -0
  663. package/script/src/ast/nodes/parameter.js +81 -0
  664. package/script/src/ast/nodes/parameter.test.d.ts +2 -0
  665. package/script/src/ast/nodes/parameter.test.d.ts.map +1 -0
  666. package/script/src/ast/nodes/parameter.test.js +73 -0
  667. package/script/src/ast/nodes/property-accessor.d.ts +54 -0
  668. package/script/src/ast/nodes/property-accessor.d.ts.map +1 -0
  669. package/script/src/ast/nodes/property-accessor.js +188 -0
  670. package/script/src/ast/nodes/property-accessor.test.d.ts +2 -0
  671. package/script/src/ast/nodes/property-accessor.test.d.ts.map +1 -0
  672. package/script/src/ast/nodes/property-accessor.test.js +104 -0
  673. package/script/src/ast/nodes/property.d.ts +64 -0
  674. package/script/src/ast/nodes/property.d.ts.map +1 -0
  675. package/script/src/ast/nodes/property.js +195 -0
  676. package/script/src/ast/nodes/property.test.d.ts +2 -0
  677. package/script/src/ast/nodes/property.test.d.ts.map +1 -0
  678. package/script/src/ast/nodes/property.test.js +91 -0
  679. package/script/src/ast/nodes/reference.d.ts +64 -0
  680. package/script/src/ast/nodes/reference.d.ts.map +1 -0
  681. package/script/src/ast/nodes/reference.js +97 -0
  682. package/script/src/ast/nodes/reference.test.d.ts +2 -0
  683. package/script/src/ast/nodes/reference.test.d.ts.map +1 -0
  684. package/script/src/ast/nodes/reference.test.js +33 -0
  685. package/script/src/ast/nodes/string.d.ts +20 -0
  686. package/script/src/ast/nodes/string.d.ts.map +1 -0
  687. package/script/src/ast/nodes/string.test.d.ts +2 -0
  688. package/script/src/ast/nodes/string.test.d.ts.map +1 -0
  689. package/script/src/ast/nodes/string.test.js +30 -0
  690. package/script/src/ast/nodes/tuple.d.ts +21 -0
  691. package/script/src/ast/nodes/tuple.d.ts.map +1 -0
  692. package/script/src/ast/nodes/tuple.test.d.ts +2 -0
  693. package/script/src/ast/nodes/tuple.test.d.ts.map +1 -0
  694. package/script/src/ast/nodes/tuple.test.js +35 -0
  695. package/script/src/ast/nodes/type-alias.d.ts +29 -0
  696. package/script/src/ast/nodes/type-alias.d.ts.map +1 -0
  697. package/script/src/ast/nodes/type-alias.js +68 -0
  698. package/script/src/ast/nodes/type-alias.test.d.ts +2 -0
  699. package/script/src/ast/nodes/type-alias.test.d.ts.map +1 -0
  700. package/script/src/ast/nodes/type-alias.test.js +29 -0
  701. package/script/src/ast/nodes/typeof.d.ts +19 -0
  702. package/script/src/ast/nodes/typeof.d.ts.map +1 -0
  703. package/script/src/ast/nodes/types.d.ts +19 -0
  704. package/script/src/ast/nodes/types.d.ts.map +1 -0
  705. package/script/src/ast/nodes/union-type.d.ts +19 -0
  706. package/script/src/ast/nodes/union-type.d.ts.map +1 -0
  707. package/script/src/ast/nodes/union-type.test.d.ts +2 -0
  708. package/script/src/ast/nodes/union-type.test.d.ts.map +1 -0
  709. package/script/src/ast/nodes/union-type.test.js +40 -0
  710. package/script/src/ast/nodes/variable.d.ts +30 -0
  711. package/script/src/ast/nodes/variable.d.ts.map +1 -0
  712. package/script/src/ast/nodes/variable.test.d.ts +2 -0
  713. package/script/src/ast/nodes/variable.test.d.ts.map +1 -0
  714. package/script/src/ast/nodes/variable.test.js +40 -0
  715. package/script/src/ast/references/angular.d.ts +9 -0
  716. package/script/src/ast/references/angular.d.ts.map +1 -0
  717. package/script/src/ast/references/angular.js +15 -0
  718. package/script/src/ast/references/easy-network-stub.d.ts +6 -0
  719. package/script/src/ast/references/easy-network-stub.d.ts.map +1 -0
  720. package/script/src/ast/references/easy-network-stub.js +12 -0
  721. package/script/src/ast/references/index.d.ts +6 -0
  722. package/script/src/ast/references/index.d.ts.map +1 -0
  723. package/script/src/ast/references/index.js +9 -0
  724. package/script/src/ast/references/k6.d.ts +5 -0
  725. package/script/src/ast/references/k6.d.ts.map +1 -0
  726. package/script/src/ast/references/rxjs.d.ts +7 -0
  727. package/script/src/ast/references/rxjs.d.ts.map +1 -0
  728. package/script/src/ast/references/typescript.d.ts +32 -0
  729. package/script/src/ast/references/typescript.d.ts.map +1 -0
  730. package/script/src/ast/utils/get-type-script-builder-options.d.ts.map +1 -0
  731. package/script/src/ast/utils/to-ts-node.d.ts.map +1 -0
  732. package/script/src/ast/utils/write-ts-generic-parameters.d.ts.map +1 -0
  733. package/script/src/ast/utils/write-ts-members.d.ts.map +1 -0
  734. package/script/src/ast/utils/write-ts-members.js +17 -0
  735. package/script/src/ast/utils/write-ts-nodes.d.ts.map +1 -0
  736. package/script/src/ast/utils/write-ts-parameters.d.ts.map +1 -0
  737. package/script/src/common-results.d.ts.map +1 -0
  738. package/script/src/config.d.ts.map +1 -0
  739. package/script/src/file-builder.d.ts.map +1 -0
  740. package/script/src/generators/file-generator.d.ts.map +1 -0
  741. package/script/src/generators/index.d.ts.map +1 -0
  742. package/script/src/generators/models/index.d.ts +4 -0
  743. package/script/src/generators/models/index.d.ts.map +1 -0
  744. package/script/src/generators/models/index.js +6 -0
  745. package/script/src/generators/models/model-generator.d.ts +44 -0
  746. package/script/src/generators/models/model-generator.d.ts.map +1 -0
  747. package/script/src/generators/models/model-generator.js +370 -0
  748. package/script/src/generators/models/models-generator.d.ts +23 -0
  749. package/script/src/generators/models/models-generator.d.ts.map +1 -0
  750. package/script/src/generators/models/models-generator.js +73 -0
  751. package/script/src/generators/models/models.d.ts.map +1 -0
  752. package/script/src/generators/services/angular-services/angular-service-generator.d.ts +39 -0
  753. package/script/src/generators/services/angular-services/angular-service-generator.d.ts.map +1 -0
  754. package/script/src/generators/services/angular-services/angular-service-generator.js +306 -0
  755. package/script/src/generators/services/angular-services/angular-services-generator.d.ts +31 -0
  756. package/script/src/generators/services/angular-services/angular-services-generator.d.ts.map +1 -0
  757. package/script/src/generators/services/angular-services/angular-services-generator.js +218 -0
  758. package/script/src/generators/services/angular-services/index.d.ts.map +1 -0
  759. package/script/src/generators/services/angular-services/models.d.ts +142 -0
  760. package/script/src/generators/services/angular-services/models.d.ts.map +1 -0
  761. package/script/src/generators/services/angular-services/refs.d.ts +12 -0
  762. package/script/src/generators/services/angular-services/refs.d.ts.map +1 -0
  763. package/script/src/generators/services/easy-network-stub/easy-network-stub-generator.d.ts +33 -0
  764. package/script/src/generators/services/easy-network-stub/easy-network-stub-generator.d.ts.map +1 -0
  765. package/script/src/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts +28 -0
  766. package/script/src/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts.map +1 -0
  767. package/script/src/generators/services/easy-network-stub/easy-network-stubs-generator.js +137 -0
  768. package/script/src/generators/services/easy-network-stub/index.d.ts.map +1 -0
  769. package/script/src/generators/services/easy-network-stub/models.d.ts +78 -0
  770. package/script/src/generators/services/easy-network-stub/models.d.ts.map +1 -0
  771. package/script/src/generators/services/easy-network-stub/refs.d.ts +14 -0
  772. package/script/src/generators/services/easy-network-stub/refs.d.ts.map +1 -0
  773. package/script/src/generators/services/fetch-clients/fetch-client-generator.d.ts +33 -0
  774. package/script/src/generators/services/fetch-clients/fetch-client-generator.d.ts.map +1 -0
  775. package/script/src/generators/services/fetch-clients/fetch-client-generator.js +202 -0
  776. package/script/src/generators/services/fetch-clients/fetch-clients-generator.d.ts +27 -0
  777. package/script/src/generators/services/fetch-clients/fetch-clients-generator.d.ts.map +1 -0
  778. package/script/src/generators/services/fetch-clients/fetch-clients-generator.js +110 -0
  779. package/script/src/generators/services/fetch-clients/index.d.ts.map +1 -0
  780. package/script/src/generators/services/fetch-clients/models.d.ts +84 -0
  781. package/script/src/generators/services/fetch-clients/models.d.ts.map +1 -0
  782. package/script/src/generators/services/fetch-clients/refs.d.ts +8 -0
  783. package/script/src/generators/services/fetch-clients/refs.d.ts.map +1 -0
  784. package/script/src/generators/services/k6-clients/index.d.ts.map +1 -0
  785. package/script/src/generators/services/k6-clients/k6-client-generator.d.ts +40 -0
  786. package/script/src/generators/services/k6-clients/k6-client-generator.d.ts.map +1 -0
  787. package/script/src/generators/services/k6-clients/k6-client-generator.js +315 -0
  788. package/script/src/generators/services/k6-clients/k6-clients-generator.d.ts +27 -0
  789. package/script/src/generators/services/k6-clients/k6-clients-generator.d.ts.map +1 -0
  790. package/script/src/generators/services/k6-clients/k6-clients-generator.js +114 -0
  791. package/script/src/generators/services/k6-clients/models.d.ts +119 -0
  792. package/script/src/generators/services/k6-clients/models.d.ts.map +1 -0
  793. package/script/src/generators/services/k6-clients/refs.d.ts +7 -0
  794. package/script/src/generators/services/k6-clients/refs.d.ts.map +1 -0
  795. package/script/src/import-collection.d.ts.map +1 -0
  796. package/script/src/import-collection.test.d.ts +2 -0
  797. package/script/src/import-collection.test.d.ts.map +1 -0
  798. package/script/src/import-collection.test.js +66 -0
  799. package/script/src/utils.d.ts +8 -0
  800. package/script/src/utils.d.ts.map +1 -0
  801. package/script/tests/openapi-models.test.d.ts +2 -0
  802. package/script/tests/openapi-models.test.d.ts.map +1 -0
  803. package/script/tests/openapi-models.test.js +48 -0
  804. package/src/_dnt.test_polyfills.ts +43 -0
  805. package/src/_dnt.test_shims.ts +64 -0
  806. package/src/deps/jsr.io/@std/assert/1.0.6/assertion_error.ts +31 -0
  807. package/src/deps/jsr.io/@std/assert/1.0.6/equal.ts +152 -0
  808. package/src/deps/jsr.io/@std/assert/1.0.6/equals.ts +52 -0
  809. package/src/deps/jsr.io/@std/assert/1.0.6/false.ts +26 -0
  810. package/src/deps/jsr.io/@std/assert/1.0.6/instance_of.ts +64 -0
  811. package/src/deps/jsr.io/@std/assert/1.0.6/is_error.ts +65 -0
  812. package/src/deps/jsr.io/@std/assert/1.0.6/match.ts +30 -0
  813. package/src/deps/jsr.io/@std/assert/1.0.6/not_instance_of.ts +33 -0
  814. package/src/deps/jsr.io/@std/assert/1.0.6/not_match.ts +30 -0
  815. package/src/deps/jsr.io/@std/assert/1.0.6/not_strict_equals.ts +42 -0
  816. package/src/deps/jsr.io/@std/assert/1.0.6/object_match.ts +202 -0
  817. package/src/deps/jsr.io/@std/assert/1.0.6/rejects.ts +123 -0
  818. package/src/deps/jsr.io/@std/assert/1.0.6/strict_equals.ts +67 -0
  819. package/src/deps/jsr.io/@std/expect/1.0.5/_assert_equals.ts +38 -0
  820. package/src/deps/jsr.io/@std/expect/1.0.5/_assert_not_equals.ts +35 -0
  821. package/src/deps/jsr.io/@std/expect/1.0.5/_assertion.ts +13 -0
  822. package/src/deps/jsr.io/@std/expect/1.0.5/_asymmetric_matchers.ts +147 -0
  823. package/src/deps/jsr.io/@std/expect/1.0.5/_build_message.ts +51 -0
  824. package/src/deps/jsr.io/@std/expect/1.0.5/_custom_equality_tester.ts +19 -0
  825. package/src/deps/jsr.io/@std/expect/1.0.5/_equal.ts +229 -0
  826. package/src/deps/jsr.io/@std/expect/1.0.5/_extend.ts +16 -0
  827. package/src/deps/jsr.io/@std/expect/1.0.5/_inspect_args.ts +15 -0
  828. package/src/deps/jsr.io/@std/expect/1.0.5/_matchers.ts +828 -0
  829. package/src/deps/jsr.io/@std/expect/1.0.5/_mock_util.ts +22 -0
  830. package/src/deps/jsr.io/@std/expect/1.0.5/_types.ts +917 -0
  831. package/src/deps/jsr.io/@std/expect/1.0.5/_utils.ts +201 -0
  832. package/src/deps/jsr.io/@std/expect/1.0.5/expect.ts +511 -0
  833. package/src/deps/jsr.io/@std/expect/1.0.5/fn.ts +91 -0
  834. package/src/deps/jsr.io/@std/expect/1.0.5/mod.ts +88 -0
  835. package/src/deps/jsr.io/@std/internal/1.0.4/assertion_state.ts +111 -0
  836. package/src/deps/jsr.io/@std/internal/1.0.4/build_message.ts +134 -0
  837. package/src/deps/jsr.io/@std/internal/1.0.4/diff.ts +317 -0
  838. package/src/deps/jsr.io/@std/internal/1.0.4/diff_str.ts +204 -0
  839. package/src/deps/jsr.io/@std/internal/1.0.4/format.ts +39 -0
  840. package/src/deps/jsr.io/@std/internal/1.0.4/styles.ts +233 -0
  841. package/src/deps/jsr.io/@std/internal/1.0.4/types.ts +18 -0
  842. package/src/deps/jsr.io/@std/testing/1.0.3/_test_suite.ts +389 -0
  843. package/src/deps/jsr.io/@std/testing/1.0.3/bdd.ts +1202 -0
  844. package/src/deps/jsr.io/@std/testing/1.0.3/mock.ts +1839 -0
  845. package/src/mod.ts +7 -0
  846. package/src/src/assets.ts +9 -0
  847. package/src/src/ast/_index.ts +54 -0
  848. package/src/src/ast/common.ts +1 -0
  849. package/src/src/ast/index.ts +1 -0
  850. package/src/src/ast/node.ts +10 -0
  851. package/src/src/ast/nodes/argument.test.ts +43 -0
  852. package/src/src/ast/nodes/argument.ts +40 -0
  853. package/src/src/ast/nodes/array-type.test.ts +34 -0
  854. package/src/src/ast/nodes/array-type.ts +49 -0
  855. package/src/src/ast/nodes/arrow-function.test.ts +79 -0
  856. package/src/src/ast/nodes/arrow-function.ts +91 -0
  857. package/src/src/ast/nodes/call.ts +55 -0
  858. package/src/src/ast/nodes/class.test.ts +185 -0
  859. package/src/src/ast/nodes/class.ts +133 -0
  860. package/src/src/ast/nodes/constructor-parameter.test.ts +122 -0
  861. package/src/src/ast/nodes/constructor-parameter.ts +70 -0
  862. package/src/src/ast/nodes/constructor.test.ts +131 -0
  863. package/src/src/ast/nodes/constructor.ts +77 -0
  864. package/src/src/ast/nodes/decorator.test.ts +59 -0
  865. package/src/src/ast/nodes/decorator.ts +76 -0
  866. package/src/src/ast/nodes/doc-tag.test.ts +40 -0
  867. package/src/src/ast/nodes/doc-tag.ts +291 -0
  868. package/src/src/ast/nodes/doc.test.ts +40 -0
  869. package/src/src/ast/nodes/doc.ts +102 -0
  870. package/src/src/ast/nodes/enum-value.test.ts +66 -0
  871. package/src/src/ast/nodes/enum-value.ts +72 -0
  872. package/src/src/ast/nodes/enum.test.ts +85 -0
  873. package/src/src/ast/nodes/enum.ts +77 -0
  874. package/src/src/ast/nodes/export.test.ts +29 -0
  875. package/src/src/ast/nodes/export.ts +54 -0
  876. package/src/src/ast/nodes/function-type.test.ts +61 -0
  877. package/src/src/ast/nodes/function-type.ts +60 -0
  878. package/src/src/ast/nodes/function.test.ts +135 -0
  879. package/src/src/ast/nodes/function.ts +107 -0
  880. package/src/src/ast/nodes/generic-parameter.test.ts +86 -0
  881. package/src/src/ast/nodes/generic-parameter.ts +71 -0
  882. package/src/src/ast/nodes/indexer.test.ts +42 -0
  883. package/src/src/ast/nodes/indexer.ts +60 -0
  884. package/src/src/ast/nodes/interface.test.ts +142 -0
  885. package/src/src/ast/nodes/interface.ts +117 -0
  886. package/src/src/ast/nodes/intersection-type.test.ts +52 -0
  887. package/src/src/ast/nodes/intersection-type.ts +67 -0
  888. package/src/src/ast/nodes/lookup-type.ts +53 -0
  889. package/src/src/ast/nodes/method.test.ts +185 -0
  890. package/src/src/ast/nodes/method.ts +138 -0
  891. package/src/src/ast/nodes/object-type.test.ts +40 -0
  892. package/src/src/ast/nodes/object-type.ts +52 -0
  893. package/src/src/ast/nodes/object.test.ts +40 -0
  894. package/src/src/ast/nodes/object.ts +48 -0
  895. package/src/src/ast/nodes/parameter.test.ts +88 -0
  896. package/src/src/ast/nodes/parameter.ts +85 -0
  897. package/src/src/ast/nodes/property-accessor.test.ts +132 -0
  898. package/src/src/ast/nodes/property-accessor.ts +173 -0
  899. package/src/src/ast/nodes/property.test.ts +113 -0
  900. package/src/src/ast/nodes/property.ts +192 -0
  901. package/src/src/ast/nodes/reference.test.ts +42 -0
  902. package/src/src/ast/nodes/reference.ts +194 -0
  903. package/src/src/ast/nodes/string.test.ts +35 -0
  904. package/src/src/ast/nodes/string.ts +49 -0
  905. package/src/src/ast/nodes/tuple.test.ts +45 -0
  906. package/src/src/ast/nodes/tuple.ts +53 -0
  907. package/src/src/ast/nodes/type-alias.test.ts +35 -0
  908. package/src/src/ast/nodes/type-alias.ts +75 -0
  909. package/src/src/ast/nodes/typeof.ts +42 -0
  910. package/src/src/ast/nodes/types.ts +40 -0
  911. package/src/src/ast/nodes/union-type.test.ts +50 -0
  912. package/src/src/ast/nodes/union-type.ts +62 -0
  913. package/src/src/ast/nodes/variable.test.ts +49 -0
  914. package/src/src/ast/nodes/variable.ts +73 -0
  915. package/src/src/ast/references/angular.ts +24 -0
  916. package/src/src/ast/references/easy-network-stub.ts +21 -0
  917. package/src/src/ast/references/index.ts +5 -0
  918. package/src/src/ast/references/k6.ts +8 -0
  919. package/src/src/ast/references/rxjs.ts +7 -0
  920. package/src/src/ast/references/typescript.ts +35 -0
  921. package/src/src/ast/utils/get-type-script-builder-options.ts +19 -0
  922. package/src/src/ast/utils/to-ts-node.ts +27 -0
  923. package/src/src/ast/utils/write-ts-generic-parameters.ts +25 -0
  924. package/src/src/ast/utils/write-ts-members.ts +28 -0
  925. package/src/src/ast/utils/write-ts-nodes.ts +35 -0
  926. package/src/src/ast/utils/write-ts-parameters.ts +25 -0
  927. package/src/src/common-results.ts +26 -0
  928. package/src/src/config.ts +89 -0
  929. package/src/src/file-builder.ts +136 -0
  930. package/src/src/generators/file-generator.ts +15 -0
  931. package/src/src/generators/index.ts +6 -0
  932. package/src/src/generators/models/index.ts +3 -0
  933. package/src/src/generators/models/model-generator.ts +469 -0
  934. package/src/src/generators/models/models-generator.ts +108 -0
  935. package/src/src/generators/models/models.ts +105 -0
  936. package/src/src/generators/services/angular-services/angular-service-generator.ts +402 -0
  937. package/src/src/generators/services/angular-services/angular-services-generator.ts +295 -0
  938. package/src/src/generators/services/angular-services/index.ts +3 -0
  939. package/src/src/generators/services/angular-services/models.ts +270 -0
  940. package/src/src/generators/services/angular-services/refs.ts +54 -0
  941. package/src/src/generators/services/easy-network-stub/easy-network-stub-generator.ts +242 -0
  942. package/src/src/generators/services/easy-network-stub/easy-network-stubs-generator.ts +211 -0
  943. package/src/src/generators/services/easy-network-stub/index.ts +3 -0
  944. package/src/src/generators/services/easy-network-stub/models.ts +124 -0
  945. package/src/src/generators/services/easy-network-stub/refs.ts +45 -0
  946. package/src/src/generators/services/fetch-clients/fetch-client-generator.ts +267 -0
  947. package/src/src/generators/services/fetch-clients/fetch-clients-generator.ts +163 -0
  948. package/src/src/generators/services/fetch-clients/index.ts +3 -0
  949. package/src/src/generators/services/fetch-clients/models.ts +130 -0
  950. package/src/src/generators/services/fetch-clients/refs.ts +21 -0
  951. package/src/src/generators/services/k6-clients/index.ts +3 -0
  952. package/src/src/generators/services/k6-clients/k6-client-generator.ts +409 -0
  953. package/src/src/generators/services/k6-clients/k6-clients-generator.ts +165 -0
  954. package/src/src/generators/services/k6-clients/models.ts +241 -0
  955. package/src/src/generators/services/k6-clients/refs.ts +15 -0
  956. package/src/src/import-collection.test.ts +78 -0
  957. package/src/src/import-collection.ts +236 -0
  958. package/src/src/utils.ts +72 -0
  959. package/src/tests/openapi-models.test.ts +64 -0
  960. package/test_runner.js +239 -0
  961. package/esm/index.d.ts +0 -8
  962. package/esm/index.d.ts.map +0 -1
  963. package/esm/index.js +0 -7
  964. package/esm/lib/assets.d.ts.map +0 -1
  965. package/esm/lib/assets.js +0 -6
  966. package/esm/lib/ast/_index.d.ts +0 -39
  967. package/esm/lib/ast/_index.d.ts.map +0 -1
  968. package/esm/lib/ast/_index.js +0 -36
  969. package/esm/lib/ast/common.d.ts.map +0 -1
  970. package/esm/lib/ast/index.d.ts.map +0 -1
  971. package/esm/lib/ast/node.d.ts.map +0 -1
  972. package/esm/lib/ast/nodes/argument.d.ts +0 -18
  973. package/esm/lib/ast/nodes/argument.d.ts.map +0 -1
  974. package/esm/lib/ast/nodes/array-type.d.ts +0 -20
  975. package/esm/lib/ast/nodes/array-type.d.ts.map +0 -1
  976. package/esm/lib/ast/nodes/arrow-function.d.ts +0 -30
  977. package/esm/lib/ast/nodes/arrow-function.d.ts.map +0 -1
  978. package/esm/lib/ast/nodes/arrow-function.js +0 -83
  979. package/esm/lib/ast/nodes/call.d.ts +0 -21
  980. package/esm/lib/ast/nodes/call.d.ts.map +0 -1
  981. package/esm/lib/ast/nodes/call.js +0 -34
  982. package/esm/lib/ast/nodes/class.d.ts +0 -42
  983. package/esm/lib/ast/nodes/class.d.ts.map +0 -1
  984. package/esm/lib/ast/nodes/class.js +0 -120
  985. package/esm/lib/ast/nodes/constructor-parameter.d.ts +0 -20
  986. package/esm/lib/ast/nodes/constructor-parameter.d.ts.map +0 -1
  987. package/esm/lib/ast/nodes/constructor-parameter.js +0 -54
  988. package/esm/lib/ast/nodes/constructor.d.ts +0 -26
  989. package/esm/lib/ast/nodes/constructor.d.ts.map +0 -1
  990. package/esm/lib/ast/nodes/constructor.js +0 -62
  991. package/esm/lib/ast/nodes/decorator.d.ts +0 -23
  992. package/esm/lib/ast/nodes/decorator.d.ts.map +0 -1
  993. package/esm/lib/ast/nodes/decorator.js +0 -46
  994. package/esm/lib/ast/nodes/doc-tag.d.ts +0 -74
  995. package/esm/lib/ast/nodes/doc-tag.d.ts.map +0 -1
  996. package/esm/lib/ast/nodes/doc-tag.js +0 -78
  997. package/esm/lib/ast/nodes/doc.d.ts +0 -29
  998. package/esm/lib/ast/nodes/doc.d.ts.map +0 -1
  999. package/esm/lib/ast/nodes/doc.js +0 -65
  1000. package/esm/lib/ast/nodes/enum-value.d.ts +0 -22
  1001. package/esm/lib/ast/nodes/enum-value.d.ts.map +0 -1
  1002. package/esm/lib/ast/nodes/enum.d.ts +0 -27
  1003. package/esm/lib/ast/nodes/enum.d.ts.map +0 -1
  1004. package/esm/lib/ast/nodes/enum.js +0 -72
  1005. package/esm/lib/ast/nodes/export.d.ts +0 -23
  1006. package/esm/lib/ast/nodes/export.d.ts.map +0 -1
  1007. package/esm/lib/ast/nodes/function-type.d.ts +0 -24
  1008. package/esm/lib/ast/nodes/function-type.d.ts.map +0 -1
  1009. package/esm/lib/ast/nodes/function-type.js +0 -49
  1010. package/esm/lib/ast/nodes/function.d.ts +0 -36
  1011. package/esm/lib/ast/nodes/function.d.ts.map +0 -1
  1012. package/esm/lib/ast/nodes/function.js +0 -104
  1013. package/esm/lib/ast/nodes/generic-parameter.d.ts +0 -26
  1014. package/esm/lib/ast/nodes/generic-parameter.d.ts.map +0 -1
  1015. package/esm/lib/ast/nodes/generic-parameter.js +0 -66
  1016. package/esm/lib/ast/nodes/indexer.d.ts +0 -24
  1017. package/esm/lib/ast/nodes/indexer.d.ts.map +0 -1
  1018. package/esm/lib/ast/nodes/interface.d.ts +0 -37
  1019. package/esm/lib/ast/nodes/interface.d.ts.map +0 -1
  1020. package/esm/lib/ast/nodes/interface.js +0 -98
  1021. package/esm/lib/ast/nodes/intersection-type.d.ts +0 -18
  1022. package/esm/lib/ast/nodes/intersection-type.d.ts.map +0 -1
  1023. package/esm/lib/ast/nodes/lookup-type.d.ts +0 -20
  1024. package/esm/lib/ast/nodes/lookup-type.d.ts.map +0 -1
  1025. package/esm/lib/ast/nodes/method.d.ts +0 -48
  1026. package/esm/lib/ast/nodes/method.d.ts.map +0 -1
  1027. package/esm/lib/ast/nodes/method.js +0 -158
  1028. package/esm/lib/ast/nodes/object-type.d.ts +0 -21
  1029. package/esm/lib/ast/nodes/object-type.d.ts.map +0 -1
  1030. package/esm/lib/ast/nodes/object.d.ts +0 -20
  1031. package/esm/lib/ast/nodes/object.d.ts.map +0 -1
  1032. package/esm/lib/ast/nodes/parameter.d.ts +0 -29
  1033. package/esm/lib/ast/nodes/parameter.d.ts.map +0 -1
  1034. package/esm/lib/ast/nodes/parameter.js +0 -77
  1035. package/esm/lib/ast/nodes/property-accessor.d.ts +0 -54
  1036. package/esm/lib/ast/nodes/property-accessor.d.ts.map +0 -1
  1037. package/esm/lib/ast/nodes/property-accessor.js +0 -181
  1038. package/esm/lib/ast/nodes/property.d.ts +0 -85
  1039. package/esm/lib/ast/nodes/property.d.ts.map +0 -1
  1040. package/esm/lib/ast/nodes/property.js +0 -189
  1041. package/esm/lib/ast/nodes/reference.d.ts +0 -65
  1042. package/esm/lib/ast/nodes/reference.d.ts.map +0 -1
  1043. package/esm/lib/ast/nodes/reference.js +0 -93
  1044. package/esm/lib/ast/nodes/string.d.ts +0 -19
  1045. package/esm/lib/ast/nodes/string.d.ts.map +0 -1
  1046. package/esm/lib/ast/nodes/tuple.d.ts +0 -20
  1047. package/esm/lib/ast/nodes/tuple.d.ts.map +0 -1
  1048. package/esm/lib/ast/nodes/type-alias.d.ts +0 -28
  1049. package/esm/lib/ast/nodes/type-alias.d.ts.map +0 -1
  1050. package/esm/lib/ast/nodes/type-alias.js +0 -64
  1051. package/esm/lib/ast/nodes/typeof.d.ts +0 -19
  1052. package/esm/lib/ast/nodes/typeof.d.ts.map +0 -1
  1053. package/esm/lib/ast/nodes/types.d.ts +0 -19
  1054. package/esm/lib/ast/nodes/types.d.ts.map +0 -1
  1055. package/esm/lib/ast/nodes/union-type.d.ts +0 -18
  1056. package/esm/lib/ast/nodes/union-type.d.ts.map +0 -1
  1057. package/esm/lib/ast/nodes/variable.d.ts +0 -29
  1058. package/esm/lib/ast/nodes/variable.d.ts.map +0 -1
  1059. package/esm/lib/ast/references/angular.d.ts +0 -58
  1060. package/esm/lib/ast/references/angular.d.ts.map +0 -1
  1061. package/esm/lib/ast/references/angular.js +0 -10
  1062. package/esm/lib/ast/references/easy-network-stub.d.ts +0 -35
  1063. package/esm/lib/ast/references/easy-network-stub.d.ts.map +0 -1
  1064. package/esm/lib/ast/references/easy-network-stub.js +0 -7
  1065. package/esm/lib/ast/references/index.d.ts +0 -6
  1066. package/esm/lib/ast/references/index.d.ts.map +0 -1
  1067. package/esm/lib/ast/references/index.js +0 -5
  1068. package/esm/lib/ast/references/k6.d.ts +0 -25
  1069. package/esm/lib/ast/references/k6.d.ts.map +0 -1
  1070. package/esm/lib/ast/references/rxjs.d.ts +0 -41
  1071. package/esm/lib/ast/references/rxjs.d.ts.map +0 -1
  1072. package/esm/lib/ast/references/typescript.d.ts +0 -198
  1073. package/esm/lib/ast/references/typescript.d.ts.map +0 -1
  1074. package/esm/lib/ast/utils/get-type-script-builder-options.d.ts.map +0 -1
  1075. package/esm/lib/ast/utils/to-ts-node.d.ts.map +0 -1
  1076. package/esm/lib/ast/utils/write-ts-generic-parameters.d.ts.map +0 -1
  1077. package/esm/lib/ast/utils/write-ts-members.d.ts.map +0 -1
  1078. package/esm/lib/ast/utils/write-ts-members.js +0 -14
  1079. package/esm/lib/ast/utils/write-ts-nodes.d.ts.map +0 -1
  1080. package/esm/lib/ast/utils/write-ts-parameters.d.ts.map +0 -1
  1081. package/esm/lib/common-results.d.ts.map +0 -1
  1082. package/esm/lib/config.d.ts.map +0 -1
  1083. package/esm/lib/file-builder.d.ts.map +0 -1
  1084. package/esm/lib/generators/file-generator.d.ts.map +0 -1
  1085. package/esm/lib/generators/index.d.ts.map +0 -1
  1086. package/esm/lib/generators/models/index.d.ts +0 -4
  1087. package/esm/lib/generators/models/index.d.ts.map +0 -1
  1088. package/esm/lib/generators/models/index.js +0 -3
  1089. package/esm/lib/generators/models/model-generator.d.ts +0 -46
  1090. package/esm/lib/generators/models/model-generator.d.ts.map +0 -1
  1091. package/esm/lib/generators/models/model-generator.js +0 -366
  1092. package/esm/lib/generators/models/models-generator.d.ts +0 -23
  1093. package/esm/lib/generators/models/models-generator.d.ts.map +0 -1
  1094. package/esm/lib/generators/models/models-generator.js +0 -69
  1095. package/esm/lib/generators/models/models.d.ts.map +0 -1
  1096. package/esm/lib/generators/services/angular-services/angular-service-generator.d.ts +0 -39
  1097. package/esm/lib/generators/services/angular-services/angular-service-generator.d.ts.map +0 -1
  1098. package/esm/lib/generators/services/angular-services/angular-service-generator.js +0 -302
  1099. package/esm/lib/generators/services/angular-services/angular-services-generator.d.ts +0 -31
  1100. package/esm/lib/generators/services/angular-services/angular-services-generator.d.ts.map +0 -1
  1101. package/esm/lib/generators/services/angular-services/angular-services-generator.js +0 -213
  1102. package/esm/lib/generators/services/angular-services/index.d.ts.map +0 -1
  1103. package/esm/lib/generators/services/angular-services/models.d.ts +0 -142
  1104. package/esm/lib/generators/services/angular-services/models.d.ts.map +0 -1
  1105. package/esm/lib/generators/services/angular-services/refs.d.ts +0 -63
  1106. package/esm/lib/generators/services/angular-services/refs.d.ts.map +0 -1
  1107. package/esm/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts +0 -33
  1108. package/esm/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts.map +0 -1
  1109. package/esm/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts +0 -28
  1110. package/esm/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts.map +0 -1
  1111. package/esm/lib/generators/services/easy-network-stub/easy-network-stubs-generator.js +0 -132
  1112. package/esm/lib/generators/services/easy-network-stub/index.d.ts.map +0 -1
  1113. package/esm/lib/generators/services/easy-network-stub/models.d.ts +0 -78
  1114. package/esm/lib/generators/services/easy-network-stub/models.d.ts.map +0 -1
  1115. package/esm/lib/generators/services/easy-network-stub/refs.d.ts +0 -82
  1116. package/esm/lib/generators/services/easy-network-stub/refs.d.ts.map +0 -1
  1117. package/esm/lib/generators/services/fetch-clients/fetch-client-generator.d.ts +0 -33
  1118. package/esm/lib/generators/services/fetch-clients/fetch-client-generator.d.ts.map +0 -1
  1119. package/esm/lib/generators/services/fetch-clients/fetch-client-generator.js +0 -198
  1120. package/esm/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts +0 -27
  1121. package/esm/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts.map +0 -1
  1122. package/esm/lib/generators/services/fetch-clients/fetch-clients-generator.js +0 -105
  1123. package/esm/lib/generators/services/fetch-clients/index.d.ts.map +0 -1
  1124. package/esm/lib/generators/services/fetch-clients/models.d.ts +0 -84
  1125. package/esm/lib/generators/services/fetch-clients/models.d.ts.map +0 -1
  1126. package/esm/lib/generators/services/fetch-clients/refs.d.ts +0 -30
  1127. package/esm/lib/generators/services/fetch-clients/refs.d.ts.map +0 -1
  1128. package/esm/lib/generators/services/k6-clients/index.d.ts.map +0 -1
  1129. package/esm/lib/generators/services/k6-clients/k6-client-generator.d.ts +0 -40
  1130. package/esm/lib/generators/services/k6-clients/k6-client-generator.d.ts.map +0 -1
  1131. package/esm/lib/generators/services/k6-clients/k6-client-generator.js +0 -311
  1132. package/esm/lib/generators/services/k6-clients/k6-clients-generator.d.ts +0 -27
  1133. package/esm/lib/generators/services/k6-clients/k6-clients-generator.d.ts.map +0 -1
  1134. package/esm/lib/generators/services/k6-clients/k6-clients-generator.js +0 -109
  1135. package/esm/lib/generators/services/k6-clients/models.d.ts +0 -119
  1136. package/esm/lib/generators/services/k6-clients/models.d.ts.map +0 -1
  1137. package/esm/lib/generators/services/k6-clients/refs.d.ts +0 -21
  1138. package/esm/lib/generators/services/k6-clients/refs.d.ts.map +0 -1
  1139. package/esm/lib/import-collection.d.ts.map +0 -1
  1140. package/esm/lib/utils.d.ts +0 -8
  1141. package/esm/lib/utils.d.ts.map +0 -1
  1142. package/script/index.d.ts +0 -8
  1143. package/script/index.d.ts.map +0 -1
  1144. package/script/index.js +0 -10
  1145. package/script/lib/assets.d.ts.map +0 -1
  1146. package/script/lib/assets.js +0 -9
  1147. package/script/lib/ast/_index.d.ts +0 -39
  1148. package/script/lib/ast/_index.d.ts.map +0 -1
  1149. package/script/lib/ast/_index.js +0 -108
  1150. package/script/lib/ast/common.d.ts.map +0 -1
  1151. package/script/lib/ast/index.d.ts.map +0 -1
  1152. package/script/lib/ast/node.d.ts.map +0 -1
  1153. package/script/lib/ast/nodes/argument.d.ts +0 -18
  1154. package/script/lib/ast/nodes/argument.d.ts.map +0 -1
  1155. package/script/lib/ast/nodes/array-type.d.ts +0 -20
  1156. package/script/lib/ast/nodes/array-type.d.ts.map +0 -1
  1157. package/script/lib/ast/nodes/arrow-function.d.ts +0 -30
  1158. package/script/lib/ast/nodes/arrow-function.d.ts.map +0 -1
  1159. package/script/lib/ast/nodes/arrow-function.js +0 -87
  1160. package/script/lib/ast/nodes/call.d.ts +0 -21
  1161. package/script/lib/ast/nodes/call.d.ts.map +0 -1
  1162. package/script/lib/ast/nodes/call.js +0 -38
  1163. package/script/lib/ast/nodes/class.d.ts +0 -42
  1164. package/script/lib/ast/nodes/class.d.ts.map +0 -1
  1165. package/script/lib/ast/nodes/class.js +0 -124
  1166. package/script/lib/ast/nodes/constructor-parameter.d.ts +0 -20
  1167. package/script/lib/ast/nodes/constructor-parameter.d.ts.map +0 -1
  1168. package/script/lib/ast/nodes/constructor-parameter.js +0 -58
  1169. package/script/lib/ast/nodes/constructor.d.ts +0 -26
  1170. package/script/lib/ast/nodes/constructor.d.ts.map +0 -1
  1171. package/script/lib/ast/nodes/constructor.js +0 -66
  1172. package/script/lib/ast/nodes/decorator.d.ts +0 -23
  1173. package/script/lib/ast/nodes/decorator.d.ts.map +0 -1
  1174. package/script/lib/ast/nodes/decorator.js +0 -50
  1175. package/script/lib/ast/nodes/doc-tag.d.ts +0 -74
  1176. package/script/lib/ast/nodes/doc-tag.d.ts.map +0 -1
  1177. package/script/lib/ast/nodes/doc-tag.js +0 -82
  1178. package/script/lib/ast/nodes/doc.d.ts +0 -29
  1179. package/script/lib/ast/nodes/doc.d.ts.map +0 -1
  1180. package/script/lib/ast/nodes/doc.js +0 -69
  1181. package/script/lib/ast/nodes/enum-value.d.ts +0 -22
  1182. package/script/lib/ast/nodes/enum-value.d.ts.map +0 -1
  1183. package/script/lib/ast/nodes/enum.d.ts +0 -27
  1184. package/script/lib/ast/nodes/enum.d.ts.map +0 -1
  1185. package/script/lib/ast/nodes/enum.js +0 -76
  1186. package/script/lib/ast/nodes/export.d.ts +0 -23
  1187. package/script/lib/ast/nodes/export.d.ts.map +0 -1
  1188. package/script/lib/ast/nodes/function-type.d.ts +0 -24
  1189. package/script/lib/ast/nodes/function-type.d.ts.map +0 -1
  1190. package/script/lib/ast/nodes/function-type.js +0 -53
  1191. package/script/lib/ast/nodes/function.d.ts +0 -36
  1192. package/script/lib/ast/nodes/function.d.ts.map +0 -1
  1193. package/script/lib/ast/nodes/function.js +0 -108
  1194. package/script/lib/ast/nodes/generic-parameter.d.ts +0 -26
  1195. package/script/lib/ast/nodes/generic-parameter.d.ts.map +0 -1
  1196. package/script/lib/ast/nodes/generic-parameter.js +0 -70
  1197. package/script/lib/ast/nodes/indexer.d.ts +0 -24
  1198. package/script/lib/ast/nodes/indexer.d.ts.map +0 -1
  1199. package/script/lib/ast/nodes/interface.d.ts +0 -37
  1200. package/script/lib/ast/nodes/interface.d.ts.map +0 -1
  1201. package/script/lib/ast/nodes/interface.js +0 -102
  1202. package/script/lib/ast/nodes/intersection-type.d.ts +0 -18
  1203. package/script/lib/ast/nodes/intersection-type.d.ts.map +0 -1
  1204. package/script/lib/ast/nodes/lookup-type.d.ts +0 -20
  1205. package/script/lib/ast/nodes/lookup-type.d.ts.map +0 -1
  1206. package/script/lib/ast/nodes/method.d.ts +0 -48
  1207. package/script/lib/ast/nodes/method.d.ts.map +0 -1
  1208. package/script/lib/ast/nodes/method.js +0 -163
  1209. package/script/lib/ast/nodes/object-type.d.ts +0 -21
  1210. package/script/lib/ast/nodes/object-type.d.ts.map +0 -1
  1211. package/script/lib/ast/nodes/object.d.ts +0 -20
  1212. package/script/lib/ast/nodes/object.d.ts.map +0 -1
  1213. package/script/lib/ast/nodes/parameter.d.ts +0 -29
  1214. package/script/lib/ast/nodes/parameter.d.ts.map +0 -1
  1215. package/script/lib/ast/nodes/parameter.js +0 -81
  1216. package/script/lib/ast/nodes/property-accessor.d.ts +0 -54
  1217. package/script/lib/ast/nodes/property-accessor.d.ts.map +0 -1
  1218. package/script/lib/ast/nodes/property-accessor.js +0 -188
  1219. package/script/lib/ast/nodes/property.d.ts +0 -85
  1220. package/script/lib/ast/nodes/property.d.ts.map +0 -1
  1221. package/script/lib/ast/nodes/property.js +0 -195
  1222. package/script/lib/ast/nodes/reference.d.ts +0 -65
  1223. package/script/lib/ast/nodes/reference.d.ts.map +0 -1
  1224. package/script/lib/ast/nodes/reference.js +0 -97
  1225. package/script/lib/ast/nodes/string.d.ts +0 -19
  1226. package/script/lib/ast/nodes/string.d.ts.map +0 -1
  1227. package/script/lib/ast/nodes/tuple.d.ts +0 -20
  1228. package/script/lib/ast/nodes/tuple.d.ts.map +0 -1
  1229. package/script/lib/ast/nodes/type-alias.d.ts +0 -28
  1230. package/script/lib/ast/nodes/type-alias.d.ts.map +0 -1
  1231. package/script/lib/ast/nodes/type-alias.js +0 -68
  1232. package/script/lib/ast/nodes/typeof.d.ts +0 -19
  1233. package/script/lib/ast/nodes/typeof.d.ts.map +0 -1
  1234. package/script/lib/ast/nodes/types.d.ts +0 -19
  1235. package/script/lib/ast/nodes/types.d.ts.map +0 -1
  1236. package/script/lib/ast/nodes/union-type.d.ts +0 -18
  1237. package/script/lib/ast/nodes/union-type.d.ts.map +0 -1
  1238. package/script/lib/ast/nodes/variable.d.ts +0 -29
  1239. package/script/lib/ast/nodes/variable.d.ts.map +0 -1
  1240. package/script/lib/ast/references/angular.d.ts +0 -58
  1241. package/script/lib/ast/references/angular.d.ts.map +0 -1
  1242. package/script/lib/ast/references/angular.js +0 -13
  1243. package/script/lib/ast/references/easy-network-stub.d.ts +0 -35
  1244. package/script/lib/ast/references/easy-network-stub.d.ts.map +0 -1
  1245. package/script/lib/ast/references/easy-network-stub.js +0 -10
  1246. package/script/lib/ast/references/index.d.ts +0 -6
  1247. package/script/lib/ast/references/index.d.ts.map +0 -1
  1248. package/script/lib/ast/references/index.js +0 -9
  1249. package/script/lib/ast/references/k6.d.ts +0 -25
  1250. package/script/lib/ast/references/k6.d.ts.map +0 -1
  1251. package/script/lib/ast/references/rxjs.d.ts +0 -41
  1252. package/script/lib/ast/references/rxjs.d.ts.map +0 -1
  1253. package/script/lib/ast/references/typescript.d.ts +0 -198
  1254. package/script/lib/ast/references/typescript.d.ts.map +0 -1
  1255. package/script/lib/ast/utils/get-type-script-builder-options.d.ts.map +0 -1
  1256. package/script/lib/ast/utils/to-ts-node.d.ts.map +0 -1
  1257. package/script/lib/ast/utils/write-ts-generic-parameters.d.ts.map +0 -1
  1258. package/script/lib/ast/utils/write-ts-members.d.ts.map +0 -1
  1259. package/script/lib/ast/utils/write-ts-members.js +0 -17
  1260. package/script/lib/ast/utils/write-ts-nodes.d.ts.map +0 -1
  1261. package/script/lib/ast/utils/write-ts-parameters.d.ts.map +0 -1
  1262. package/script/lib/common-results.d.ts.map +0 -1
  1263. package/script/lib/config.d.ts.map +0 -1
  1264. package/script/lib/file-builder.d.ts.map +0 -1
  1265. package/script/lib/generators/file-generator.d.ts.map +0 -1
  1266. package/script/lib/generators/index.d.ts.map +0 -1
  1267. package/script/lib/generators/models/index.d.ts +0 -4
  1268. package/script/lib/generators/models/index.d.ts.map +0 -1
  1269. package/script/lib/generators/models/index.js +0 -6
  1270. package/script/lib/generators/models/model-generator.d.ts +0 -46
  1271. package/script/lib/generators/models/model-generator.d.ts.map +0 -1
  1272. package/script/lib/generators/models/model-generator.js +0 -370
  1273. package/script/lib/generators/models/models-generator.d.ts +0 -23
  1274. package/script/lib/generators/models/models-generator.d.ts.map +0 -1
  1275. package/script/lib/generators/models/models-generator.js +0 -73
  1276. package/script/lib/generators/models/models.d.ts.map +0 -1
  1277. package/script/lib/generators/services/angular-services/angular-service-generator.d.ts +0 -39
  1278. package/script/lib/generators/services/angular-services/angular-service-generator.d.ts.map +0 -1
  1279. package/script/lib/generators/services/angular-services/angular-service-generator.js +0 -306
  1280. package/script/lib/generators/services/angular-services/angular-services-generator.d.ts +0 -31
  1281. package/script/lib/generators/services/angular-services/angular-services-generator.d.ts.map +0 -1
  1282. package/script/lib/generators/services/angular-services/angular-services-generator.js +0 -218
  1283. package/script/lib/generators/services/angular-services/index.d.ts.map +0 -1
  1284. package/script/lib/generators/services/angular-services/models.d.ts +0 -142
  1285. package/script/lib/generators/services/angular-services/models.d.ts.map +0 -1
  1286. package/script/lib/generators/services/angular-services/refs.d.ts +0 -63
  1287. package/script/lib/generators/services/angular-services/refs.d.ts.map +0 -1
  1288. package/script/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts +0 -33
  1289. package/script/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts.map +0 -1
  1290. package/script/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts +0 -28
  1291. package/script/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts.map +0 -1
  1292. package/script/lib/generators/services/easy-network-stub/easy-network-stubs-generator.js +0 -137
  1293. package/script/lib/generators/services/easy-network-stub/index.d.ts.map +0 -1
  1294. package/script/lib/generators/services/easy-network-stub/models.d.ts +0 -78
  1295. package/script/lib/generators/services/easy-network-stub/models.d.ts.map +0 -1
  1296. package/script/lib/generators/services/easy-network-stub/refs.d.ts +0 -82
  1297. package/script/lib/generators/services/easy-network-stub/refs.d.ts.map +0 -1
  1298. package/script/lib/generators/services/fetch-clients/fetch-client-generator.d.ts +0 -33
  1299. package/script/lib/generators/services/fetch-clients/fetch-client-generator.d.ts.map +0 -1
  1300. package/script/lib/generators/services/fetch-clients/fetch-client-generator.js +0 -202
  1301. package/script/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts +0 -27
  1302. package/script/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts.map +0 -1
  1303. package/script/lib/generators/services/fetch-clients/fetch-clients-generator.js +0 -110
  1304. package/script/lib/generators/services/fetch-clients/index.d.ts.map +0 -1
  1305. package/script/lib/generators/services/fetch-clients/models.d.ts +0 -84
  1306. package/script/lib/generators/services/fetch-clients/models.d.ts.map +0 -1
  1307. package/script/lib/generators/services/fetch-clients/refs.d.ts +0 -30
  1308. package/script/lib/generators/services/fetch-clients/refs.d.ts.map +0 -1
  1309. package/script/lib/generators/services/k6-clients/index.d.ts.map +0 -1
  1310. package/script/lib/generators/services/k6-clients/k6-client-generator.d.ts +0 -40
  1311. package/script/lib/generators/services/k6-clients/k6-client-generator.d.ts.map +0 -1
  1312. package/script/lib/generators/services/k6-clients/k6-client-generator.js +0 -315
  1313. package/script/lib/generators/services/k6-clients/k6-clients-generator.d.ts +0 -27
  1314. package/script/lib/generators/services/k6-clients/k6-clients-generator.d.ts.map +0 -1
  1315. package/script/lib/generators/services/k6-clients/k6-clients-generator.js +0 -114
  1316. package/script/lib/generators/services/k6-clients/models.d.ts +0 -119
  1317. package/script/lib/generators/services/k6-clients/models.d.ts.map +0 -1
  1318. package/script/lib/generators/services/k6-clients/refs.d.ts +0 -21
  1319. package/script/lib/generators/services/k6-clients/refs.d.ts.map +0 -1
  1320. package/script/lib/import-collection.d.ts.map +0 -1
  1321. package/script/lib/utils.d.ts +0 -8
  1322. package/script/lib/utils.d.ts.map +0 -1
  1323. /package/esm/{lib → src}/assets.d.ts +0 -0
  1324. /package/esm/{lib → src}/ast/common.d.ts +0 -0
  1325. /package/esm/{lib → src}/ast/common.js +0 -0
  1326. /package/esm/{lib → src}/ast/index.d.ts +0 -0
  1327. /package/esm/{lib → src}/ast/index.js +0 -0
  1328. /package/esm/{lib → src}/ast/node.d.ts +0 -0
  1329. /package/esm/{lib → src}/ast/node.js +0 -0
  1330. /package/esm/{lib → src}/ast/nodes/argument.js +0 -0
  1331. /package/esm/{lib → src}/ast/nodes/array-type.js +0 -0
  1332. /package/esm/{lib → src}/ast/nodes/enum-value.js +0 -0
  1333. /package/esm/{lib → src}/ast/nodes/export.js +0 -0
  1334. /package/esm/{lib → src}/ast/nodes/indexer.js +0 -0
  1335. /package/esm/{lib → src}/ast/nodes/intersection-type.js +0 -0
  1336. /package/esm/{lib → src}/ast/nodes/lookup-type.js +0 -0
  1337. /package/esm/{lib → src}/ast/nodes/object-type.js +0 -0
  1338. /package/esm/{lib → src}/ast/nodes/object.js +0 -0
  1339. /package/esm/{lib → src}/ast/nodes/string.js +0 -0
  1340. /package/esm/{lib → src}/ast/nodes/tuple.js +0 -0
  1341. /package/esm/{lib → src}/ast/nodes/typeof.js +0 -0
  1342. /package/esm/{lib → src}/ast/nodes/types.js +0 -0
  1343. /package/esm/{lib → src}/ast/nodes/union-type.js +0 -0
  1344. /package/esm/{lib → src}/ast/nodes/variable.js +0 -0
  1345. /package/esm/{lib → src}/ast/references/k6.js +0 -0
  1346. /package/esm/{lib → src}/ast/references/rxjs.js +0 -0
  1347. /package/esm/{lib → src}/ast/references/typescript.js +0 -0
  1348. /package/esm/{lib → src}/ast/utils/get-type-script-builder-options.d.ts +0 -0
  1349. /package/esm/{lib → src}/ast/utils/get-type-script-builder-options.js +0 -0
  1350. /package/esm/{lib → src}/ast/utils/to-ts-node.d.ts +0 -0
  1351. /package/esm/{lib → src}/ast/utils/to-ts-node.js +0 -0
  1352. /package/esm/{lib → src}/ast/utils/write-ts-generic-parameters.d.ts +0 -0
  1353. /package/esm/{lib → src}/ast/utils/write-ts-generic-parameters.js +0 -0
  1354. /package/esm/{lib → src}/ast/utils/write-ts-members.d.ts +0 -0
  1355. /package/esm/{lib → src}/ast/utils/write-ts-nodes.d.ts +0 -0
  1356. /package/esm/{lib → src}/ast/utils/write-ts-nodes.js +0 -0
  1357. /package/esm/{lib → src}/ast/utils/write-ts-parameters.d.ts +0 -0
  1358. /package/esm/{lib → src}/ast/utils/write-ts-parameters.js +0 -0
  1359. /package/esm/{lib → src}/common-results.d.ts +0 -0
  1360. /package/esm/{lib → src}/common-results.js +0 -0
  1361. /package/esm/{lib → src}/config.d.ts +0 -0
  1362. /package/esm/{lib → src}/config.js +0 -0
  1363. /package/esm/{lib → src}/file-builder.d.ts +0 -0
  1364. /package/esm/{lib → src}/file-builder.js +0 -0
  1365. /package/esm/{lib → src}/generators/file-generator.d.ts +0 -0
  1366. /package/esm/{lib → src}/generators/file-generator.js +0 -0
  1367. /package/esm/{lib → src}/generators/index.d.ts +0 -0
  1368. /package/esm/{lib → src}/generators/index.js +0 -0
  1369. /package/esm/{lib → src}/generators/models/models.d.ts +0 -0
  1370. /package/esm/{lib → src}/generators/models/models.js +0 -0
  1371. /package/esm/{lib → src}/generators/services/angular-services/index.d.ts +0 -0
  1372. /package/esm/{lib → src}/generators/services/angular-services/index.js +0 -0
  1373. /package/esm/{lib → src}/generators/services/angular-services/models.js +0 -0
  1374. /package/esm/{lib → src}/generators/services/angular-services/refs.js +0 -0
  1375. /package/esm/{lib → src}/generators/services/easy-network-stub/easy-network-stub-generator.js +0 -0
  1376. /package/esm/{lib → src}/generators/services/easy-network-stub/index.d.ts +0 -0
  1377. /package/esm/{lib → src}/generators/services/easy-network-stub/index.js +0 -0
  1378. /package/esm/{lib → src}/generators/services/easy-network-stub/models.js +0 -0
  1379. /package/esm/{lib → src}/generators/services/easy-network-stub/refs.js +0 -0
  1380. /package/esm/{lib → src}/generators/services/fetch-clients/index.d.ts +0 -0
  1381. /package/esm/{lib → src}/generators/services/fetch-clients/index.js +0 -0
  1382. /package/esm/{lib → src}/generators/services/fetch-clients/models.js +0 -0
  1383. /package/esm/{lib → src}/generators/services/fetch-clients/refs.js +0 -0
  1384. /package/esm/{lib → src}/generators/services/k6-clients/index.d.ts +0 -0
  1385. /package/esm/{lib → src}/generators/services/k6-clients/index.js +0 -0
  1386. /package/esm/{lib → src}/generators/services/k6-clients/models.js +0 -0
  1387. /package/esm/{lib → src}/generators/services/k6-clients/refs.js +0 -0
  1388. /package/esm/{lib → src}/import-collection.d.ts +0 -0
  1389. /package/esm/{lib → src}/import-collection.js +0 -0
  1390. /package/esm/{lib → src}/utils.js +0 -0
  1391. /package/script/{lib → src}/assets.d.ts +0 -0
  1392. /package/script/{lib → src}/ast/common.d.ts +0 -0
  1393. /package/script/{lib → src}/ast/common.js +0 -0
  1394. /package/script/{lib → src}/ast/index.d.ts +0 -0
  1395. /package/script/{lib → src}/ast/index.js +0 -0
  1396. /package/script/{lib → src}/ast/node.d.ts +0 -0
  1397. /package/script/{lib → src}/ast/node.js +0 -0
  1398. /package/script/{lib → src}/ast/nodes/argument.js +0 -0
  1399. /package/script/{lib → src}/ast/nodes/array-type.js +0 -0
  1400. /package/script/{lib → src}/ast/nodes/enum-value.js +0 -0
  1401. /package/script/{lib → src}/ast/nodes/export.js +0 -0
  1402. /package/script/{lib → src}/ast/nodes/indexer.js +0 -0
  1403. /package/script/{lib → src}/ast/nodes/intersection-type.js +0 -0
  1404. /package/script/{lib → src}/ast/nodes/lookup-type.js +0 -0
  1405. /package/script/{lib → src}/ast/nodes/object-type.js +0 -0
  1406. /package/script/{lib → src}/ast/nodes/object.js +0 -0
  1407. /package/script/{lib → src}/ast/nodes/string.js +0 -0
  1408. /package/script/{lib → src}/ast/nodes/tuple.js +0 -0
  1409. /package/script/{lib → src}/ast/nodes/typeof.js +0 -0
  1410. /package/script/{lib → src}/ast/nodes/types.js +0 -0
  1411. /package/script/{lib → src}/ast/nodes/union-type.js +0 -0
  1412. /package/script/{lib → src}/ast/nodes/variable.js +0 -0
  1413. /package/script/{lib → src}/ast/references/k6.js +0 -0
  1414. /package/script/{lib → src}/ast/references/rxjs.js +0 -0
  1415. /package/script/{lib → src}/ast/references/typescript.js +0 -0
  1416. /package/script/{lib → src}/ast/utils/get-type-script-builder-options.d.ts +0 -0
  1417. /package/script/{lib → src}/ast/utils/get-type-script-builder-options.js +0 -0
  1418. /package/script/{lib → src}/ast/utils/to-ts-node.d.ts +0 -0
  1419. /package/script/{lib → src}/ast/utils/to-ts-node.js +0 -0
  1420. /package/script/{lib → src}/ast/utils/write-ts-generic-parameters.d.ts +0 -0
  1421. /package/script/{lib → src}/ast/utils/write-ts-generic-parameters.js +0 -0
  1422. /package/script/{lib → src}/ast/utils/write-ts-members.d.ts +0 -0
  1423. /package/script/{lib → src}/ast/utils/write-ts-nodes.d.ts +0 -0
  1424. /package/script/{lib → src}/ast/utils/write-ts-nodes.js +0 -0
  1425. /package/script/{lib → src}/ast/utils/write-ts-parameters.d.ts +0 -0
  1426. /package/script/{lib → src}/ast/utils/write-ts-parameters.js +0 -0
  1427. /package/script/{lib → src}/common-results.d.ts +0 -0
  1428. /package/script/{lib → src}/common-results.js +0 -0
  1429. /package/script/{lib → src}/config.d.ts +0 -0
  1430. /package/script/{lib → src}/config.js +0 -0
  1431. /package/script/{lib → src}/file-builder.d.ts +0 -0
  1432. /package/script/{lib → src}/file-builder.js +0 -0
  1433. /package/script/{lib → src}/generators/file-generator.d.ts +0 -0
  1434. /package/script/{lib → src}/generators/file-generator.js +0 -0
  1435. /package/script/{lib → src}/generators/index.d.ts +0 -0
  1436. /package/script/{lib → src}/generators/index.js +0 -0
  1437. /package/script/{lib → src}/generators/models/models.d.ts +0 -0
  1438. /package/script/{lib → src}/generators/models/models.js +0 -0
  1439. /package/script/{lib → src}/generators/services/angular-services/index.d.ts +0 -0
  1440. /package/script/{lib → src}/generators/services/angular-services/index.js +0 -0
  1441. /package/script/{lib → src}/generators/services/angular-services/models.js +0 -0
  1442. /package/script/{lib → src}/generators/services/angular-services/refs.js +0 -0
  1443. /package/script/{lib → src}/generators/services/easy-network-stub/easy-network-stub-generator.js +0 -0
  1444. /package/script/{lib → src}/generators/services/easy-network-stub/index.d.ts +0 -0
  1445. /package/script/{lib → src}/generators/services/easy-network-stub/index.js +0 -0
  1446. /package/script/{lib → src}/generators/services/easy-network-stub/models.js +0 -0
  1447. /package/script/{lib → src}/generators/services/easy-network-stub/refs.js +0 -0
  1448. /package/script/{lib → src}/generators/services/fetch-clients/index.d.ts +0 -0
  1449. /package/script/{lib → src}/generators/services/fetch-clients/index.js +0 -0
  1450. /package/script/{lib → src}/generators/services/fetch-clients/models.js +0 -0
  1451. /package/script/{lib → src}/generators/services/fetch-clients/refs.js +0 -0
  1452. /package/script/{lib → src}/generators/services/k6-clients/index.d.ts +0 -0
  1453. /package/script/{lib → src}/generators/services/k6-clients/index.js +0 -0
  1454. /package/script/{lib → src}/generators/services/k6-clients/models.js +0 -0
  1455. /package/script/{lib → src}/generators/services/k6-clients/refs.js +0 -0
  1456. /package/script/{lib → src}/import-collection.d.ts +0 -0
  1457. /package/script/{lib → src}/import-collection.js +0 -0
  1458. /package/script/{lib → src}/utils.js +0 -0
@@ -0,0 +1,1202 @@
1
+ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
+
3
+ /**
4
+ * A {@link https://en.wikipedia.org/wiki/Behavior-driven_development | BDD} interface
5
+ * to `Deno.test()` API.
6
+ *
7
+ * With `@std/testing/bdd` module you can write your tests in a familiar format for
8
+ * grouping tests and adding setup/teardown hooks used by other JavaScript testing
9
+ * frameworks like Jasmine, Jest, and Mocha.
10
+ *
11
+ * The `describe` function creates a block that groups together several related
12
+ * tests. The `it` function registers an individual test case.
13
+ *
14
+ * ## Hooks
15
+ *
16
+ * There are 4 types of hooks available for test suites. A test suite can have
17
+ * multiples of each type of hook, they will be called in the order that they are
18
+ * registered. The `afterEach` and `afterAll` hooks will be called whether or not
19
+ * the test case passes. The *All hooks will be called once for the whole group
20
+ * while the *Each hooks will be called for each individual test case.
21
+ *
22
+ * - `beforeAll`: Runs before all of the tests in the test suite.
23
+ * - `afterAll`: Runs after all of the tests in the test suite finish.
24
+ * - `beforeEach`: Runs before each of the individual test cases in the test suite.
25
+ * - `afterEach`: Runs after each of the individual test cases in the test suite.
26
+ *
27
+ * If a hook is registered at the top level, a global test suite will be registered
28
+ * and all tests will belong to it. Hooks registered at the top level must be
29
+ * registered before any individual test cases or test suites.
30
+ *
31
+ * ## Focusing tests
32
+ *
33
+ * If you would like to run only specific test cases, you can do so by calling
34
+ * `it.only` instead of `it`. If you would like to run only specific test suites,
35
+ * you can do so by calling `describe.only` instead of `describe`.
36
+ *
37
+ * There is one limitation to this when using the flat test grouping style. When
38
+ * `describe` is called without being nested, it registers the test with
39
+ * `Deno.test`. If a child test case or suite is registered with `it.only` or
40
+ * `describe.only`, it will be scoped to the top test suite instead of the file. To
41
+ * make them the only tests that run in the file, you would need to register the
42
+ * top test suite with `describe.only` too.
43
+ *
44
+ * ## Ignoring tests
45
+ *
46
+ * If you would like to not run specific individual test cases, you can do so by
47
+ * calling `it.ignore` instead of `it`. If you would like to not run specific test
48
+ * suites, you can do so by calling `describe.ignore` instead of `describe`.
49
+ *
50
+ * ## Sanitization options
51
+ *
52
+ * Like `Deno.TestDefinition`, the `DescribeDefinition` and `ItDefinition` have
53
+ * sanitization options. They work in the same way.
54
+ *
55
+ * - `sanitizeExit`: Ensure the test case does not prematurely cause the process to
56
+ * exit, for example via a call to Deno.exit. Defaults to true.
57
+ * - `sanitizeOps`: Check that the number of async completed ops after the test is
58
+ * the same as number of dispatched ops. Defaults to true.
59
+ * - `sanitizeResources`: Ensure the test case does not "leak" resources - ie. the
60
+ * resource table after the test has exactly the same contents as before the
61
+ * test. Defaults to true.
62
+ *
63
+ * ## Permissions option
64
+ *
65
+ * Like `Deno.TestDefinition`, the `DescribeDefinition` and `ItDefinition` have a
66
+ * `permissions` option. They specify the permissions that should be used to run an
67
+ * individual test case or test suite. Set this to `"inherit"` to keep the calling
68
+ * thread's permissions. Set this to `"none"` to revoke all permissions.
69
+ *
70
+ * This setting defaults to `"inherit"`.
71
+ *
72
+ * There is currently one limitation to this, you cannot use the permissions option
73
+ * on an individual test case or test suite that belongs to another test suite.
74
+ * That's because internally those tests are registered with `t.step` which does
75
+ * not support the permissions option.
76
+ *
77
+ * ## Comparing to Deno\.test
78
+ *
79
+ * The default way of writing tests is using `Deno.test` and `t.step`. The
80
+ * `describe` and `it` functions have similar call signatures to `Deno.test`,
81
+ * making it easy to switch between the default style and the behavior-driven
82
+ * development style of writing tests. Internally, `describe` and `it` are
83
+ * registering tests with `Deno.test` and `t.step`.
84
+ *
85
+ * Below is an example of a test file using `Deno.test` and `t.step`. In the
86
+ * following sections there are examples of how the same test could be written with
87
+ * `describe` and `it` using nested test grouping, flat test grouping, or a mix of
88
+ * both styles.
89
+ *
90
+ * ```ts
91
+ * import {
92
+ * assertEquals,
93
+ * assertStrictEquals,
94
+ * assertThrows,
95
+ * } from "@std/assert";
96
+ *
97
+ * class User {
98
+ * static users: Map<string, User> = new Map();
99
+ * name: string;
100
+ * age?: number;
101
+ *
102
+ * constructor(name: string) {
103
+ * if (User.users.has(name)) {
104
+ * throw new Deno.errors.AlreadyExists(`User ${name} already exists`);
105
+ * }
106
+ * this.name = name;
107
+ * User.users.set(name, this);
108
+ * }
109
+ *
110
+ * getAge(): number {
111
+ * if (!this.age) {
112
+ * throw new Error("Age unknown");
113
+ * }
114
+ * return this.age;
115
+ * }
116
+ *
117
+ * setAge(age: number) {
118
+ * this.age = age;
119
+ * }
120
+ * }
121
+ *
122
+ * Deno.test("User.users initially empty", () => {
123
+ * assertEquals(User.users.size, 0);
124
+ * });
125
+ *
126
+ * Deno.test("User constructor", () => {
127
+ * try {
128
+ * const user = new User("Kyle");
129
+ * assertEquals(user.name, "Kyle");
130
+ * assertStrictEquals(User.users.get("Kyle"), user);
131
+ * } finally {
132
+ * User.users.clear();
133
+ * }
134
+ * });
135
+ *
136
+ * Deno.test("User age", async (t) => {
137
+ * const user = new User("Kyle");
138
+ *
139
+ * await t.step("getAge", () => {
140
+ * assertThrows(() => user.getAge(), Error, "Age unknown");
141
+ * user.age = 18;
142
+ * assertEquals(user.getAge(), 18);
143
+ * });
144
+ *
145
+ * await t.step("setAge", () => {
146
+ * user.setAge(18);
147
+ * assertEquals(user.getAge(), 18);
148
+ * });
149
+ * });
150
+ * ```
151
+ *
152
+ * ### Nested test grouping
153
+ *
154
+ * Tests created within the callback of a `describe` function call will belong to
155
+ * the new test suite it creates. The hooks can be created within it or be added to
156
+ * the options argument for describe.
157
+ *
158
+ * ```ts
159
+ * import {
160
+ * assertEquals,
161
+ * assertStrictEquals,
162
+ * assertThrows,
163
+ * } from "@std/assert";
164
+ * import {
165
+ * afterEach,
166
+ * beforeEach,
167
+ * describe,
168
+ * it,
169
+ * } from "@std/testing/bdd";
170
+ *
171
+ * class User {
172
+ * static users: Map<string, User> = new Map();
173
+ * name: string;
174
+ * age?: number;
175
+ *
176
+ * constructor(name: string) {
177
+ * if (User.users.has(name)) {
178
+ * throw new Deno.errors.AlreadyExists(`User ${name} already exists`);
179
+ * }
180
+ * this.name = name;
181
+ * User.users.set(name, this);
182
+ * }
183
+ *
184
+ * getAge(): number {
185
+ * if (!this.age) {
186
+ * throw new Error("Age unknown");
187
+ * }
188
+ * return this.age;
189
+ * }
190
+ *
191
+ * setAge(age: number) {
192
+ * this.age = age;
193
+ * }
194
+ * }
195
+ *
196
+ * describe("User", () => {
197
+ * it("users initially empty", () => {
198
+ * assertEquals(User.users.size, 0);
199
+ * });
200
+ *
201
+ * it("constructor", () => {
202
+ * try {
203
+ * const user = new User("Kyle");
204
+ * assertEquals(user.name, "Kyle");
205
+ * assertStrictEquals(User.users.get("Kyle"), user);
206
+ * } finally {
207
+ * User.users.clear();
208
+ * }
209
+ * });
210
+ *
211
+ * describe("age", () => {
212
+ * let user: User;
213
+ *
214
+ * beforeEach(() => {
215
+ * user = new User("Kyle");
216
+ * });
217
+ *
218
+ * afterEach(() => {
219
+ * User.users.clear();
220
+ * });
221
+ *
222
+ * it("getAge", function () {
223
+ * assertThrows(() => user.getAge(), Error, "Age unknown");
224
+ * user.age = 18;
225
+ * assertEquals(user.getAge(), 18);
226
+ * });
227
+ *
228
+ * it("setAge", function () {
229
+ * user.setAge(18);
230
+ * assertEquals(user.getAge(), 18);
231
+ * });
232
+ * });
233
+ * });
234
+ * ```
235
+ *
236
+ * ### Flat test grouping
237
+ *
238
+ * The `describe` function returns a unique symbol that can be used to reference
239
+ * the test suite for adding tests to it without having to create them within a
240
+ * callback. The gives you the ability to have test grouping without any extra
241
+ * indentation in front of the grouped tests.
242
+ *
243
+ * ```ts
244
+ * import {
245
+ * assertEquals,
246
+ * assertStrictEquals,
247
+ * assertThrows,
248
+ * } from "@std/assert";
249
+ * import {
250
+ * describe,
251
+ * it,
252
+ * } from "@std/testing/bdd";
253
+ *
254
+ * class User {
255
+ * static users: Map<string, User> = new Map();
256
+ * name: string;
257
+ * age?: number;
258
+ *
259
+ * constructor(name: string) {
260
+ * if (User.users.has(name)) {
261
+ * throw new Deno.errors.AlreadyExists(`User ${name} already exists`);
262
+ * }
263
+ * this.name = name;
264
+ * User.users.set(name, this);
265
+ * }
266
+ *
267
+ * getAge(): number {
268
+ * if (!this.age) {
269
+ * throw new Error("Age unknown");
270
+ * }
271
+ * return this.age;
272
+ * }
273
+ *
274
+ * setAge(age: number) {
275
+ * this.age = age;
276
+ * }
277
+ * }
278
+ *
279
+ * const userTests = describe("User");
280
+ *
281
+ * it(userTests, "users initially empty", () => {
282
+ * assertEquals(User.users.size, 0);
283
+ * });
284
+ *
285
+ * it(userTests, "constructor", () => {
286
+ * try {
287
+ * const user = new User("Kyle");
288
+ * assertEquals(user.name, "Kyle");
289
+ * assertStrictEquals(User.users.get("Kyle"), user);
290
+ * } finally {
291
+ * User.users.clear();
292
+ * }
293
+ * });
294
+ *
295
+ * const ageTests = describe({
296
+ * name: "age",
297
+ * suite: userTests,
298
+ * beforeEach(this: { user: User }) {
299
+ * this.user = new User("Kyle");
300
+ * },
301
+ * afterEach() {
302
+ * User.users.clear();
303
+ * },
304
+ * });
305
+ *
306
+ * it(ageTests, "getAge", function () {
307
+ * const { user } = this;
308
+ * assertThrows(() => user.getAge(), Error, "Age unknown");
309
+ * user.age = 18;
310
+ * assertEquals(user.getAge(), 18);
311
+ * });
312
+ *
313
+ * it(ageTests, "setAge", function () {
314
+ * const { user } = this;
315
+ * user.setAge(18);
316
+ * assertEquals(user.getAge(), 18);
317
+ * });
318
+ * ```
319
+ *
320
+ * ### Mixed test grouping
321
+ *
322
+ * Both nested test grouping and flat test grouping can be used together. This can
323
+ * be useful if you'd like to create deep groupings without all the extra
324
+ * indentation in front of each line.
325
+ *
326
+ * ```ts
327
+ * import {
328
+ * assertEquals,
329
+ * assertStrictEquals,
330
+ * assertThrows,
331
+ * } from "@std/assert";
332
+ * import {
333
+ * describe,
334
+ * it,
335
+ * } from "@std/testing/bdd";
336
+ *
337
+ * class User {
338
+ * static users: Map<string, User> = new Map();
339
+ * name: string;
340
+ * age?: number;
341
+ *
342
+ * constructor(name: string) {
343
+ * if (User.users.has(name)) {
344
+ * throw new Deno.errors.AlreadyExists(`User ${name} already exists`);
345
+ * }
346
+ * this.name = name;
347
+ * User.users.set(name, this);
348
+ * }
349
+ *
350
+ * getAge(): number {
351
+ * if (!this.age) {
352
+ * throw new Error("Age unknown");
353
+ * }
354
+ * return this.age;
355
+ * }
356
+ *
357
+ * setAge(age: number) {
358
+ * this.age = age;
359
+ * }
360
+ * }
361
+ *
362
+ * describe("User", () => {
363
+ * it("users initially empty", () => {
364
+ * assertEquals(User.users.size, 0);
365
+ * });
366
+ *
367
+ * it("constructor", () => {
368
+ * try {
369
+ * const user = new User("Kyle");
370
+ * assertEquals(user.name, "Kyle");
371
+ * assertStrictEquals(User.users.get("Kyle"), user);
372
+ * } finally {
373
+ * User.users.clear();
374
+ * }
375
+ * });
376
+ *
377
+ * const ageTests = describe({
378
+ * name: "age",
379
+ * beforeEach(this: { user: User }) {
380
+ * this.user = new User("Kyle");
381
+ * },
382
+ * afterEach() {
383
+ * User.users.clear();
384
+ * },
385
+ * });
386
+ *
387
+ * it(ageTests, "getAge", function () {
388
+ * const { user } = this;
389
+ * assertThrows(() => user.getAge(), Error, "Age unknown");
390
+ * user.age = 18;
391
+ * assertEquals(user.getAge(), 18);
392
+ * });
393
+ *
394
+ * it(ageTests, "setAge", function () {
395
+ * const { user } = this;
396
+ * user.setAge(18);
397
+ * assertEquals(user.getAge(), 18);
398
+ * });
399
+ * });
400
+ * ```
401
+ *
402
+ * @module
403
+ */
404
+ import * as dntShim from "../../../../../_dnt.test_shims.js";
405
+
406
+
407
+ import { getAssertionState } from "../../internal/1.0.4/assertion_state.js";
408
+ import { AssertionError } from "../../assert/1.0.6/assertion_error.js";
409
+ import {
410
+ type DescribeDefinition,
411
+ type HookNames,
412
+ type ItDefinition,
413
+ type TestSuite,
414
+ TestSuiteInternal,
415
+ } from "./_test_suite.js";
416
+ export type { DescribeDefinition, ItDefinition, TestSuite };
417
+
418
+ /** The arguments for an ItFunction. */
419
+ export type ItArgs<T> =
420
+ | [options: ItDefinition<T>]
421
+ | [
422
+ name: string,
423
+ options: Omit<ItDefinition<T>, "name">,
424
+ ]
425
+ | [
426
+ name: string,
427
+ fn: (this: T, t: dntShim.Deno.TestContext) => void | Promise<void>,
428
+ ]
429
+ | [fn: (this: T, t: dntShim.Deno.TestContext) => void | Promise<void>]
430
+ | [
431
+ name: string,
432
+ options: Omit<ItDefinition<T>, "fn" | "name">,
433
+ fn: (this: T, t: dntShim.Deno.TestContext) => void | Promise<void>,
434
+ ]
435
+ | [
436
+ options: Omit<ItDefinition<T>, "fn">,
437
+ fn: (this: T, t: dntShim.Deno.TestContext) => void | Promise<void>,
438
+ ]
439
+ | [
440
+ options: Omit<ItDefinition<T>, "fn" | "name">,
441
+ fn: (this: T, t: dntShim.Deno.TestContext) => void | Promise<void>,
442
+ ]
443
+ | [
444
+ suite: TestSuite<T>,
445
+ name: string,
446
+ options: Omit<ItDefinition<T>, "name" | "suite">,
447
+ ]
448
+ | [
449
+ suite: TestSuite<T>,
450
+ name: string,
451
+ fn: (this: T, t: dntShim.Deno.TestContext) => void | Promise<void>,
452
+ ]
453
+ | [
454
+ suite: TestSuite<T>,
455
+ fn: (this: T, t: dntShim.Deno.TestContext) => void | Promise<void>,
456
+ ]
457
+ | [
458
+ suite: TestSuite<T>,
459
+ name: string,
460
+ options: Omit<ItDefinition<T>, "fn" | "name" | "suite">,
461
+ fn: (this: T, t: dntShim.Deno.TestContext) => void | Promise<void>,
462
+ ]
463
+ | [
464
+ suite: TestSuite<T>,
465
+ options: Omit<ItDefinition<T>, "fn" | "suite">,
466
+ fn: (this: T, t: dntShim.Deno.TestContext) => void | Promise<void>,
467
+ ]
468
+ | [
469
+ suite: TestSuite<T>,
470
+ options: Omit<ItDefinition<T>, "fn" | "name" | "suite">,
471
+ fn: (this: T, t: dntShim.Deno.TestContext) => void | Promise<void>,
472
+ ];
473
+
474
+ /** Generates an ItDefinition from ItArgs. */
475
+ function itDefinition<T>(...args: ItArgs<T>): ItDefinition<T> {
476
+ let [
477
+ suiteOptionsOrNameOrFn,
478
+ optionsOrNameOrFn,
479
+ optionsOrFn,
480
+ fn,
481
+ ] = args;
482
+ let suite: TestSuite<T> | undefined = undefined;
483
+ let name: string;
484
+ let options:
485
+ | ItDefinition<T>
486
+ | Omit<ItDefinition<T>, "fn">
487
+ | Omit<ItDefinition<T>, "name">
488
+ | Omit<ItDefinition<T>, "fn" | "name">;
489
+ if (
490
+ typeof suiteOptionsOrNameOrFn === "object" &&
491
+ typeof (suiteOptionsOrNameOrFn as TestSuite<T>).symbol === "symbol"
492
+ ) {
493
+ suite = suiteOptionsOrNameOrFn as TestSuite<T>;
494
+ } else {
495
+ fn = optionsOrFn as typeof fn;
496
+ optionsOrFn = optionsOrNameOrFn as typeof optionsOrFn;
497
+ optionsOrNameOrFn = suiteOptionsOrNameOrFn as typeof optionsOrNameOrFn;
498
+ }
499
+ if (typeof optionsOrNameOrFn === "string") {
500
+ name = optionsOrNameOrFn;
501
+ if (typeof optionsOrFn === "function") {
502
+ fn = optionsOrFn;
503
+ options = {};
504
+ } else {
505
+ options = optionsOrFn!;
506
+ if (!fn) fn = (options as Omit<ItDefinition<T>, "name">).fn;
507
+ }
508
+ } else if (typeof optionsOrNameOrFn === "function") {
509
+ fn = optionsOrNameOrFn;
510
+ name = fn.name;
511
+ options = {};
512
+ } else {
513
+ options = optionsOrNameOrFn!;
514
+ if (typeof optionsOrFn === "function") {
515
+ fn = optionsOrFn;
516
+ } else {
517
+ fn = (options as ItDefinition<T>).fn;
518
+ }
519
+ name = (options as ItDefinition<T>).name ?? fn.name;
520
+ }
521
+
522
+ return {
523
+ ...(suite !== undefined ? { suite } : {}),
524
+ ...options,
525
+ name,
526
+ fn,
527
+ };
528
+ }
529
+
530
+ /** Registers an individual test case. */
531
+ export interface it {
532
+ <T>(...args: ItArgs<T>): void;
533
+
534
+ /** Registers an individual test case with only set to true. */
535
+ only<T>(...args: ItArgs<T>): void;
536
+
537
+ /** Registers an individual test case with ignore set to true. */
538
+ ignore<T>(...args: ItArgs<T>): void;
539
+
540
+ /**
541
+ * Registers an individual test case with ignore set to true. Alias of
542
+ * `.ignore()`.
543
+ */
544
+ skip<T>(...args: ItArgs<T>): void;
545
+ }
546
+
547
+ /**
548
+ * Registers an individual test case.
549
+ *
550
+ * @example Usage
551
+ * ```ts
552
+ * import { describe, it } from "@std/testing/bdd";
553
+ * import { assertEquals } from "@std/assert";
554
+ *
555
+ * describe("example", () => {
556
+ * it("should pass", () => {
557
+ * // test case
558
+ * assertEquals(2 + 2, 4);
559
+ * });
560
+ * });
561
+ * ```
562
+ *
563
+ * @typeParam T The self type of the function to implement the test case
564
+ * @param args The test case
565
+ */
566
+ export function it<T>(...args: ItArgs<T>) {
567
+ if (TestSuiteInternal.runningCount > 0) {
568
+ throw new Error(
569
+ "Cannot register new test cases after already registered test cases start running",
570
+ );
571
+ }
572
+ const assertionState = getAssertionState();
573
+ const options = itDefinition(...args);
574
+ const { suite } = options;
575
+ const testSuite = suite
576
+ ? TestSuiteInternal.suites.get(suite.symbol)
577
+ : TestSuiteInternal.current;
578
+
579
+ if (!TestSuiteInternal.started) TestSuiteInternal.started = true;
580
+ if (testSuite) {
581
+ TestSuiteInternal.addStep(testSuite, options);
582
+ } else {
583
+ const {
584
+ name,
585
+ fn,
586
+ ignore,
587
+ only,
588
+ permissions,
589
+ sanitizeExit,
590
+ sanitizeOps,
591
+ sanitizeResources,
592
+ } = options;
593
+ const opts: dntShim.Deno.TestDefinition = {
594
+ name,
595
+ async fn(t) {
596
+ TestSuiteInternal.runningCount++;
597
+ try {
598
+ await fn.call({} as T, t);
599
+ } finally {
600
+ TestSuiteInternal.runningCount--;
601
+ }
602
+
603
+ if (assertionState.checkAssertionErrorStateAndReset()) {
604
+ throw new AssertionError(
605
+ "Expected at least one assertion to be called but received none",
606
+ );
607
+ }
608
+ },
609
+ };
610
+ if (ignore !== undefined) {
611
+ opts.ignore = ignore;
612
+ }
613
+ if (only !== undefined) {
614
+ opts.only = only;
615
+ }
616
+ if (permissions !== undefined) {
617
+ opts.permissions = permissions;
618
+ }
619
+ if (sanitizeExit !== undefined) {
620
+ opts.sanitizeExit = sanitizeExit;
621
+ }
622
+ if (sanitizeOps !== undefined) {
623
+ opts.sanitizeOps = sanitizeOps;
624
+ }
625
+ if (sanitizeResources !== undefined) {
626
+ opts.sanitizeResources = sanitizeResources;
627
+ }
628
+ TestSuiteInternal.registerTest(opts);
629
+ }
630
+ }
631
+
632
+ /**
633
+ * Only execute this test case.
634
+ *
635
+ * @example Usage
636
+ * ```ts
637
+ * import { describe, it } from "@std/testing/bdd";
638
+ * import { assertEquals } from "@std/assert";
639
+ *
640
+ * describe("example", () => {
641
+ * it("should pass", () => {
642
+ * assertEquals(2 + 2, 4);
643
+ * });
644
+ *
645
+ * it.only("should pass too", () => {
646
+ * assertEquals(3 + 4, 7);
647
+ * });
648
+ * });
649
+ * ```
650
+ *
651
+ * @param args The test case
652
+ */
653
+ it.only = function itOnly<T>(...args: ItArgs<T>): void {
654
+ const options = itDefinition(...args);
655
+ return it({
656
+ ...options,
657
+ only: true,
658
+ });
659
+ };
660
+
661
+ /**
662
+ * Ignore this test case.
663
+ *
664
+ * @example Usage
665
+ * ```ts
666
+ * import { describe, it } from "@std/testing/bdd";
667
+ * import { assertEquals } from "@std/assert";
668
+ *
669
+ * describe("example", () => {
670
+ * it("should pass", () => {
671
+ * assertEquals(2 + 2, 4);
672
+ * });
673
+ *
674
+ * it.ignore("should pass too", () => {
675
+ * assertEquals(3 + 4, 7);
676
+ * });
677
+ * });
678
+ * ```
679
+ *
680
+ * @param args The test case
681
+ */
682
+ it.ignore = function itIgnore<T>(...args: ItArgs<T>): void {
683
+ const options = itDefinition(...args);
684
+ return it({
685
+ ...options,
686
+ ignore: true,
687
+ });
688
+ };
689
+
690
+ /** Skip this test case.
691
+ *
692
+ * @example Usage
693
+ * ```ts
694
+ * import { describe, it } from "@std/testing/bdd";
695
+ * import { assertEquals } from "@std/assert";
696
+ *
697
+ * describe("example", () => {
698
+ * it("should pass", () => {
699
+ * assertEquals(2 + 2, 4);
700
+ * });
701
+ *
702
+ * it.skip("should pass too", () => {
703
+ * assertEquals(3 + 4, 7);
704
+ * });
705
+ * });
706
+ * ```
707
+ *
708
+ * @param args The test case
709
+ */
710
+ it.skip = function itSkip<T>(...args: ItArgs<T>): void {
711
+ it.ignore(...args);
712
+ };
713
+
714
+ /**
715
+ * Alias of {@linkcode it}
716
+ *
717
+ * Registers an individual test case.
718
+ *
719
+ * @example Usage
720
+ * ```ts
721
+ * import { test } from "@std/testing/bdd";
722
+ * import { assertEquals } from "@std/assert";
723
+ *
724
+ * test("a test case", () => {
725
+ * // test case
726
+ * assertEquals(2 + 2, 4);
727
+ * });
728
+ * ```
729
+ *
730
+ * @typeParam T The self type of the function to implement the test case
731
+ * @param args The test case
732
+ */
733
+ export function test<T>(...args: ItArgs<T>) {
734
+ it(...args);
735
+ }
736
+
737
+ function addHook<T>(
738
+ name: HookNames,
739
+ fn: (this: T) => void | Promise<void>,
740
+ ) {
741
+ if (!TestSuiteInternal.current) {
742
+ if (TestSuiteInternal.started) {
743
+ throw new Error(
744
+ "Cannot add global hooks after a global test is registered",
745
+ );
746
+ }
747
+ TestSuiteInternal.current = new TestSuiteInternal({
748
+ name: "global",
749
+ [name]: fn,
750
+ });
751
+ } else {
752
+ TestSuiteInternal.setHook(TestSuiteInternal.current!, name, fn);
753
+ }
754
+ }
755
+
756
+ /**
757
+ * Run some shared setup before all of the tests in the suite.
758
+ *
759
+ * @example Usage
760
+ * ```ts
761
+ * import { describe, it, beforeAll } from "@std/testing/bdd";
762
+ * import { assertEquals } from "@std/assert";
763
+ *
764
+ * beforeAll(() => {
765
+ * console.log("beforeAll");
766
+ * });
767
+ *
768
+ * describe("example", () => {
769
+ * it("should pass", () => {
770
+ * // test case
771
+ * assertEquals(2 + 2, 4);
772
+ * });
773
+ * });
774
+ * ```
775
+ *
776
+ * @typeParam T The self type of the function
777
+ * @param fn The function to implement the setup behavior.
778
+ */
779
+ export function beforeAll<T>(
780
+ fn: (this: T) => void | Promise<void>,
781
+ ) {
782
+ addHook("beforeAll", fn);
783
+ }
784
+
785
+ /**
786
+ * Alias of {@linkcode beforeAll}
787
+ *
788
+ * Run some shared setup before all of the tests in the suite.
789
+ *
790
+ * @example Usage
791
+ * ```ts
792
+ * import { describe, it, before } from "@std/testing/bdd";
793
+ * import { assertEquals } from "@std/assert";
794
+ *
795
+ * before(() => {
796
+ * console.log("before");
797
+ * });
798
+ *
799
+ * describe("example", () => {
800
+ * it("should pass", () => {
801
+ * // test case
802
+ * assertEquals(2 + 2, 4);
803
+ * });
804
+ * });
805
+ * ```
806
+ *
807
+ * @typeParam T The self type of the function
808
+ * @param fn The function to implement the setup behavior.
809
+ */
810
+ export function before<T>(
811
+ fn: (this: T) => void | Promise<void>,
812
+ ) {
813
+ beforeAll(fn);
814
+ }
815
+
816
+ /**
817
+ * Run some shared teardown after all of the tests in the suite.
818
+ *
819
+ * @example Usage
820
+ * ```ts
821
+ * import { describe, it, afterAll } from "@std/testing/bdd";
822
+ * import { assertEquals } from "@std/assert";
823
+ *
824
+ * afterAll(() => {
825
+ * console.log("afterAll");
826
+ * });
827
+ *
828
+ * describe("example", () => {
829
+ * it("should pass", () => {
830
+ * // test case
831
+ * assertEquals(2 + 2, 4);
832
+ * });
833
+ * });
834
+ * ```
835
+ *
836
+ * @typeParam T The self type of the function
837
+ * @param fn The function to implement the teardown behavior.
838
+ */
839
+ export function afterAll<T>(
840
+ fn: (this: T) => void | Promise<void>,
841
+ ) {
842
+ addHook("afterAll", fn);
843
+ }
844
+
845
+ /**
846
+ * Alias of {@linkcode afterAll}.
847
+ *
848
+ * Run some shared teardown after all of the tests in the suite.
849
+ *
850
+ * @example Usage
851
+ * ```ts
852
+ * import { describe, it, after } from "@std/testing/bdd";
853
+ * import { assertEquals } from "@std/assert";
854
+ *
855
+ * after(() => {
856
+ * console.log("after");
857
+ * });
858
+ *
859
+ * describe("example", () => {
860
+ * it("should pass", () => {
861
+ * // test case
862
+ * assertEquals(2 + 2, 4);
863
+ * });
864
+ * });
865
+ * ```
866
+ *
867
+ * @typeParam T The self type of the function
868
+ * @param fn The function to implement the teardown behavior.
869
+ */
870
+ export function after<T>(
871
+ fn: (this: T) => void | Promise<void>,
872
+ ) {
873
+ afterAll(fn);
874
+ }
875
+
876
+ /**
877
+ * Run some shared setup before each test in the suite.
878
+ *
879
+ * @example Usage
880
+ * ```ts
881
+ * import { describe, it, beforeEach } from "@std/testing/bdd";
882
+ * import { assertEquals } from "@std/assert";
883
+ *
884
+ * beforeEach(() => {
885
+ * console.log("beforeEach");
886
+ * });
887
+ *
888
+ * describe("example", () => {
889
+ * it("should pass", () => {
890
+ * // test case
891
+ * assertEquals(2 + 2, 4);
892
+ * });
893
+ * });
894
+ * ```
895
+ *
896
+ * @typeParam T The self type of the function
897
+ * @param fn The function to implement the shared setup behavior
898
+ */
899
+ export function beforeEach<T>(
900
+ fn: (this: T) => void | Promise<void>,
901
+ ) {
902
+ addHook("beforeEach", fn);
903
+ }
904
+
905
+ /**
906
+ * Run some shared teardown after each test in the suite.
907
+ *
908
+ * @example Usage
909
+ * ```ts
910
+ * import { describe, it, afterEach } from "@std/testing/bdd";
911
+ * import { assertEquals } from "@std/assert";
912
+ *
913
+ * afterEach(() => {
914
+ * console.log("afterEach");
915
+ * });
916
+ *
917
+ * describe("example", () => {
918
+ * it("should pass", () => {
919
+ * // test case
920
+ * assertEquals(2 + 2, 4);
921
+ * });
922
+ * });
923
+ * ```
924
+ *
925
+ * @typeParam T The self type of the function
926
+ * @param fn The function to implement the shared teardown behavior
927
+ */
928
+ export function afterEach<T>(
929
+ fn: (this: T) => void | Promise<void>,
930
+ ) {
931
+ addHook("afterEach", fn);
932
+ }
933
+
934
+ /** The arguments for a DescribeFunction. */
935
+ export type DescribeArgs<T> =
936
+ | [options: DescribeDefinition<T>]
937
+ | [name: string]
938
+ | [
939
+ name: string,
940
+ options: Omit<DescribeDefinition<T>, "name">,
941
+ ]
942
+ | [name: string, fn: () => void | undefined]
943
+ | [fn: () => void | undefined]
944
+ | [
945
+ name: string,
946
+ options: Omit<DescribeDefinition<T>, "fn" | "name">,
947
+ fn: () => void | undefined,
948
+ ]
949
+ | [
950
+ options: Omit<DescribeDefinition<T>, "fn">,
951
+ fn: () => void | undefined,
952
+ ]
953
+ | [
954
+ options: Omit<DescribeDefinition<T>, "fn" | "name">,
955
+ fn: () => void | undefined,
956
+ ]
957
+ | [
958
+ suite: TestSuite<T>,
959
+ name: string,
960
+ ]
961
+ | [
962
+ suite: TestSuite<T>,
963
+ name: string,
964
+ options: Omit<DescribeDefinition<T>, "name" | "suite">,
965
+ ]
966
+ | [
967
+ suite: TestSuite<T>,
968
+ name: string,
969
+ fn: () => void | undefined,
970
+ ]
971
+ | [
972
+ suite: TestSuite<T>,
973
+ fn: () => void | undefined,
974
+ ]
975
+ | [
976
+ suite: TestSuite<T>,
977
+ name: string,
978
+ options: Omit<DescribeDefinition<T>, "fn" | "name" | "suite">,
979
+ fn: () => void | undefined,
980
+ ]
981
+ | [
982
+ suite: TestSuite<T>,
983
+ options: Omit<DescribeDefinition<T>, "fn" | "suite">,
984
+ fn: () => void | undefined,
985
+ ]
986
+ | [
987
+ suite: TestSuite<T>,
988
+ options: Omit<DescribeDefinition<T>, "fn" | "name" | "suite">,
989
+ fn: () => void | undefined,
990
+ ];
991
+
992
+ /** Generates a DescribeDefinition from DescribeArgs. */
993
+ function describeDefinition<T>(
994
+ ...args: DescribeArgs<T>
995
+ ): DescribeDefinition<T> {
996
+ let [
997
+ suiteOptionsOrNameOrFn,
998
+ optionsOrNameOrFn,
999
+ optionsOrFn,
1000
+ fn,
1001
+ ] = args;
1002
+ let suite: TestSuite<T> | undefined = undefined;
1003
+ let name: string;
1004
+ let options:
1005
+ | DescribeDefinition<T>
1006
+ | Omit<DescribeDefinition<T>, "fn">
1007
+ | Omit<DescribeDefinition<T>, "name">
1008
+ | Omit<DescribeDefinition<T>, "fn" | "name">;
1009
+ if (
1010
+ typeof suiteOptionsOrNameOrFn === "object" &&
1011
+ typeof (suiteOptionsOrNameOrFn as TestSuite<T>).symbol === "symbol"
1012
+ ) {
1013
+ suite = suiteOptionsOrNameOrFn as TestSuite<T>;
1014
+ } else {
1015
+ fn = optionsOrFn as typeof fn;
1016
+ optionsOrFn = optionsOrNameOrFn as typeof optionsOrFn;
1017
+ optionsOrNameOrFn = suiteOptionsOrNameOrFn as typeof optionsOrNameOrFn;
1018
+ }
1019
+ if (typeof optionsOrNameOrFn === "string") {
1020
+ name = optionsOrNameOrFn;
1021
+ if (typeof optionsOrFn === "function") {
1022
+ fn = optionsOrFn;
1023
+ options = {};
1024
+ } else {
1025
+ options = optionsOrFn ?? {};
1026
+ if (fn === undefined) {
1027
+ fn = (options as Omit<DescribeDefinition<T>, "name">).fn;
1028
+ }
1029
+ }
1030
+ } else if (typeof optionsOrNameOrFn === "function") {
1031
+ fn = optionsOrNameOrFn;
1032
+ name = fn.name;
1033
+ options = {};
1034
+ } else {
1035
+ options = optionsOrNameOrFn ?? {};
1036
+ if (typeof optionsOrFn === "function") {
1037
+ fn = optionsOrFn;
1038
+ } else {
1039
+ fn = (options as DescribeDefinition<T>).fn;
1040
+ }
1041
+ name = (options as DescribeDefinition<T>).name ?? fn?.name ?? "";
1042
+ }
1043
+
1044
+ if (suite === undefined) {
1045
+ suite = options.suite;
1046
+ }
1047
+ if (suite === undefined && TestSuiteInternal.current) {
1048
+ const { symbol } = TestSuiteInternal.current;
1049
+ suite = { symbol };
1050
+ }
1051
+
1052
+ return {
1053
+ ...options,
1054
+ suite: suite!,
1055
+ name,
1056
+ fn: fn!,
1057
+ };
1058
+ }
1059
+
1060
+ /** Registers a test suite. */
1061
+ export interface describe {
1062
+ <T>(...args: DescribeArgs<T>): TestSuite<T>;
1063
+
1064
+ /** Registers a test suite with only set to true. */
1065
+ only<T>(...args: DescribeArgs<T>): TestSuite<T>;
1066
+
1067
+ /** Registers a test suite with ignore set to true. */
1068
+ ignore<T>(...args: DescribeArgs<T>): TestSuite<T>;
1069
+
1070
+ /** Registers a test suite with ignore set to true. Alias of `.ignore()`. */
1071
+ skip<T>(...args: ItArgs<T>): void;
1072
+ }
1073
+
1074
+ /**
1075
+ * Registers a test suite.
1076
+ *
1077
+ * @example Usage
1078
+ * ```ts
1079
+ * import { describe, it } from "@std/testing/bdd";
1080
+ * import { assertEquals } from "@std/assert";
1081
+ *
1082
+ * describe("example", () => {
1083
+ * it("should pass", () => {
1084
+ * // test case
1085
+ * assertEquals(2 + 2, 4);
1086
+ * });
1087
+ * });
1088
+ * ```
1089
+ *
1090
+ * @typeParam T The self type of the test suite body.
1091
+ * @param args The test suite body.
1092
+ * @returns The test suite
1093
+ */
1094
+ export function describe<T>(
1095
+ ...args: DescribeArgs<T>
1096
+ ): TestSuite<T> {
1097
+ if (TestSuiteInternal.runningCount > 0) {
1098
+ throw new Error(
1099
+ "Cannot register new test suites after already registered test cases start running",
1100
+ );
1101
+ }
1102
+ const options = describeDefinition(...args);
1103
+ if (!TestSuiteInternal.started) TestSuiteInternal.started = true;
1104
+ const { symbol } = new TestSuiteInternal(options);
1105
+ return { symbol };
1106
+ }
1107
+
1108
+ /**
1109
+ * Only execute this test suite.
1110
+ *
1111
+ * @example Usage
1112
+ * ```ts
1113
+ * import { describe, it, beforeAll } from "@std/testing/bdd";
1114
+ * import { assertEquals } from "@std/assert";
1115
+ *
1116
+ * describe("example", () => {
1117
+ * it("should pass", () => {
1118
+ * assertEquals(2 + 2, 4);
1119
+ * });
1120
+ * });
1121
+ *
1122
+ * // Only this test suite will run
1123
+ * describe.only("example 2", () => {
1124
+ * it("should pass too", () => {
1125
+ * assertEquals(3 + 4, 7);
1126
+ * });
1127
+ * });
1128
+ * ```
1129
+ *
1130
+ * @param args The test suite body
1131
+ */
1132
+ describe.only = function describeOnly<T>(
1133
+ ...args: DescribeArgs<T>
1134
+ ): TestSuite<T> {
1135
+ const options = describeDefinition(...args);
1136
+ return describe({
1137
+ ...options,
1138
+ only: true,
1139
+ });
1140
+ };
1141
+
1142
+ /**
1143
+ * Ignore the test suite.
1144
+ *
1145
+ * @example Usage
1146
+ * ```ts
1147
+ * import { describe, it, beforeAll } from "@std/testing/bdd";
1148
+ * import { assertEquals } from "@std/assert";
1149
+ *
1150
+ * describe("example", () => {
1151
+ * it("should pass", () => {
1152
+ * assertEquals(2 + 2, 4);
1153
+ * });
1154
+ * });
1155
+ *
1156
+ * describe.ignore("example 2", () => {
1157
+ * it("should pass too", () => {
1158
+ * assertEquals(3 + 4, 7);
1159
+ * });
1160
+ * });
1161
+ * ```
1162
+ *
1163
+ * @param args The test suite body
1164
+ */
1165
+ describe.ignore = function describeIgnore<T>(
1166
+ ...args: DescribeArgs<T>
1167
+ ): TestSuite<T> {
1168
+ const options = describeDefinition(...args);
1169
+ return describe({
1170
+ ...options,
1171
+ ignore: true,
1172
+ });
1173
+ };
1174
+
1175
+ /**
1176
+ * Skip the test suite.
1177
+ *
1178
+ * @example Usage
1179
+ * ```ts
1180
+ * import { describe, it, beforeAll } from "@std/testing/bdd";
1181
+ * import { assertEquals } from "@std/assert";
1182
+ *
1183
+ * describe("example", () => {
1184
+ * it("should pass", () => {
1185
+ * assertEquals(2 + 2, 4);
1186
+ * });
1187
+ * });
1188
+ *
1189
+ * describe.skip("example 2", () => {
1190
+ * it("should pass too", () => {
1191
+ * assertEquals(3 + 4, 7);
1192
+ * });
1193
+ * });
1194
+ * ```
1195
+ *
1196
+ * @param args The test suite body
1197
+ */
1198
+ describe.skip = function describeSkip<T>(
1199
+ ...args: DescribeArgs<T>
1200
+ ): TestSuite<T> {
1201
+ return describe.ignore(...args);
1202
+ };