@codeperfect/eslint-plugin 1.0.0 → 2.1.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 (587) hide show
  1. package/README.md +26 -4
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/{custom-rules.d.ts → application/custom-rules.d.ts} +3 -0
  4. package/dist/application/custom-rules.d.ts.map +1 -0
  5. package/dist/application/custom-rules.js +74 -0
  6. package/dist/application/index.d.ts +4 -0
  7. package/dist/application/index.d.ts.map +1 -0
  8. package/dist/application/index.js +3 -0
  9. package/dist/codeperfect-eslint-plugin-1.0.0.tgz +0 -0
  10. package/dist/domain/architecture/consistent-barrel-files/barrel-file-utilities.d.ts +56 -0
  11. package/dist/domain/architecture/consistent-barrel-files/barrel-file-utilities.d.ts.map +1 -0
  12. package/dist/domain/architecture/consistent-barrel-files/barrel-file-utilities.js +149 -0
  13. package/dist/{architecture → domain/architecture}/consistent-barrel-files/consistent-barrel-files-listeners.d.ts +4 -4
  14. package/dist/domain/architecture/consistent-barrel-files/consistent-barrel-files-listeners.d.ts.map +1 -0
  15. package/dist/domain/architecture/consistent-barrel-files/consistent-barrel-files-listeners.js +98 -0
  16. package/dist/domain/architecture/consistent-barrel-files/consistent-barrel-files-options.d.ts +45 -0
  17. package/dist/domain/architecture/consistent-barrel-files/consistent-barrel-files-options.d.ts.map +1 -0
  18. package/dist/domain/architecture/consistent-barrel-files/consistent-barrel-files-options.js +64 -0
  19. package/dist/{architecture → domain/architecture}/consistent-barrel-files/exports-only-rule-test-utilities.d.ts +5 -4
  20. package/dist/domain/architecture/consistent-barrel-files/exports-only-rule-test-utilities.d.ts.map +1 -0
  21. package/dist/domain/architecture/consistent-barrel-files/exports-only-rule-test-utilities.js +87 -0
  22. package/dist/domain/architecture/consistent-barrel-files/exports-only-rule.d.ts.map +1 -0
  23. package/dist/domain/architecture/consistent-barrel-files/exports-only-rule.js +145 -0
  24. package/dist/domain/architecture/consistent-barrel-files/index.d.ts +5 -0
  25. package/dist/domain/architecture/consistent-barrel-files/index.d.ts.map +1 -0
  26. package/dist/domain/architecture/consistent-barrel-files/index.js +4 -0
  27. package/dist/domain/architecture/consistent-barrel-files/no-reexports-outside-barrels-rule.d.ts.map +1 -0
  28. package/dist/domain/architecture/consistent-barrel-files/no-reexports-outside-barrels-rule.js +90 -0
  29. package/dist/{architecture → domain/architecture}/consistent-barrel-files/no-reexports-outside-barrels-test-utilities.d.ts +1 -1
  30. package/dist/domain/architecture/consistent-barrel-files/no-reexports-outside-barrels-test-utilities.d.ts.map +1 -0
  31. package/dist/domain/architecture/consistent-barrel-files/no-reexports-outside-barrels-test-utilities.js +91 -0
  32. package/dist/{architecture → domain/architecture}/consistent-barrel-files/no-reexports-outside-barrels-utilities.d.ts +4 -6
  33. package/dist/domain/architecture/consistent-barrel-files/no-reexports-outside-barrels-utilities.d.ts.map +1 -0
  34. package/dist/domain/architecture/consistent-barrel-files/no-reexports-outside-barrels-utilities.js +95 -0
  35. package/dist/domain/architecture/consistent-barrel-files/rule.d.ts.map +1 -0
  36. package/dist/domain/architecture/consistent-barrel-files/rule.js +51 -0
  37. package/dist/domain/architecture/consistent-barrel-files/rule.repeat-runs.d.ts +4 -0
  38. package/dist/domain/architecture/consistent-barrel-files/rule.repeat-runs.d.ts.map +1 -0
  39. package/dist/domain/architecture/consistent-barrel-files/rule.repeat-runs.js +4 -0
  40. package/dist/{architecture → domain/architecture}/consistent-barrel-files/test-helpers.d.ts +48 -48
  41. package/dist/domain/architecture/consistent-barrel-files/test-helpers.d.ts.map +1 -0
  42. package/dist/domain/architecture/consistent-barrel-files/test-helpers.file-writers.d.ts +20 -0
  43. package/dist/domain/architecture/consistent-barrel-files/test-helpers.file-writers.d.ts.map +1 -0
  44. package/dist/domain/architecture/consistent-barrel-files/test-helpers.file-writers.js +25 -0
  45. package/dist/domain/architecture/consistent-barrel-files/test-helpers.js +235 -0
  46. package/dist/domain/architecture/consistent-barrel-files/types.d.ts +19 -0
  47. package/dist/domain/architecture/consistent-barrel-files/types.d.ts.map +1 -0
  48. package/dist/domain/architecture/consistent-barrel-files/types.js +2 -0
  49. package/dist/{architecture → domain/architecture}/index.d.ts +1 -1
  50. package/dist/domain/architecture/index.d.ts.map +1 -0
  51. package/dist/domain/architecture/index.js +2 -0
  52. package/dist/{core → domain/core}/index.d.ts +2 -2
  53. package/dist/domain/core/index.d.ts.map +1 -0
  54. package/dist/domain/core/index.js +3 -0
  55. package/dist/domain/core/no-multiple-declarators/index.d.ts +2 -0
  56. package/dist/domain/core/no-multiple-declarators/index.d.ts.map +1 -0
  57. package/dist/domain/core/no-multiple-declarators/index.js +2 -0
  58. package/dist/domain/core/no-multiple-declarators/rule-test-helpers.d.ts +101 -0
  59. package/dist/domain/core/no-multiple-declarators/rule-test-helpers.d.ts.map +1 -0
  60. package/dist/domain/core/no-multiple-declarators/rule-test-helpers.js +108 -0
  61. package/dist/{core → domain/core}/no-multiple-declarators/rule.d.ts +1 -0
  62. package/dist/domain/core/no-multiple-declarators/rule.d.ts.map +1 -0
  63. package/dist/domain/core/no-multiple-declarators/rule.fixes.d.ts +35 -0
  64. package/dist/domain/core/no-multiple-declarators/rule.fixes.d.ts.map +1 -0
  65. package/dist/domain/core/no-multiple-declarators/rule.fixes.js +95 -0
  66. package/dist/domain/core/no-multiple-declarators/rule.guardrails.d.ts +4 -0
  67. package/dist/domain/core/no-multiple-declarators/rule.guardrails.d.ts.map +1 -0
  68. package/dist/domain/core/no-multiple-declarators/rule.guardrails.js +4 -0
  69. package/dist/domain/core/no-multiple-declarators/rule.js +222 -0
  70. package/dist/domain/core/no-multiple-declarators/rule.mocked-types.d.ts +4 -0
  71. package/dist/domain/core/no-multiple-declarators/rule.mocked-types.d.ts.map +1 -0
  72. package/dist/domain/core/no-multiple-declarators/rule.mocked-types.js +4 -0
  73. package/dist/domain/core/no-multiple-declarators/types.d.ts +77 -0
  74. package/dist/domain/core/no-multiple-declarators/types.d.ts.map +1 -0
  75. package/dist/domain/core/no-multiple-declarators/types.js +38 -0
  76. package/dist/domain/core/prefer-interface-types/index.d.ts +2 -0
  77. package/dist/domain/core/prefer-interface-types/index.d.ts.map +1 -0
  78. package/dist/domain/core/prefer-interface-types/index.js +2 -0
  79. package/dist/domain/core/prefer-interface-types/rule.d.ts.map +1 -0
  80. package/dist/domain/core/prefer-interface-types/rule.js +148 -0
  81. package/dist/domain/core/prefer-interface-types/test-helpers.d.ts.map +1 -0
  82. package/dist/domain/core/prefer-interface-types/test-helpers.js +116 -0
  83. package/dist/{custom-rule-documentation.d.ts → domain/custom-rule-documentation.d.ts} +3 -1
  84. package/dist/domain/custom-rule-documentation.d.ts.map +1 -0
  85. package/dist/domain/custom-rule-documentation.js +36 -0
  86. package/dist/domain/docs/index.d.ts +4 -0
  87. package/dist/domain/docs/index.d.ts.map +1 -0
  88. package/dist/domain/docs/index.js +4 -0
  89. package/dist/domain/docs/no-interface-member-docs/comment-utilities-test-helpers.d.ts.map +1 -0
  90. package/dist/domain/docs/no-interface-member-docs/comment-utilities-test-helpers.js +129 -0
  91. package/dist/{docs → domain/docs}/no-interface-member-docs/comment-utilities.d.ts +1 -1
  92. package/dist/domain/docs/no-interface-member-docs/comment-utilities.d.ts.map +1 -0
  93. package/dist/domain/docs/no-interface-member-docs/comment-utilities.js +146 -0
  94. package/dist/domain/docs/no-interface-member-docs/index.d.ts +2 -0
  95. package/dist/domain/docs/no-interface-member-docs/index.d.ts.map +1 -0
  96. package/dist/domain/docs/no-interface-member-docs/index.js +2 -0
  97. package/dist/{docs → domain/docs}/no-interface-member-docs/parameter-tags.d.ts +1 -1
  98. package/dist/domain/docs/no-interface-member-docs/parameter-tags.d.ts.map +1 -0
  99. package/dist/domain/docs/no-interface-member-docs/parameter-tags.js +101 -0
  100. package/dist/{docs → domain/docs}/no-interface-member-docs/parameter-utilities.d.ts +1 -1
  101. package/dist/domain/docs/no-interface-member-docs/parameter-utilities.d.ts.map +1 -0
  102. package/dist/domain/docs/no-interface-member-docs/parameter-utilities.js +125 -0
  103. package/dist/domain/docs/no-interface-member-docs/rule.d.ts.map +1 -0
  104. package/dist/domain/docs/no-interface-member-docs/rule.js +171 -0
  105. package/dist/domain/docs/no-interface-member-docs/test-helpers.d.ts.map +1 -0
  106. package/dist/{docs → domain/docs}/no-interface-member-docs/test-helpers.js +2 -2
  107. package/dist/{docs → domain/docs}/no-interface-member-docs/types.d.ts +2 -2
  108. package/dist/domain/docs/no-interface-member-docs/types.d.ts.map +1 -0
  109. package/dist/domain/docs/no-interface-member-docs/types.js +2 -0
  110. package/dist/domain/docs/require-example-language/create-fixer.d.ts +5 -0
  111. package/dist/domain/docs/require-example-language/create-fixer.d.ts.map +1 -0
  112. package/dist/domain/docs/require-example-language/create-fixer.js +5 -0
  113. package/dist/domain/docs/require-example-language/empty-fence-fixes.d.ts.map +1 -0
  114. package/dist/domain/docs/require-example-language/empty-fence-fixes.js +169 -0
  115. package/dist/domain/docs/require-example-language/example-utilities.d.ts.map +1 -0
  116. package/dist/domain/docs/require-example-language/example-utilities.js +76 -0
  117. package/dist/{docs → domain/docs}/require-example-language/examples.d.ts +1 -1
  118. package/dist/domain/docs/require-example-language/examples.d.ts.map +1 -0
  119. package/dist/domain/docs/require-example-language/examples.js +181 -0
  120. package/dist/{docs → domain/docs}/require-example-language/fixes.d.ts +2 -2
  121. package/dist/domain/docs/require-example-language/fixes.d.ts.map +1 -0
  122. package/dist/domain/docs/require-example-language/fixes.js +182 -0
  123. package/dist/domain/docs/require-example-language/index.d.ts +3 -0
  124. package/dist/domain/docs/require-example-language/index.d.ts.map +1 -0
  125. package/dist/domain/docs/require-example-language/index.js +2 -0
  126. package/dist/{docs → domain/docs}/require-example-language/reporting.d.ts +1 -1
  127. package/dist/domain/docs/require-example-language/reporting.d.ts.map +1 -0
  128. package/dist/domain/docs/require-example-language/reporting.js +148 -0
  129. package/dist/domain/docs/require-example-language/rule.d.ts.map +1 -0
  130. package/dist/domain/docs/require-example-language/rule.js +37 -0
  131. package/dist/domain/docs/require-example-language/types.d.ts.map +1 -0
  132. package/dist/domain/docs/require-example-language/types.js +2 -0
  133. package/dist/domain/docs/single-line-jsdoc/index.d.ts +2 -0
  134. package/dist/domain/docs/single-line-jsdoc/index.d.ts.map +1 -0
  135. package/dist/domain/docs/single-line-jsdoc/index.js +2 -0
  136. package/dist/domain/docs/single-line-jsdoc/rule.d.ts +4 -0
  137. package/dist/domain/docs/single-line-jsdoc/rule.d.ts.map +1 -0
  138. package/dist/domain/docs/single-line-jsdoc/rule.edge-cases.d.ts +4 -0
  139. package/dist/domain/docs/single-line-jsdoc/rule.edge-cases.d.ts.map +1 -0
  140. package/dist/domain/docs/single-line-jsdoc/rule.edge-cases.js +5 -0
  141. package/dist/domain/docs/single-line-jsdoc/rule.js +201 -0
  142. package/dist/domain/docs/single-line-jsdoc/rule.node-lookups.d.ts +4 -0
  143. package/dist/domain/docs/single-line-jsdoc/rule.node-lookups.d.ts.map +1 -0
  144. package/dist/domain/docs/single-line-jsdoc/rule.node-lookups.js +5 -0
  145. package/dist/domain/docs/single-line-jsdoc/single-line-jsdoc-content.d.ts.map +1 -0
  146. package/dist/domain/docs/single-line-jsdoc/single-line-jsdoc-content.js +95 -0
  147. package/dist/{docs → domain/docs}/single-line-jsdoc/single-line-jsdoc-utilities.d.ts +1 -1
  148. package/dist/domain/docs/single-line-jsdoc/single-line-jsdoc-utilities.d.ts.map +1 -0
  149. package/dist/domain/docs/single-line-jsdoc/single-line-jsdoc-utilities.js +140 -0
  150. package/dist/domain/docs/test-helpers.d.ts.map +1 -0
  151. package/dist/domain/docs/test-helpers.js +107 -0
  152. package/dist/domain/index.d.ts +6 -0
  153. package/dist/domain/index.d.ts.map +1 -0
  154. package/dist/domain/index.js +6 -0
  155. package/dist/domain/testing/aaa/analyzer.analysis.d.ts +34 -0
  156. package/dist/domain/testing/aaa/analyzer.analysis.d.ts.map +1 -0
  157. package/dist/domain/testing/aaa/analyzer.analysis.helpers.d.ts +145 -0
  158. package/dist/domain/testing/aaa/analyzer.analysis.helpers.d.ts.map +1 -0
  159. package/dist/domain/testing/aaa/analyzer.analysis.helpers.js +203 -0
  160. package/dist/domain/testing/aaa/analyzer.analysis.js +82 -0
  161. package/dist/domain/testing/aaa/analyzer.analysis.unsupported.d.ts +4 -0
  162. package/dist/domain/testing/aaa/analyzer.analysis.unsupported.d.ts.map +1 -0
  163. package/dist/domain/testing/aaa/analyzer.analysis.unsupported.js +4 -0
  164. package/dist/domain/testing/aaa/analyzer.assertions.d.ts +18 -0
  165. package/dist/domain/testing/aaa/analyzer.assertions.d.ts.map +1 -0
  166. package/dist/domain/testing/aaa/analyzer.assertions.destructured.d.ts +4 -0
  167. package/dist/domain/testing/aaa/analyzer.assertions.destructured.d.ts.map +1 -0
  168. package/dist/domain/testing/aaa/analyzer.assertions.destructured.js +4 -0
  169. package/dist/domain/testing/aaa/analyzer.assertions.helpers.d.ts +95 -0
  170. package/dist/domain/testing/aaa/analyzer.assertions.helpers.d.ts.map +1 -0
  171. package/dist/domain/testing/aaa/analyzer.assertions.helpers.js +185 -0
  172. package/dist/domain/testing/aaa/analyzer.assertions.js +33 -0
  173. package/dist/domain/testing/aaa/analyzer.assertions.operands.d.ts +64 -0
  174. package/dist/domain/testing/aaa/analyzer.assertions.operands.d.ts.map +1 -0
  175. package/dist/domain/testing/aaa/analyzer.assertions.operands.js +105 -0
  176. package/dist/domain/testing/aaa/analyzer.classification.d.ts +16 -0
  177. package/dist/domain/testing/aaa/analyzer.classification.d.ts.map +1 -0
  178. package/dist/domain/testing/aaa/analyzer.classification.helpers.d.ts +77 -0
  179. package/dist/domain/testing/aaa/analyzer.classification.helpers.d.ts.map +1 -0
  180. package/dist/domain/testing/aaa/analyzer.classification.helpers.js +203 -0
  181. package/dist/domain/testing/aaa/analyzer.classification.js +31 -0
  182. package/dist/domain/testing/aaa/analyzer.classification.member-patterns.d.ts +9 -0
  183. package/dist/domain/testing/aaa/analyzer.classification.member-patterns.d.ts.map +1 -0
  184. package/dist/domain/testing/aaa/analyzer.classification.member-patterns.js +10 -0
  185. package/dist/domain/testing/aaa/analyzer.classification.mutations.d.ts +4 -0
  186. package/dist/domain/testing/aaa/analyzer.classification.mutations.d.ts.map +1 -0
  187. package/dist/domain/testing/aaa/analyzer.classification.mutations.js +4 -0
  188. package/dist/domain/testing/aaa/analyzer.classification.traversal.d.ts +15 -0
  189. package/dist/domain/testing/aaa/analyzer.classification.traversal.d.ts.map +1 -0
  190. package/dist/domain/testing/aaa/analyzer.classification.traversal.js +34 -0
  191. package/dist/domain/testing/aaa/analyzer.d.ts +46 -0
  192. package/dist/domain/testing/aaa/analyzer.d.ts.map +1 -0
  193. package/dist/domain/testing/aaa/analyzer.js +59 -0
  194. package/dist/domain/testing/aaa/analyzer.super.d.ts +106 -0
  195. package/dist/domain/testing/aaa/analyzer.super.d.ts.map +1 -0
  196. package/dist/domain/testing/aaa/analyzer.super.helpers.d.ts +27 -0
  197. package/dist/domain/testing/aaa/analyzer.super.helpers.d.ts.map +1 -0
  198. package/dist/domain/testing/aaa/analyzer.super.helpers.js +66 -0
  199. package/dist/domain/testing/aaa/analyzer.super.js +211 -0
  200. package/dist/{testing → domain/testing}/aaa/index.d.ts +2 -2
  201. package/dist/domain/testing/aaa/index.d.ts.map +1 -0
  202. package/dist/domain/testing/aaa/index.js +2 -0
  203. package/dist/domain/testing/aaa/types.d.ts +58 -0
  204. package/dist/domain/testing/aaa/types.d.ts.map +1 -0
  205. package/dist/domain/testing/aaa/types.js +2 -0
  206. package/dist/domain/testing/assert-actual-expected-names/index.d.ts +2 -0
  207. package/dist/domain/testing/assert-actual-expected-names/index.d.ts.map +1 -0
  208. package/dist/domain/testing/assert-actual-expected-names/index.js +2 -0
  209. package/dist/{testing → domain/testing}/assert-actual-expected-names/rule.d.ts +1 -0
  210. package/dist/domain/testing/assert-actual-expected-names/rule.d.ts.map +1 -0
  211. package/dist/domain/testing/assert-actual-expected-names/rule.js +116 -0
  212. package/dist/domain/testing/enforce-aaa-phase-purity/index.d.ts +2 -0
  213. package/dist/domain/testing/enforce-aaa-phase-purity/index.d.ts.map +1 -0
  214. package/dist/domain/testing/enforce-aaa-phase-purity/index.js +2 -0
  215. package/dist/domain/testing/enforce-aaa-phase-purity/pattern-identifiers.d.ts +13 -0
  216. package/dist/domain/testing/enforce-aaa-phase-purity/pattern-identifiers.d.ts.map +1 -0
  217. package/dist/domain/testing/enforce-aaa-phase-purity/pattern-identifiers.js +134 -0
  218. package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-identifiers.d.ts +25 -0
  219. package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-identifiers.d.ts.map +1 -0
  220. package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-identifiers.js +138 -0
  221. package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.combined.d.ts +4 -0
  222. package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.combined.d.ts.map +1 -0
  223. package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.combined.js +4 -0
  224. package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.companion.d.ts +4 -0
  225. package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.companion.d.ts.map +1 -0
  226. package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.companion.js +4 -0
  227. package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.d.ts +4 -0
  228. package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.d.ts.map +1 -0
  229. package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.behavior.js +4 -0
  230. package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.d.ts +14 -0
  231. package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.d.ts.map +1 -0
  232. package/dist/domain/testing/enforce-aaa-phase-purity/phase-purity-reporting.js +180 -0
  233. package/dist/domain/testing/enforce-aaa-phase-purity/rule-test-helpers.d.ts +42 -0
  234. package/dist/domain/testing/enforce-aaa-phase-purity/rule-test-helpers.d.ts.map +1 -0
  235. package/dist/domain/testing/enforce-aaa-phase-purity/rule-test-helpers.js +188 -0
  236. package/dist/{testing → domain/testing}/enforce-aaa-phase-purity/rule.d.ts +1 -0
  237. package/dist/domain/testing/enforce-aaa-phase-purity/rule.d.ts.map +1 -0
  238. package/dist/domain/testing/enforce-aaa-phase-purity/rule.js +37 -0
  239. package/dist/domain/testing/enforce-aaa-structure/index.d.ts +2 -0
  240. package/dist/domain/testing/enforce-aaa-structure/index.d.ts.map +1 -0
  241. package/dist/domain/testing/enforce-aaa-structure/index.js +2 -0
  242. package/dist/{testing → domain/testing}/enforce-aaa-structure/rule.d.ts +1 -0
  243. package/dist/domain/testing/enforce-aaa-structure/rule.d.ts.map +1 -0
  244. package/dist/domain/testing/enforce-aaa-structure/rule.js +88 -0
  245. package/dist/{testing → domain/testing}/index.d.ts +9 -8
  246. package/dist/domain/testing/index.d.ts.map +1 -0
  247. package/dist/domain/testing/index.js +10 -0
  248. package/dist/domain/testing/prefer-vi-mocked-import/fix-import-statements.d.ts +29 -0
  249. package/dist/domain/testing/prefer-vi-mocked-import/fix-import-statements.d.ts.map +1 -0
  250. package/dist/domain/testing/prefer-vi-mocked-import/fix-import-statements.js +90 -0
  251. package/dist/domain/testing/prefer-vi-mocked-import/fix-import-updates.d.ts +31 -0
  252. package/dist/domain/testing/prefer-vi-mocked-import/fix-import-updates.d.ts.map +1 -0
  253. package/dist/domain/testing/prefer-vi-mocked-import/fix-import-updates.js +43 -0
  254. package/dist/domain/testing/prefer-vi-mocked-import/fix-imports.d.ts +16 -0
  255. package/dist/domain/testing/prefer-vi-mocked-import/fix-imports.d.ts.map +1 -0
  256. package/dist/domain/testing/prefer-vi-mocked-import/fix-imports.js +205 -0
  257. package/dist/domain/testing/prefer-vi-mocked-import/fix.d.ts +28 -0
  258. package/dist/domain/testing/prefer-vi-mocked-import/fix.d.ts.map +1 -0
  259. package/dist/domain/testing/prefer-vi-mocked-import/fix.js +171 -0
  260. package/dist/domain/testing/prefer-vi-mocked-import/index.d.ts +2 -0
  261. package/dist/domain/testing/prefer-vi-mocked-import/index.d.ts.map +1 -0
  262. package/dist/domain/testing/prefer-vi-mocked-import/index.js +2 -0
  263. package/dist/{testing → domain/testing}/prefer-vi-mocked-import/match-bindings.d.ts +1 -1
  264. package/dist/domain/testing/prefer-vi-mocked-import/match-bindings.d.ts.map +1 -0
  265. package/dist/domain/testing/prefer-vi-mocked-import/match-bindings.js +52 -0
  266. package/dist/{testing → domain/testing}/prefer-vi-mocked-import/match-declarations.d.ts +2 -1
  267. package/dist/domain/testing/prefer-vi-mocked-import/match-declarations.d.ts.map +1 -0
  268. package/dist/domain/testing/prefer-vi-mocked-import/match-declarations.js +131 -0
  269. package/dist/domain/testing/prefer-vi-mocked-import/match-helpers.d.ts.map +1 -0
  270. package/dist/domain/testing/prefer-vi-mocked-import/match-helpers.js +102 -0
  271. package/dist/{testing → domain/testing}/prefer-vi-mocked-import/match-imports.d.ts +1 -1
  272. package/dist/domain/testing/prefer-vi-mocked-import/match-imports.d.ts.map +1 -0
  273. package/dist/domain/testing/prefer-vi-mocked-import/match-imports.js +156 -0
  274. package/dist/{testing → domain/testing}/prefer-vi-mocked-import/match-rewrites.d.ts +1 -1
  275. package/dist/domain/testing/prefer-vi-mocked-import/match-rewrites.d.ts.map +1 -0
  276. package/dist/domain/testing/prefer-vi-mocked-import/match-rewrites.js +119 -0
  277. package/dist/domain/testing/prefer-vi-mocked-import/match-walk.d.ts.map +1 -0
  278. package/dist/domain/testing/prefer-vi-mocked-import/match-walk.js +62 -0
  279. package/dist/domain/testing/prefer-vi-mocked-import/match.d.ts +26 -0
  280. package/dist/domain/testing/prefer-vi-mocked-import/match.d.ts.map +1 -0
  281. package/dist/domain/testing/prefer-vi-mocked-import/match.js +198 -0
  282. package/dist/domain/testing/prefer-vi-mocked-import/rule-test-helpers.d.ts +20 -0
  283. package/dist/domain/testing/prefer-vi-mocked-import/rule-test-helpers.d.ts.map +1 -0
  284. package/dist/domain/testing/prefer-vi-mocked-import/rule-test-helpers.js +39 -0
  285. package/dist/domain/testing/prefer-vi-mocked-import/rule.d.ts.map +1 -0
  286. package/dist/domain/testing/prefer-vi-mocked-import/rule.js +39 -0
  287. package/dist/{testing → domain/testing}/prefer-vi-mocked-import/types.d.ts +1 -1
  288. package/dist/domain/testing/prefer-vi-mocked-import/types.d.ts.map +1 -0
  289. package/dist/domain/testing/prefer-vi-mocked-import/types.js +2 -0
  290. package/dist/domain/testing/prefer-vitest-incremental-casts/ast-helpers.d.ts +97 -0
  291. package/dist/domain/testing/prefer-vitest-incremental-casts/ast-helpers.d.ts.map +1 -0
  292. package/dist/domain/testing/prefer-vitest-incremental-casts/ast-helpers.js +174 -0
  293. package/dist/domain/testing/prefer-vitest-incremental-casts/index.d.ts +2 -0
  294. package/dist/domain/testing/prefer-vitest-incremental-casts/index.d.ts.map +1 -0
  295. package/dist/domain/testing/prefer-vitest-incremental-casts/index.js +2 -0
  296. package/dist/domain/testing/prefer-vitest-incremental-casts/match-input.d.ts +14 -0
  297. package/dist/domain/testing/prefer-vitest-incremental-casts/match-input.d.ts.map +1 -0
  298. package/dist/domain/testing/prefer-vitest-incremental-casts/match-input.js +84 -0
  299. package/dist/domain/testing/prefer-vitest-incremental-casts/match.d.ts +13 -0
  300. package/dist/domain/testing/prefer-vitest-incremental-casts/match.d.ts.map +1 -0
  301. package/dist/domain/testing/prefer-vitest-incremental-casts/match.js +195 -0
  302. package/dist/domain/testing/prefer-vitest-incremental-casts/replacement-helpers.d.ts +25 -0
  303. package/dist/domain/testing/prefer-vitest-incremental-casts/replacement-helpers.d.ts.map +1 -0
  304. package/dist/domain/testing/prefer-vitest-incremental-casts/replacement-helpers.js +96 -0
  305. package/dist/domain/testing/prefer-vitest-incremental-casts/rule-test-helpers.d.ts +32 -0
  306. package/dist/domain/testing/prefer-vitest-incremental-casts/rule-test-helpers.d.ts.map +1 -0
  307. package/dist/domain/testing/prefer-vitest-incremental-casts/rule-test-helpers.js +164 -0
  308. package/dist/domain/testing/prefer-vitest-incremental-casts/rule.d.ts +5 -0
  309. package/dist/domain/testing/prefer-vitest-incremental-casts/rule.d.ts.map +1 -0
  310. package/dist/domain/testing/prefer-vitest-incremental-casts/rule.guardrails.d.ts +4 -0
  311. package/dist/domain/testing/prefer-vitest-incremental-casts/rule.guardrails.d.ts.map +1 -0
  312. package/dist/domain/testing/prefer-vitest-incremental-casts/rule.guardrails.js +4 -0
  313. package/dist/domain/testing/prefer-vitest-incremental-casts/rule.input-shapes.d.ts +4 -0
  314. package/dist/domain/testing/prefer-vitest-incremental-casts/rule.input-shapes.d.ts.map +1 -0
  315. package/dist/domain/testing/prefer-vitest-incremental-casts/rule.input-shapes.js +4 -0
  316. package/dist/domain/testing/prefer-vitest-incremental-casts/rule.js +88 -0
  317. package/dist/domain/testing/prefer-vitest-incremental-casts/rule.signature-fallback.d.ts +4 -0
  318. package/dist/domain/testing/prefer-vitest-incremental-casts/rule.signature-fallback.d.ts.map +1 -0
  319. package/dist/domain/testing/prefer-vitest-incremental-casts/rule.signature-fallback.js +4 -0
  320. package/dist/domain/testing/prefer-vitest-incremental-casts/type-helpers.d.ts +24 -0
  321. package/dist/domain/testing/prefer-vitest-incremental-casts/type-helpers.d.ts.map +1 -0
  322. package/dist/domain/testing/prefer-vitest-incremental-casts/type-helpers.js +113 -0
  323. package/dist/domain/testing/prefer-vitest-incremental-casts/type-shape-helpers.d.ts +36 -0
  324. package/dist/domain/testing/prefer-vitest-incremental-casts/type-shape-helpers.d.ts.map +1 -0
  325. package/dist/domain/testing/prefer-vitest-incremental-casts/type-shape-helpers.js +138 -0
  326. package/dist/domain/testing/prefer-vitest-incremental-casts/types.d.ts +187 -0
  327. package/dist/domain/testing/prefer-vitest-incremental-casts/types.d.ts.map +1 -0
  328. package/dist/domain/testing/prefer-vitest-incremental-casts/types.js +2 -0
  329. package/dist/domain/testing/require-aaa-sections/index.d.ts +2 -0
  330. package/dist/domain/testing/require-aaa-sections/index.d.ts.map +1 -0
  331. package/dist/domain/testing/require-aaa-sections/index.js +2 -0
  332. package/dist/domain/testing/require-aaa-sections/missing-section-fixes.d.ts +17 -0
  333. package/dist/domain/testing/require-aaa-sections/missing-section-fixes.d.ts.map +1 -0
  334. package/dist/domain/testing/require-aaa-sections/missing-section-fixes.js +150 -0
  335. package/dist/{testing → domain/testing}/require-aaa-sections/rule.d.ts +1 -0
  336. package/dist/domain/testing/require-aaa-sections/rule.d.ts.map +1 -0
  337. package/dist/domain/testing/require-aaa-sections/rule.js +134 -0
  338. package/dist/domain/testing/require-aaa-sections/rule.reporting.d.ts +104 -0
  339. package/dist/domain/testing/require-aaa-sections/rule.reporting.d.ts.map +1 -0
  340. package/dist/domain/testing/require-aaa-sections/rule.reporting.js +216 -0
  341. package/dist/domain/testing/require-act-result-capture/index.d.ts +2 -0
  342. package/dist/domain/testing/require-act-result-capture/index.d.ts.map +1 -0
  343. package/dist/domain/testing/require-act-result-capture/index.js +2 -0
  344. package/dist/{testing → domain/testing}/require-act-result-capture/rule.d.ts +1 -0
  345. package/dist/domain/testing/require-act-result-capture/rule.d.ts.map +1 -0
  346. package/dist/domain/testing/require-act-result-capture/rule.js +109 -0
  347. package/dist/domain/testing/require-test-companion/index.d.ts +3 -0
  348. package/dist/domain/testing/require-test-companion/index.d.ts.map +1 -0
  349. package/dist/domain/testing/require-test-companion/index.js +3 -0
  350. package/dist/{testing → domain/testing}/require-test-companion/require-test-companion-listeners.d.ts +1 -1
  351. package/dist/domain/testing/require-test-companion/require-test-companion-listeners.d.ts.map +1 -0
  352. package/dist/domain/testing/require-test-companion/require-test-companion-listeners.js +145 -0
  353. package/dist/domain/testing/require-test-companion/require-test-companion-options.d.ts.map +1 -0
  354. package/dist/domain/testing/require-test-companion/require-test-companion-options.js +113 -0
  355. package/dist/{testing → domain/testing}/require-test-companion/require-test-companion-test-helpers.d.ts +1 -1
  356. package/dist/domain/testing/require-test-companion/require-test-companion-test-helpers.d.ts.map +1 -0
  357. package/dist/domain/testing/require-test-companion/require-test-companion-test-helpers.js +184 -0
  358. package/dist/{testing → domain/testing}/require-test-companion/require-test-companion-utilities.d.ts +1 -1
  359. package/dist/domain/testing/require-test-companion/require-test-companion-utilities.d.ts.map +1 -0
  360. package/dist/domain/testing/require-test-companion/require-test-companion-utilities.js +26 -0
  361. package/dist/domain/testing/require-test-companion/rule.d.ts.map +1 -0
  362. package/dist/domain/testing/require-test-companion/rule.js +82 -0
  363. package/dist/domain/testing/require-test-companion/types.d.ts.map +1 -0
  364. package/dist/domain/testing/require-test-companion/types.js +2 -0
  365. package/dist/domain/testing/single-act-statement/index.d.ts +2 -0
  366. package/dist/domain/testing/single-act-statement/index.d.ts.map +1 -0
  367. package/dist/domain/testing/single-act-statement/index.js +2 -0
  368. package/dist/{testing → domain/testing}/single-act-statement/rule.d.ts +1 -0
  369. package/dist/domain/testing/single-act-statement/rule.d.ts.map +1 -0
  370. package/dist/domain/testing/single-act-statement/rule.js +37 -0
  371. package/dist/index.d.ts +4 -5
  372. package/dist/index.d.ts.map +1 -1
  373. package/dist/index.js +3 -6
  374. package/dist/{codeperfect-plugin.d.ts → infrastructure/codeperfect-plugin.d.ts} +2 -0
  375. package/dist/infrastructure/codeperfect-plugin.d.ts.map +1 -0
  376. package/dist/infrastructure/codeperfect-plugin.js +30 -0
  377. package/dist/infrastructure/index.d.ts +5 -0
  378. package/dist/infrastructure/index.d.ts.map +1 -0
  379. package/dist/infrastructure/index.js +4 -0
  380. package/dist/infrastructure/presets.d.ts +18 -0
  381. package/dist/infrastructure/presets.d.ts.map +1 -0
  382. package/dist/infrastructure/presets.js +81 -0
  383. package/package.json +67 -32
  384. package/dist/architecture/consistent-barrel-files/consistent-barrel-files-listeners.d.ts.map +0 -1
  385. package/dist/architecture/consistent-barrel-files/consistent-barrel-files-listeners.js +0 -131
  386. package/dist/architecture/consistent-barrel-files/consistent-barrel-files-options.d.ts +0 -48
  387. package/dist/architecture/consistent-barrel-files/consistent-barrel-files-options.d.ts.map +0 -1
  388. package/dist/architecture/consistent-barrel-files/consistent-barrel-files-options.js +0 -126
  389. package/dist/architecture/consistent-barrel-files/exports-only-rule-test-utilities.d.ts.map +0 -1
  390. package/dist/architecture/consistent-barrel-files/exports-only-rule-test-utilities.js +0 -90
  391. package/dist/architecture/consistent-barrel-files/exports-only-rule.d.ts.map +0 -1
  392. package/dist/architecture/consistent-barrel-files/exports-only-rule.js +0 -218
  393. package/dist/architecture/consistent-barrel-files/index.d.ts +0 -5
  394. package/dist/architecture/consistent-barrel-files/index.d.ts.map +0 -1
  395. package/dist/architecture/consistent-barrel-files/index.js +0 -4
  396. package/dist/architecture/consistent-barrel-files/no-reexports-outside-barrels-rule.d.ts.map +0 -1
  397. package/dist/architecture/consistent-barrel-files/no-reexports-outside-barrels-rule.js +0 -100
  398. package/dist/architecture/consistent-barrel-files/no-reexports-outside-barrels-test-utilities.d.ts.map +0 -1
  399. package/dist/architecture/consistent-barrel-files/no-reexports-outside-barrels-test-utilities.js +0 -90
  400. package/dist/architecture/consistent-barrel-files/no-reexports-outside-barrels-utilities.d.ts.map +0 -1
  401. package/dist/architecture/consistent-barrel-files/no-reexports-outside-barrels-utilities.js +0 -154
  402. package/dist/architecture/consistent-barrel-files/rule.d.ts.map +0 -1
  403. package/dist/architecture/consistent-barrel-files/rule.js +0 -58
  404. package/dist/architecture/consistent-barrel-files/test-helpers.d.ts.map +0 -1
  405. package/dist/architecture/consistent-barrel-files/test-helpers.js +0 -229
  406. package/dist/architecture/consistent-barrel-files/types.d.ts +0 -25
  407. package/dist/architecture/consistent-barrel-files/types.d.ts.map +0 -1
  408. package/dist/architecture/consistent-barrel-files/types.js +0 -2
  409. package/dist/architecture/index.d.ts.map +0 -1
  410. package/dist/architecture/index.js +0 -2
  411. package/dist/benchmark-rules.d.ts +0 -83
  412. package/dist/benchmark-rules.d.ts.map +0 -1
  413. package/dist/benchmark-rules.js +0 -175
  414. package/dist/codeperfect-plugin.d.ts.map +0 -1
  415. package/dist/codeperfect-plugin.js +0 -29
  416. package/dist/core/index.d.ts.map +0 -1
  417. package/dist/core/index.js +0 -3
  418. package/dist/core/no-multiple-declarators/index.d.ts +0 -2
  419. package/dist/core/no-multiple-declarators/index.d.ts.map +0 -1
  420. package/dist/core/no-multiple-declarators/index.js +0 -2
  421. package/dist/core/no-multiple-declarators/rule.d.ts.map +0 -1
  422. package/dist/core/no-multiple-declarators/rule.js +0 -100
  423. package/dist/core/prefer-interface-types/index.d.ts +0 -2
  424. package/dist/core/prefer-interface-types/index.d.ts.map +0 -1
  425. package/dist/core/prefer-interface-types/index.js +0 -2
  426. package/dist/core/prefer-interface-types/rule.d.ts.map +0 -1
  427. package/dist/core/prefer-interface-types/rule.js +0 -145
  428. package/dist/core/prefer-interface-types/test-helpers.d.ts.map +0 -1
  429. package/dist/core/prefer-interface-types/test-helpers.js +0 -116
  430. package/dist/custom-rule-documentation.d.ts.map +0 -1
  431. package/dist/custom-rule-documentation.js +0 -35
  432. package/dist/custom-rules.d.ts.map +0 -1
  433. package/dist/custom-rules.js +0 -70
  434. package/dist/docs/index.d.ts +0 -4
  435. package/dist/docs/index.d.ts.map +0 -1
  436. package/dist/docs/index.js +0 -4
  437. package/dist/docs/no-interface-member-docs/comment-utilities-test-helpers.d.ts.map +0 -1
  438. package/dist/docs/no-interface-member-docs/comment-utilities-test-helpers.js +0 -129
  439. package/dist/docs/no-interface-member-docs/comment-utilities.d.ts.map +0 -1
  440. package/dist/docs/no-interface-member-docs/comment-utilities.js +0 -146
  441. package/dist/docs/no-interface-member-docs/index.d.ts +0 -2
  442. package/dist/docs/no-interface-member-docs/index.d.ts.map +0 -1
  443. package/dist/docs/no-interface-member-docs/index.js +0 -2
  444. package/dist/docs/no-interface-member-docs/parameter-tags.d.ts.map +0 -1
  445. package/dist/docs/no-interface-member-docs/parameter-tags.js +0 -101
  446. package/dist/docs/no-interface-member-docs/parameter-utilities.d.ts.map +0 -1
  447. package/dist/docs/no-interface-member-docs/parameter-utilities.js +0 -125
  448. package/dist/docs/no-interface-member-docs/rule.d.ts.map +0 -1
  449. package/dist/docs/no-interface-member-docs/rule.js +0 -168
  450. package/dist/docs/no-interface-member-docs/test-helpers.d.ts.map +0 -1
  451. package/dist/docs/no-interface-member-docs/types.d.ts.map +0 -1
  452. package/dist/docs/no-interface-member-docs/types.js +0 -2
  453. package/dist/docs/require-example-language/empty-fence-fixes.d.ts.map +0 -1
  454. package/dist/docs/require-example-language/empty-fence-fixes.js +0 -169
  455. package/dist/docs/require-example-language/example-utilities.d.ts.map +0 -1
  456. package/dist/docs/require-example-language/example-utilities.js +0 -76
  457. package/dist/docs/require-example-language/examples.d.ts.map +0 -1
  458. package/dist/docs/require-example-language/examples.js +0 -181
  459. package/dist/docs/require-example-language/fixes.d.ts.map +0 -1
  460. package/dist/docs/require-example-language/fixes.js +0 -182
  461. package/dist/docs/require-example-language/index.d.ts +0 -3
  462. package/dist/docs/require-example-language/index.d.ts.map +0 -1
  463. package/dist/docs/require-example-language/index.js +0 -2
  464. package/dist/docs/require-example-language/reporting.d.ts.map +0 -1
  465. package/dist/docs/require-example-language/reporting.js +0 -145
  466. package/dist/docs/require-example-language/rule.d.ts.map +0 -1
  467. package/dist/docs/require-example-language/rule.js +0 -34
  468. package/dist/docs/require-example-language/types.d.ts.map +0 -1
  469. package/dist/docs/require-example-language/types.js +0 -2
  470. package/dist/docs/single-line-jsdoc/index.d.ts +0 -2
  471. package/dist/docs/single-line-jsdoc/index.d.ts.map +0 -1
  472. package/dist/docs/single-line-jsdoc/index.js +0 -2
  473. package/dist/docs/single-line-jsdoc/rule.d.ts +0 -5
  474. package/dist/docs/single-line-jsdoc/rule.d.ts.map +0 -1
  475. package/dist/docs/single-line-jsdoc/rule.js +0 -196
  476. package/dist/docs/single-line-jsdoc/single-line-jsdoc-content.d.ts.map +0 -1
  477. package/dist/docs/single-line-jsdoc/single-line-jsdoc-content.js +0 -95
  478. package/dist/docs/single-line-jsdoc/single-line-jsdoc-utilities.d.ts.map +0 -1
  479. package/dist/docs/single-line-jsdoc/single-line-jsdoc-utilities.js +0 -140
  480. package/dist/docs/test-helpers.d.ts.map +0 -1
  481. package/dist/docs/test-helpers.js +0 -107
  482. package/dist/presets.d.ts +0 -10
  483. package/dist/presets.d.ts.map +0 -1
  484. package/dist/presets.js +0 -50
  485. package/dist/rules/index.d.ts +0 -5
  486. package/dist/rules/index.d.ts.map +0 -1
  487. package/dist/rules/index.js +0 -6
  488. package/dist/testing/aaa/analyzer.d.ts +0 -36
  489. package/dist/testing/aaa/analyzer.d.ts.map +0 -1
  490. package/dist/testing/aaa/analyzer.js +0 -490
  491. package/dist/testing/aaa/index.d.ts.map +0 -1
  492. package/dist/testing/aaa/index.js +0 -2
  493. package/dist/testing/aaa/types.d.ts +0 -31
  494. package/dist/testing/aaa/types.d.ts.map +0 -1
  495. package/dist/testing/aaa/types.js +0 -2
  496. package/dist/testing/assert-actual-expected-names/index.d.ts +0 -2
  497. package/dist/testing/assert-actual-expected-names/index.d.ts.map +0 -1
  498. package/dist/testing/assert-actual-expected-names/index.js +0 -2
  499. package/dist/testing/assert-actual-expected-names/rule.d.ts.map +0 -1
  500. package/dist/testing/assert-actual-expected-names/rule.js +0 -54
  501. package/dist/testing/enforce-aaa-phase-purity/index.d.ts +0 -2
  502. package/dist/testing/enforce-aaa-phase-purity/index.d.ts.map +0 -1
  503. package/dist/testing/enforce-aaa-phase-purity/index.js +0 -2
  504. package/dist/testing/enforce-aaa-phase-purity/rule.d.ts.map +0 -1
  505. package/dist/testing/enforce-aaa-phase-purity/rule.js +0 -110
  506. package/dist/testing/enforce-aaa-structure/index.d.ts +0 -2
  507. package/dist/testing/enforce-aaa-structure/index.d.ts.map +0 -1
  508. package/dist/testing/enforce-aaa-structure/index.js +0 -2
  509. package/dist/testing/enforce-aaa-structure/rule.d.ts.map +0 -1
  510. package/dist/testing/enforce-aaa-structure/rule.js +0 -48
  511. package/dist/testing/index.d.ts.map +0 -1
  512. package/dist/testing/index.js +0 -9
  513. package/dist/testing/prefer-vi-mocked-import/fix.d.ts +0 -16
  514. package/dist/testing/prefer-vi-mocked-import/fix.d.ts.map +0 -1
  515. package/dist/testing/prefer-vi-mocked-import/fix.js +0 -224
  516. package/dist/testing/prefer-vi-mocked-import/index.d.ts +0 -2
  517. package/dist/testing/prefer-vi-mocked-import/index.d.ts.map +0 -1
  518. package/dist/testing/prefer-vi-mocked-import/index.js +0 -2
  519. package/dist/testing/prefer-vi-mocked-import/match-bindings.d.ts.map +0 -1
  520. package/dist/testing/prefer-vi-mocked-import/match-bindings.js +0 -52
  521. package/dist/testing/prefer-vi-mocked-import/match-declarations.d.ts.map +0 -1
  522. package/dist/testing/prefer-vi-mocked-import/match-declarations.js +0 -99
  523. package/dist/testing/prefer-vi-mocked-import/match-helpers.d.ts.map +0 -1
  524. package/dist/testing/prefer-vi-mocked-import/match-helpers.js +0 -102
  525. package/dist/testing/prefer-vi-mocked-import/match-imports.d.ts.map +0 -1
  526. package/dist/testing/prefer-vi-mocked-import/match-imports.js +0 -156
  527. package/dist/testing/prefer-vi-mocked-import/match-rewrites.d.ts.map +0 -1
  528. package/dist/testing/prefer-vi-mocked-import/match-rewrites.js +0 -119
  529. package/dist/testing/prefer-vi-mocked-import/match-walk.d.ts.map +0 -1
  530. package/dist/testing/prefer-vi-mocked-import/match-walk.js +0 -62
  531. package/dist/testing/prefer-vi-mocked-import/match.d.ts +0 -15
  532. package/dist/testing/prefer-vi-mocked-import/match.d.ts.map +0 -1
  533. package/dist/testing/prefer-vi-mocked-import/match.js +0 -193
  534. package/dist/testing/prefer-vi-mocked-import/rule.d.ts.map +0 -1
  535. package/dist/testing/prefer-vi-mocked-import/rule.js +0 -32
  536. package/dist/testing/prefer-vi-mocked-import/types.d.ts.map +0 -1
  537. package/dist/testing/prefer-vi-mocked-import/types.js +0 -2
  538. package/dist/testing/require-aaa-sections/index.d.ts +0 -2
  539. package/dist/testing/require-aaa-sections/index.d.ts.map +0 -1
  540. package/dist/testing/require-aaa-sections/index.js +0 -2
  541. package/dist/testing/require-aaa-sections/rule.d.ts.map +0 -1
  542. package/dist/testing/require-aaa-sections/rule.js +0 -111
  543. package/dist/testing/require-act-result-capture/index.d.ts +0 -2
  544. package/dist/testing/require-act-result-capture/index.d.ts.map +0 -1
  545. package/dist/testing/require-act-result-capture/index.js +0 -2
  546. package/dist/testing/require-act-result-capture/rule.d.ts.map +0 -1
  547. package/dist/testing/require-act-result-capture/rule.js +0 -34
  548. package/dist/testing/require-test-companion/index.d.ts +0 -3
  549. package/dist/testing/require-test-companion/index.d.ts.map +0 -1
  550. package/dist/testing/require-test-companion/index.js +0 -3
  551. package/dist/testing/require-test-companion/require-test-companion-listeners.d.ts.map +0 -1
  552. package/dist/testing/require-test-companion/require-test-companion-listeners.js +0 -145
  553. package/dist/testing/require-test-companion/require-test-companion-options.d.ts.map +0 -1
  554. package/dist/testing/require-test-companion/require-test-companion-options.js +0 -112
  555. package/dist/testing/require-test-companion/require-test-companion-test-helpers.d.ts.map +0 -1
  556. package/dist/testing/require-test-companion/require-test-companion-test-helpers.js +0 -183
  557. package/dist/testing/require-test-companion/require-test-companion-utilities.d.ts.map +0 -1
  558. package/dist/testing/require-test-companion/require-test-companion-utilities.js +0 -26
  559. package/dist/testing/require-test-companion/rule.d.ts.map +0 -1
  560. package/dist/testing/require-test-companion/rule.js +0 -57
  561. package/dist/testing/require-test-companion/types.d.ts.map +0 -1
  562. package/dist/testing/require-test-companion/types.js +0 -2
  563. package/dist/testing/single-act-statement/index.d.ts +0 -2
  564. package/dist/testing/single-act-statement/index.d.ts.map +0 -1
  565. package/dist/testing/single-act-statement/index.js +0 -2
  566. package/dist/testing/single-act-statement/rule.d.ts.map +0 -1
  567. package/dist/testing/single-act-statement/rule.js +0 -33
  568. /package/dist/{architecture → domain/architecture}/consistent-barrel-files/exports-only-rule.d.ts +0 -0
  569. /package/dist/{architecture → domain/architecture}/consistent-barrel-files/no-reexports-outside-barrels-rule.d.ts +0 -0
  570. /package/dist/{architecture → domain/architecture}/consistent-barrel-files/rule.d.ts +0 -0
  571. /package/dist/{core → domain/core}/prefer-interface-types/rule.d.ts +0 -0
  572. /package/dist/{core → domain/core}/prefer-interface-types/test-helpers.d.ts +0 -0
  573. /package/dist/{docs → domain/docs}/no-interface-member-docs/comment-utilities-test-helpers.d.ts +0 -0
  574. /package/dist/{docs → domain/docs}/no-interface-member-docs/rule.d.ts +0 -0
  575. /package/dist/{docs → domain/docs}/no-interface-member-docs/test-helpers.d.ts +0 -0
  576. /package/dist/{docs → domain/docs}/require-example-language/empty-fence-fixes.d.ts +0 -0
  577. /package/dist/{docs → domain/docs}/require-example-language/example-utilities.d.ts +0 -0
  578. /package/dist/{docs → domain/docs}/require-example-language/rule.d.ts +0 -0
  579. /package/dist/{docs → domain/docs}/require-example-language/types.d.ts +0 -0
  580. /package/dist/{docs → domain/docs}/single-line-jsdoc/single-line-jsdoc-content.d.ts +0 -0
  581. /package/dist/{docs → domain/docs}/test-helpers.d.ts +0 -0
  582. /package/dist/{testing → domain/testing}/prefer-vi-mocked-import/match-helpers.d.ts +0 -0
  583. /package/dist/{testing → domain/testing}/prefer-vi-mocked-import/match-walk.d.ts +0 -0
  584. /package/dist/{testing → domain/testing}/prefer-vi-mocked-import/rule.d.ts +0 -0
  585. /package/dist/{testing → domain/testing}/require-test-companion/require-test-companion-options.d.ts +0 -0
  586. /package/dist/{testing → domain/testing}/require-test-companion/rule.d.ts +0 -0
  587. /package/dist/{testing → domain/testing}/require-test-companion/types.d.ts +0 -0
@@ -0,0 +1,148 @@
1
+ /**
2
+ * Gets a nested type annotation from parameter wrappers.
3
+ * @param node Parameter wrapper node.
4
+ * @returns The nested type annotation when present.
5
+ * @example
6
+ * ```typescript
7
+ * const annotation = getNestedTypeAnnotation({ argument: node });
8
+ * ```
9
+ */
10
+ const getNestedTypeAnnotation = (node) => {
11
+ if (node.argument !== void 0) {
12
+ return getTypeAnnotationNode(node.argument);
13
+ }
14
+ if (node.parameter !== void 0) {
15
+ return getTypeAnnotationNode(node.parameter);
16
+ }
17
+ return void 0;
18
+ };
19
+ /**
20
+ * Extracts the type annotation from a node.
21
+ * @param node Node that may contain a type annotation.
22
+ * @returns The type annotation when present.
23
+ * @example
24
+ * ```typescript
25
+ * const annotation = getTypeAnnotationNode(node);
26
+ * ```
27
+ */
28
+ const getTypeAnnotationNode = (node) => {
29
+ if (node === null || typeof node !== "object") {
30
+ return void 0;
31
+ }
32
+ const directTypeAnnotation = node.typeAnnotation
33
+ ?.typeAnnotation;
34
+ if (directTypeAnnotation !== void 0) {
35
+ return directTypeAnnotation;
36
+ }
37
+ return getNestedTypeAnnotation(node);
38
+ };
39
+ /**
40
+ * Gets the return type annotation for a function-like node.
41
+ * @param node Node that may contain a return type.
42
+ * @returns The return type annotation when present.
43
+ * @example
44
+ * ```typescript
45
+ * const annotation = getReturnTypeAnnotation(node);
46
+ * ```
47
+ */
48
+ const getReturnTypeAnnotation = (node) => {
49
+ if (node === null || typeof node !== "object") {
50
+ return void 0;
51
+ }
52
+ const typedNode = node;
53
+ return typedNode.returnType?.typeAnnotation;
54
+ };
55
+ /**
56
+ * Gets getParameters.
57
+ * @param node Input node value.
58
+ * @returns Return value output.
59
+ * @example
60
+ * ```typescript
61
+ * getParameters();
62
+ * ```
63
+ */
64
+ const getParameters = (node) => {
65
+ if (node === null || typeof node !== "object") {
66
+ return [];
67
+ }
68
+ const typedNode = node;
69
+ return Array.isArray(typedNode.params) ? typedNode.params : [];
70
+ };
71
+ /**
72
+ * Checks whether the node represents a type literal.
73
+ * @param node Type annotation node to check.
74
+ * @returns True when the node is a type literal.
75
+ * @example
76
+ * ```typescript
77
+ * const isLiteral = isTypeLiteral(annotation);
78
+ * ```
79
+ */
80
+ const isTypeLiteral = (node) => node?.type === "TSTypeLiteral";
81
+ /**
82
+ * Reports an inline object type annotation.
83
+ * @param context Rule execution context.
84
+ * @param typeAnnotation Type annotation node to report.
85
+ * @example
86
+ * ```typescript
87
+ * reportTypeLiteral(context, typeAnnotation);
88
+ * ```
89
+ */
90
+ const reportTypeLiteral = (context, typeAnnotation) => {
91
+ context.report({
92
+ messageId: "preferNamedObject",
93
+ node: typeAnnotation,
94
+ });
95
+ };
96
+ /**
97
+ * Checks function-like nodes for inline object types.
98
+ * @param context Rule execution context.
99
+ * @param node Function-like node to check.
100
+ * @example
101
+ * ```typescript
102
+ * checkFunctionLike(context, node);
103
+ * ```
104
+ */
105
+ const checkFunctionLike = (context, node) => {
106
+ for (const parameter of getParameters(node)) {
107
+ const typeAnnotation = getTypeAnnotationNode(parameter);
108
+ if (isTypeLiteral(typeAnnotation)) {
109
+ reportTypeLiteral(context, typeAnnotation);
110
+ }
111
+ }
112
+ const returnTypeAnnotation = getReturnTypeAnnotation(node);
113
+ if (isTypeLiteral(returnTypeAnnotation)) {
114
+ reportTypeLiteral(context, returnTypeAnnotation);
115
+ }
116
+ };
117
+ /** ESLint rule requiring named interface/type aliases for object types. */
118
+ const preferInterfaceTypesRule = {
119
+ create(context) {
120
+ const listener = (node) => {
121
+ checkFunctionLike(context, node);
122
+ };
123
+ return {
124
+ ArrowFunctionExpression: listener,
125
+ FunctionDeclaration: listener,
126
+ FunctionExpression: listener,
127
+ TSCallSignatureDeclaration: listener,
128
+ TSConstructSignatureDeclaration: listener,
129
+ TSDeclareFunction: listener,
130
+ TSFunctionType: listener,
131
+ TSMethodSignature: listener,
132
+ };
133
+ },
134
+ meta: {
135
+ docs: {
136
+ description: "Require named interfaces or type aliases for object types in parameters and return types.",
137
+ recommended: false,
138
+ url: "https://github.com/parloti/eslint-plugin/blob/main/docs/rules/prefer-interface-types.md",
139
+ },
140
+ messages: {
141
+ preferNamedObject: "Use a named interface or type alias instead of an inline object type.",
142
+ },
143
+ schema: [],
144
+ type: "suggestion",
145
+ },
146
+ };
147
+ export { preferInterfaceTypesRule };
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kb21haW4vY29yZS9wcmVmZXItaW50ZXJmYWNlLXR5cGVzL3J1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0NBOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSx1QkFBdUIsR0FBRyxDQUM5QixJQUF3QixFQUNRLEVBQUU7SUFDbEMsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDN0IsT0FBTyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQzlCLE9BQU8scUJBQXFCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxPQUFPLEtBQUssQ0FBQyxDQUFDO0FBQ2hCLENBQUMsQ0FBQztBQUVGOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxxQkFBcUIsR0FBRyxDQUM1QixJQUFhLEVBQ21CLEVBQUU7SUFDbEMsSUFBSSxJQUFJLEtBQUssSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzlDLE9BQU8sS0FBSyxDQUFDLENBQUM7SUFDaEIsQ0FBQztJQUVELE1BQU0sb0JBQW9CLEdBQUksSUFBZ0MsQ0FBQyxjQUFjO1FBQzNFLEVBQUUsY0FBYyxDQUFDO0lBRW5CLElBQUksb0JBQW9CLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNwQyxPQUFPLG9CQUFvQixDQUFDO0lBQzlCLENBQUM7SUFFRCxPQUFPLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3ZDLENBQUMsQ0FBQztBQUVGOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSx1QkFBdUIsR0FBRyxDQUM5QixJQUFhLEVBQ21CLEVBQUU7SUFDbEMsSUFBSSxJQUFJLEtBQUssSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzlDLE9BQU8sS0FBSyxDQUFDLENBQUM7SUFDaEIsQ0FBQztJQUVELE1BQU0sU0FBUyxHQUFHLElBQXdCLENBQUM7SUFFM0MsT0FBTyxTQUFTLENBQUMsVUFBVSxFQUFFLGNBQWMsQ0FBQztBQUM5QyxDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sYUFBYSxHQUFHLENBQUMsSUFBYSxFQUFhLEVBQUU7SUFDakQsSUFBSSxJQUFJLEtBQUssSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzlDLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELE1BQU0sU0FBUyxHQUFHLElBQXdCLENBQUM7SUFFM0MsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0FBQ2pFLENBQUMsQ0FBQztBQUVGOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxhQUFhLEdBQUcsQ0FDcEIsSUFBb0MsRUFDUixFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksS0FBSyxlQUFlLENBQUM7QUFFaEU7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLGlCQUFpQixHQUFHLENBQ3hCLE9BQXlCLEVBQ3pCLGNBQWtDLEVBQzVCLEVBQUU7SUFDUixPQUFPLENBQUMsTUFBTSxDQUFDO1FBQ2IsU0FBUyxFQUFFLG1CQUFtQjtRQUM5QixJQUFJLEVBQUUsY0FBc0M7S0FDN0MsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUY7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLGlCQUFpQixHQUFHLENBQ3hCLE9BQXlCLEVBQ3pCLElBQWUsRUFDVCxFQUFFO0lBQ1IsS0FBSyxNQUFNLFNBQVMsSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUM1QyxNQUFNLGNBQWMsR0FBRyxxQkFBcUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUV4RCxJQUFJLGFBQWEsQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDO1lBQ2xDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsQ0FBQztRQUM3QyxDQUFDO0lBQ0gsQ0FBQztJQUVELE1BQU0sb0JBQW9CLEdBQUcsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFM0QsSUFBSSxhQUFhLENBQUMsb0JBQW9CLENBQUMsRUFBRSxDQUFDO1FBQ3hDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO0lBQ25ELENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRiwyRUFBMkU7QUFDM0UsTUFBTSx3QkFBd0IsR0FBb0I7SUFDaEQsTUFBTSxDQUFDLE9BQXlCO1FBQzlCLE1BQU0sUUFBUSxHQUFHLENBQUMsSUFBZSxFQUFRLEVBQUU7WUFDekMsaUJBQWlCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ25DLENBQUMsQ0FBQztRQUVGLE9BQU87WUFDTCx1QkFBdUIsRUFBRSxRQUFRO1lBQ2pDLG1CQUFtQixFQUFFLFFBQVE7WUFDN0Isa0JBQWtCLEVBQUUsUUFBUTtZQUM1QiwwQkFBMEIsRUFBRSxRQUFRO1lBQ3BDLCtCQUErQixFQUFFLFFBQVE7WUFDekMsaUJBQWlCLEVBQUUsUUFBUTtZQUMzQixjQUFjLEVBQUUsUUFBUTtZQUN4QixpQkFBaUIsRUFBRSxRQUFRO1NBQzVCLENBQUM7SUFDSixDQUFDO0lBQ0QsSUFBSSxFQUFFO1FBQ0osSUFBSSxFQUFFO1lBQ0osV0FBVyxFQUNULDJGQUEyRjtZQUM3RixXQUFXLEVBQUUsS0FBSztZQUNsQixHQUFHLEVBQUUseUZBQXlGO1NBQy9GO1FBQ0QsUUFBUSxFQUFFO1lBQ1IsaUJBQWlCLEVBQ2YsdUVBQXVFO1NBQzFFO1FBQ0QsTUFBTSxFQUFFLEVBQUU7UUFDVixJQUFJLEVBQUUsWUFBWTtLQUNuQjtDQUNGLENBQUM7QUFFRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUnVsZSB9IGZyb20gXCJlc2xpbnRcIjtcblxuLyoqIFR5cGUgZGVmaW5pdGlvbiBmb3IgcnVsZSBkYXRhLiAqL1xuaW50ZXJmYWNlIEZ1bmN0aW9uTGlrZU5vZGUge1xuICAvKiogUGFyYW1zIGhlbHBlciB2YWx1ZS4gKi9cbiAgcGFyYW1zPzogdW5rbm93bltdO1xuXG4gIC8qKiBSZXR1cm5UeXBlIGhlbHBlciB2YWx1ZS4gKi9cbiAgcmV0dXJuVHlwZT86IHtcbiAgICAvKiogVHlwZUFubm90YXRpb24gaGVscGVyIHZhbHVlLiAqL1xuICAgIHR5cGVBbm5vdGF0aW9uPzogVHlwZUFubm90YXRpb25Ob2RlO1xuICB9O1xufVxuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG5pbnRlcmZhY2UgUGFyYW1ldGVyQ29udGFpbmVyIHtcbiAgLyoqIEFyZ3VtZW50IGhlbHBlciB2YWx1ZS4gKi9cbiAgYXJndW1lbnQ/OiB1bmtub3duO1xuXG4gIC8qKiBQYXJhbWV0ZXIgaGVscGVyIHZhbHVlLiAqL1xuICBwYXJhbWV0ZXI/OiB1bmtub3duO1xufVxuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG5pbnRlcmZhY2UgVHlwZUFubm90YXRpb25Db250YWluZXIge1xuICAvKiogVHlwZUFubm90YXRpb24gaGVscGVyIHZhbHVlLiAqL1xuICB0eXBlQW5ub3RhdGlvbj86IHtcbiAgICAvKiogVHlwZUFubm90YXRpb24gaGVscGVyIHZhbHVlLiAqL1xuICAgIHR5cGVBbm5vdGF0aW9uPzogVHlwZUFubm90YXRpb25Ob2RlO1xuICB9O1xufVxuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG5pbnRlcmZhY2UgVHlwZUFubm90YXRpb25Ob2RlIHtcbiAgLyoqIFR5cGUgZmllbGQgdmFsdWUuICovXG4gIHR5cGU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBHZXRzIGEgbmVzdGVkIHR5cGUgYW5ub3RhdGlvbiBmcm9tIHBhcmFtZXRlciB3cmFwcGVycy5cbiAqIEBwYXJhbSBub2RlIFBhcmFtZXRlciB3cmFwcGVyIG5vZGUuXG4gKiBAcmV0dXJucyBUaGUgbmVzdGVkIHR5cGUgYW5ub3RhdGlvbiB3aGVuIHByZXNlbnQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgYW5ub3RhdGlvbiA9IGdldE5lc3RlZFR5cGVBbm5vdGF0aW9uKHsgYXJndW1lbnQ6IG5vZGUgfSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgZ2V0TmVzdGVkVHlwZUFubm90YXRpb24gPSAoXG4gIG5vZGU6IFBhcmFtZXRlckNvbnRhaW5lcixcbik6IFR5cGVBbm5vdGF0aW9uTm9kZSB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmIChub2RlLmFyZ3VtZW50ICE9PSB2b2lkIDApIHtcbiAgICByZXR1cm4gZ2V0VHlwZUFubm90YXRpb25Ob2RlKG5vZGUuYXJndW1lbnQpO1xuICB9XG5cbiAgaWYgKG5vZGUucGFyYW1ldGVyICE9PSB2b2lkIDApIHtcbiAgICByZXR1cm4gZ2V0VHlwZUFubm90YXRpb25Ob2RlKG5vZGUucGFyYW1ldGVyKTtcbiAgfVxuXG4gIHJldHVybiB2b2lkIDA7XG59O1xuXG4vKipcbiAqIEV4dHJhY3RzIHRoZSB0eXBlIGFubm90YXRpb24gZnJvbSBhIG5vZGUuXG4gKiBAcGFyYW0gbm9kZSBOb2RlIHRoYXQgbWF5IGNvbnRhaW4gYSB0eXBlIGFubm90YXRpb24uXG4gKiBAcmV0dXJucyBUaGUgdHlwZSBhbm5vdGF0aW9uIHdoZW4gcHJlc2VudC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBhbm5vdGF0aW9uID0gZ2V0VHlwZUFubm90YXRpb25Ob2RlKG5vZGUpO1xuICogYGBgXG4gKi9cbmNvbnN0IGdldFR5cGVBbm5vdGF0aW9uTm9kZSA9IChcbiAgbm9kZTogdW5rbm93bixcbik6IFR5cGVBbm5vdGF0aW9uTm9kZSB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmIChub2RlID09PSBudWxsIHx8IHR5cGVvZiBub2RlICE9PSBcIm9iamVjdFwiKSB7XG4gICAgcmV0dXJuIHZvaWQgMDtcbiAgfVxuXG4gIGNvbnN0IGRpcmVjdFR5cGVBbm5vdGF0aW9uID0gKG5vZGUgYXMgVHlwZUFubm90YXRpb25Db250YWluZXIpLnR5cGVBbm5vdGF0aW9uXG4gICAgPy50eXBlQW5ub3RhdGlvbjtcblxuICBpZiAoZGlyZWN0VHlwZUFubm90YXRpb24gIT09IHZvaWQgMCkge1xuICAgIHJldHVybiBkaXJlY3RUeXBlQW5ub3RhdGlvbjtcbiAgfVxuXG4gIHJldHVybiBnZXROZXN0ZWRUeXBlQW5ub3RhdGlvbihub2RlKTtcbn07XG5cbi8qKlxuICogR2V0cyB0aGUgcmV0dXJuIHR5cGUgYW5ub3RhdGlvbiBmb3IgYSBmdW5jdGlvbi1saWtlIG5vZGUuXG4gKiBAcGFyYW0gbm9kZSBOb2RlIHRoYXQgbWF5IGNvbnRhaW4gYSByZXR1cm4gdHlwZS5cbiAqIEByZXR1cm5zIFRoZSByZXR1cm4gdHlwZSBhbm5vdGF0aW9uIHdoZW4gcHJlc2VudC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBhbm5vdGF0aW9uID0gZ2V0UmV0dXJuVHlwZUFubm90YXRpb24obm9kZSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgZ2V0UmV0dXJuVHlwZUFubm90YXRpb24gPSAoXG4gIG5vZGU6IHVua25vd24sXG4pOiBUeXBlQW5ub3RhdGlvbk5vZGUgfCB1bmRlZmluZWQgPT4ge1xuICBpZiAobm9kZSA9PT0gbnVsbCB8fCB0eXBlb2Ygbm9kZSAhPT0gXCJvYmplY3RcIikge1xuICAgIHJldHVybiB2b2lkIDA7XG4gIH1cblxuICBjb25zdCB0eXBlZE5vZGUgPSBub2RlIGFzIEZ1bmN0aW9uTGlrZU5vZGU7XG5cbiAgcmV0dXJuIHR5cGVkTm9kZS5yZXR1cm5UeXBlPy50eXBlQW5ub3RhdGlvbjtcbn07XG5cbi8qKlxuICogR2V0cyBnZXRQYXJhbWV0ZXJzLlxuICogQHBhcmFtIG5vZGUgSW5wdXQgbm9kZSB2YWx1ZS5cbiAqIEByZXR1cm5zIFJldHVybiB2YWx1ZSBvdXRwdXQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogZ2V0UGFyYW1ldGVycygpO1xuICogYGBgXG4gKi9cbmNvbnN0IGdldFBhcmFtZXRlcnMgPSAobm9kZTogdW5rbm93bik6IHVua25vd25bXSA9PiB7XG4gIGlmIChub2RlID09PSBudWxsIHx8IHR5cGVvZiBub2RlICE9PSBcIm9iamVjdFwiKSB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgY29uc3QgdHlwZWROb2RlID0gbm9kZSBhcyBGdW5jdGlvbkxpa2VOb2RlO1xuXG4gIHJldHVybiBBcnJheS5pc0FycmF5KHR5cGVkTm9kZS5wYXJhbXMpID8gdHlwZWROb2RlLnBhcmFtcyA6IFtdO1xufTtcblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgbm9kZSByZXByZXNlbnRzIGEgdHlwZSBsaXRlcmFsLlxuICogQHBhcmFtIG5vZGUgVHlwZSBhbm5vdGF0aW9uIG5vZGUgdG8gY2hlY2suXG4gKiBAcmV0dXJucyBUcnVlIHdoZW4gdGhlIG5vZGUgaXMgYSB0eXBlIGxpdGVyYWwuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgaXNMaXRlcmFsID0gaXNUeXBlTGl0ZXJhbChhbm5vdGF0aW9uKTtcbiAqIGBgYFxuICovXG5jb25zdCBpc1R5cGVMaXRlcmFsID0gKFxuICBub2RlOiBUeXBlQW5ub3RhdGlvbk5vZGUgfCB1bmRlZmluZWQsXG4pOiBub2RlIGlzIFR5cGVBbm5vdGF0aW9uTm9kZSA9PiBub2RlPy50eXBlID09PSBcIlRTVHlwZUxpdGVyYWxcIjtcblxuLyoqXG4gKiBSZXBvcnRzIGFuIGlubGluZSBvYmplY3QgdHlwZSBhbm5vdGF0aW9uLlxuICogQHBhcmFtIGNvbnRleHQgUnVsZSBleGVjdXRpb24gY29udGV4dC5cbiAqIEBwYXJhbSB0eXBlQW5ub3RhdGlvbiBUeXBlIGFubm90YXRpb24gbm9kZSB0byByZXBvcnQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogcmVwb3J0VHlwZUxpdGVyYWwoY29udGV4dCwgdHlwZUFubm90YXRpb24pO1xuICogYGBgXG4gKi9cbmNvbnN0IHJlcG9ydFR5cGVMaXRlcmFsID0gKFxuICBjb250ZXh0OiBSdWxlLlJ1bGVDb250ZXh0LFxuICB0eXBlQW5ub3RhdGlvbjogVHlwZUFubm90YXRpb25Ob2RlLFxuKTogdm9pZCA9PiB7XG4gIGNvbnRleHQucmVwb3J0KHtcbiAgICBtZXNzYWdlSWQ6IFwicHJlZmVyTmFtZWRPYmplY3RcIixcbiAgICBub2RlOiB0eXBlQW5ub3RhdGlvbiBhcyB1bmtub3duIGFzIFJ1bGUuTm9kZSxcbiAgfSk7XG59O1xuXG4vKipcbiAqIENoZWNrcyBmdW5jdGlvbi1saWtlIG5vZGVzIGZvciBpbmxpbmUgb2JqZWN0IHR5cGVzLlxuICogQHBhcmFtIGNvbnRleHQgUnVsZSBleGVjdXRpb24gY29udGV4dC5cbiAqIEBwYXJhbSBub2RlIEZ1bmN0aW9uLWxpa2Ugbm9kZSB0byBjaGVjay5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjaGVja0Z1bmN0aW9uTGlrZShjb250ZXh0LCBub2RlKTtcbiAqIGBgYFxuICovXG5jb25zdCBjaGVja0Z1bmN0aW9uTGlrZSA9IChcbiAgY29udGV4dDogUnVsZS5SdWxlQ29udGV4dCxcbiAgbm9kZTogUnVsZS5Ob2RlLFxuKTogdm9pZCA9PiB7XG4gIGZvciAoY29uc3QgcGFyYW1ldGVyIG9mIGdldFBhcmFtZXRlcnMobm9kZSkpIHtcbiAgICBjb25zdCB0eXBlQW5ub3RhdGlvbiA9IGdldFR5cGVBbm5vdGF0aW9uTm9kZShwYXJhbWV0ZXIpO1xuXG4gICAgaWYgKGlzVHlwZUxpdGVyYWwodHlwZUFubm90YXRpb24pKSB7XG4gICAgICByZXBvcnRUeXBlTGl0ZXJhbChjb250ZXh0LCB0eXBlQW5ub3RhdGlvbik7XG4gICAgfVxuICB9XG5cbiAgY29uc3QgcmV0dXJuVHlwZUFubm90YXRpb24gPSBnZXRSZXR1cm5UeXBlQW5ub3RhdGlvbihub2RlKTtcblxuICBpZiAoaXNUeXBlTGl0ZXJhbChyZXR1cm5UeXBlQW5ub3RhdGlvbikpIHtcbiAgICByZXBvcnRUeXBlTGl0ZXJhbChjb250ZXh0LCByZXR1cm5UeXBlQW5ub3RhdGlvbik7XG4gIH1cbn07XG5cbi8qKiBFU0xpbnQgcnVsZSByZXF1aXJpbmcgbmFtZWQgaW50ZXJmYWNlL3R5cGUgYWxpYXNlcyBmb3Igb2JqZWN0IHR5cGVzLiAqL1xuY29uc3QgcHJlZmVySW50ZXJmYWNlVHlwZXNSdWxlOiBSdWxlLlJ1bGVNb2R1bGUgPSB7XG4gIGNyZWF0ZShjb250ZXh0OiBSdWxlLlJ1bGVDb250ZXh0KTogUnVsZS5SdWxlTGlzdGVuZXIge1xuICAgIGNvbnN0IGxpc3RlbmVyID0gKG5vZGU6IFJ1bGUuTm9kZSk6IHZvaWQgPT4ge1xuICAgICAgY2hlY2tGdW5jdGlvbkxpa2UoY29udGV4dCwgbm9kZSk7XG4gICAgfTtcblxuICAgIHJldHVybiB7XG4gICAgICBBcnJvd0Z1bmN0aW9uRXhwcmVzc2lvbjogbGlzdGVuZXIsXG4gICAgICBGdW5jdGlvbkRlY2xhcmF0aW9uOiBsaXN0ZW5lcixcbiAgICAgIEZ1bmN0aW9uRXhwcmVzc2lvbjogbGlzdGVuZXIsXG4gICAgICBUU0NhbGxTaWduYXR1cmVEZWNsYXJhdGlvbjogbGlzdGVuZXIsXG4gICAgICBUU0NvbnN0cnVjdFNpZ25hdHVyZURlY2xhcmF0aW9uOiBsaXN0ZW5lcixcbiAgICAgIFRTRGVjbGFyZUZ1bmN0aW9uOiBsaXN0ZW5lcixcbiAgICAgIFRTRnVuY3Rpb25UeXBlOiBsaXN0ZW5lcixcbiAgICAgIFRTTWV0aG9kU2lnbmF0dXJlOiBsaXN0ZW5lcixcbiAgICB9O1xuICB9LFxuICBtZXRhOiB7XG4gICAgZG9jczoge1xuICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgIFwiUmVxdWlyZSBuYW1lZCBpbnRlcmZhY2VzIG9yIHR5cGUgYWxpYXNlcyBmb3Igb2JqZWN0IHR5cGVzIGluIHBhcmFtZXRlcnMgYW5kIHJldHVybiB0eXBlcy5cIixcbiAgICAgIHJlY29tbWVuZGVkOiBmYWxzZSxcbiAgICAgIHVybDogXCJodHRwczovL2dpdGh1Yi5jb20vcGFybG90aS9lc2xpbnQtcGx1Z2luL2Jsb2IvbWFpbi9kb2NzL3J1bGVzL3ByZWZlci1pbnRlcmZhY2UtdHlwZXMubWRcIixcbiAgICB9LFxuICAgIG1lc3NhZ2VzOiB7XG4gICAgICBwcmVmZXJOYW1lZE9iamVjdDpcbiAgICAgICAgXCJVc2UgYSBuYW1lZCBpbnRlcmZhY2Ugb3IgdHlwZSBhbGlhcyBpbnN0ZWFkIG9mIGFuIGlubGluZSBvYmplY3QgdHlwZS5cIixcbiAgICB9LFxuICAgIHNjaGVtYTogW10sXG4gICAgdHlwZTogXCJzdWdnZXN0aW9uXCIsXG4gIH0sXG59O1xuXG5leHBvcnQgeyBwcmVmZXJJbnRlcmZhY2VUeXBlc1J1bGUgfTtcbiJdfQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-helpers.d.ts","sourceRoot":"","sources":["../../../../src/domain/core/prefer-interface-types/test-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAInC,qCAAqC;AACrC,UAAU,QAAQ;IAChB,iCAAiC;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAEvB,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAWD,qCAAqC;AACrC,UAAU,WAAW;IACnB,8BAA8B;IAC9B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAE9B,4BAA4B;IAC5B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9B;AAED,qCAAqC;AACrC,UAAU,gBAAgB;IACxB,2BAA2B;IAC3B,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC;IAE1B,2BAA2B;IAC3B,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB;AAED,qCAAqC;AACrC,UAAU,qBAAqB;IAC7B,kCAAkC;IAClC,cAAc,EAAE;QACd,wBAAwB;QACxB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,aAAa,QAAO,gBAczB,CAAC;AAEF;;;;;;;;GAQG;AACH,QAAA,MAAM,oBAAoB,GAAI,MAAM,MAAM,KAAG,qBAE3C,CAAC;AAEH;;;;;;;;GAQG;AACH,QAAA,MAAM,eAAe,GAAI,MAAM,MAAM,KAAG,QAItC,CAAC;AAEH;;;;;;;GAOG;AACH,QAAA,MAAM,mBAAmB,QAAO,QAG9B,CAAC;AAEH;;;;;;;;GAQG;AACH,QAAA,MAAM,uBAAuB,GAAI,MAAM,MAAM,KAAG,QAG9C,CAAC;AAEH;;;;;;;;GAQG;AACH,QAAA,MAAM,mBAAmB,GAAI,MAAM,MAAM,KAAG,QAG1C,CAAC;AAEH;;;;;;;;GAQG;AACH,QAAA,MAAM,kBAAkB,GAAI,WAAW,OAAO,CAAC,QAAQ,CAAC,KAAG,QAIzD,CAAC;AAEH;;;;;;;;GAQG;AACH,QAAA,MAAM,WAAW,GAAI,SAAS,IAAI,CAAC,WAAW,EAAE,OAAO,QAAQ,KAAG,IAOjE,CAAC;AAEF,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,uBAAuB,EACvB,mBAAmB,EACnB,oBAAoB,EACpB,WAAW,GACZ,CAAC"}
@@ -0,0 +1,116 @@
1
+ import { preferInterfaceTypesRule } from "./rule.js";
2
+ /**
3
+ * Creates createContext.
4
+ * @returns Return value output.
5
+ * @example
6
+ * ```typescript
7
+ * createContext();
8
+ * ```
9
+ */
10
+ const createContext = () => {
11
+ const reports = [];
12
+ const context = {
13
+ id: "prefer-interface-types",
14
+ options: [],
15
+ report: (descriptor) => {
16
+ const { messageId, node } = descriptor;
17
+ const reportEntry = { messageId, nodeType: node?.type };
18
+ reports.push(reportEntry);
19
+ },
20
+ };
21
+ return { context, reports };
22
+ };
23
+ /**
24
+ * Creates createTypeAnnotation.
25
+ * @param type Input type value.
26
+ * @returns Return value output.
27
+ * @example
28
+ * ```typescript
29
+ * createTypeAnnotation();
30
+ * ```
31
+ */
32
+ const createTypeAnnotation = (type) => ({
33
+ typeAnnotation: { type },
34
+ });
35
+ /**
36
+ * Creates createParameter.
37
+ * @param type Input type value.
38
+ * @returns Return value output.
39
+ * @example
40
+ * ```typescript
41
+ * createParameter();
42
+ * ```
43
+ */
44
+ const createParameter = (type) => ({
45
+ name: "value",
46
+ type: "Identifier",
47
+ typeAnnotation: createTypeAnnotation(type),
48
+ });
49
+ /**
50
+ * Creates createBareParameter.
51
+ * @returns Return value output.
52
+ * @example
53
+ * ```typescript
54
+ * createBareParameter();
55
+ * ```
56
+ */
57
+ const createBareParameter = () => ({
58
+ name: "value",
59
+ type: "Identifier",
60
+ });
61
+ /**
62
+ * Creates createParameterProperty.
63
+ * @param type Input type value.
64
+ * @returns Return value output.
65
+ * @example
66
+ * ```typescript
67
+ * createParameterProperty();
68
+ * ```
69
+ */
70
+ const createParameterProperty = (type) => ({
71
+ parameter: createParameter(type),
72
+ type: "TSParameterProperty",
73
+ });
74
+ /**
75
+ * Creates createRestParameter.
76
+ * @param type Input type value.
77
+ * @returns Return value output.
78
+ * @example
79
+ * ```typescript
80
+ * createRestParameter();
81
+ * ```
82
+ */
83
+ const createRestParameter = (type) => ({
84
+ argument: createParameter(type),
85
+ type: "RestElement",
86
+ });
87
+ /**
88
+ * Creates createFunctionNode.
89
+ * @param overrides Input overrides value.
90
+ * @returns Return value output.
91
+ * @example
92
+ * ```typescript
93
+ * createFunctionNode();
94
+ * ```
95
+ */
96
+ const createFunctionNode = (overrides) => ({
97
+ params: [],
98
+ type: "FunctionDeclaration",
99
+ ...overrides,
100
+ });
101
+ /**
102
+ * Runs the listener for the supplied node.
103
+ * @param context Rule execution context.
104
+ * @param node Node to run through the listener.
105
+ * @example
106
+ * ```typescript
107
+ * runListener(context, node);
108
+ * ```
109
+ */
110
+ const runListener = (context, node) => {
111
+ const listeners = preferInterfaceTypesRule.create(context);
112
+ const listener = listeners.FunctionDeclaration;
113
+ listener?.(node);
114
+ };
115
+ export { createBareParameter, createContext, createFunctionNode, createParameter, createParameterProperty, createRestParameter, createTypeAnnotation, runListener, };
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RvbWFpbi9jb3JlL3ByZWZlci1pbnRlcmZhY2UtdHlwZXMvdGVzdC1oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQStDbEQ7Ozs7Ozs7R0FPRztBQUNILE1BQU0sYUFBYSxHQUFHLEdBQXFCLEVBQUU7SUFDM0MsTUFBTSxPQUFPLEdBQWtCLEVBQUUsQ0FBQztJQUNsQyxNQUFNLE9BQU8sR0FBcUI7UUFDaEMsRUFBRSxFQUFFLHdCQUF3QjtRQUM1QixPQUFPLEVBQUUsRUFBRTtRQUNYLE1BQU0sRUFBRSxDQUFDLFVBQWlDLEVBQVEsRUFBRTtZQUNsRCxNQUFNLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxHQUFHLFVBQXFDLENBQUM7WUFDbEUsTUFBTSxXQUFXLEdBQWdCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFFckUsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM1QixDQUFDO0tBQzZCLENBQUM7SUFFakMsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztBQUM5QixDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxJQUFZLEVBQXlCLEVBQUUsQ0FBQyxDQUFDO0lBQ3JFLGNBQWMsRUFBRSxFQUFFLElBQUksRUFBRTtDQUN6QixDQUFDLENBQUM7QUFFSDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sZUFBZSxHQUFHLENBQUMsSUFBWSxFQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELElBQUksRUFBRSxPQUFPO0lBQ2IsSUFBSSxFQUFFLFlBQVk7SUFDbEIsY0FBYyxFQUFFLG9CQUFvQixDQUFDLElBQUksQ0FBQztDQUMzQyxDQUFDLENBQUM7QUFFSDs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxtQkFBbUIsR0FBRyxHQUFhLEVBQUUsQ0FBQyxDQUFDO0lBQzNDLElBQUksRUFBRSxPQUFPO0lBQ2IsSUFBSSxFQUFFLFlBQVk7Q0FDbkIsQ0FBQyxDQUFDO0FBRUg7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLHVCQUF1QixHQUFHLENBQUMsSUFBWSxFQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQzNELFNBQVMsRUFBRSxlQUFlLENBQUMsSUFBSSxDQUFDO0lBQ2hDLElBQUksRUFBRSxxQkFBcUI7Q0FDNUIsQ0FBQyxDQUFDO0FBRUg7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLG1CQUFtQixHQUFHLENBQUMsSUFBWSxFQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELFFBQVEsRUFBRSxlQUFlLENBQUMsSUFBSSxDQUFDO0lBQy9CLElBQUksRUFBRSxhQUFhO0NBQ3BCLENBQUMsQ0FBQztBQUVIOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLFNBQTRCLEVBQVksRUFBRSxDQUFDLENBQUM7SUFDdEUsTUFBTSxFQUFFLEVBQUU7SUFDVixJQUFJLEVBQUUscUJBQXFCO0lBQzNCLEdBQUcsU0FBUztDQUNiLENBQUMsQ0FBQztBQUVIOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxXQUFXLEdBQUcsQ0FBQyxPQUF5QixFQUFFLElBQWUsRUFBUSxFQUFFO0lBQ3ZFLE1BQU0sU0FBUyxHQUFHLHdCQUF3QixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMzRCxNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsbUJBRWQsQ0FBQztJQUVkLFFBQVEsRUFBRSxDQUFDLElBQTRCLENBQUMsQ0FBQztBQUMzQyxDQUFDLENBQUM7QUFFRixPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLGFBQWEsRUFDYixrQkFBa0IsRUFDbEIsZUFBZSxFQUNmLHVCQUF1QixFQUN2QixtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLFdBQVcsR0FDWixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBSdWxlIH0gZnJvbSBcImVzbGludFwiO1xuXG5pbXBvcnQgeyBwcmVmZXJJbnRlcmZhY2VUeXBlc1J1bGUgfSBmcm9tIFwiLi9ydWxlXCI7XG5cbi8qKiBUeXBlIGRlZmluaXRpb24gZm9yIHJ1bGUgZGF0YS4gKi9cbmludGVyZmFjZSBNb2NrTm9kZSB7XG4gIC8qKiBJbmRleCBzaWduYXR1cmUgdmFsdWUgbWFwLiAqL1xuICBba2V5OiBzdHJpbmddOiB1bmtub3duO1xuXG4gIC8qKiBUeXBlIGZpZWxkIHZhbHVlLiAqL1xuICB0eXBlOiBzdHJpbmc7XG59XG5cbi8qKiBUeXBlIGRlZmluaXRpb24gZm9yIHJ1bGUgZGF0YS4gKi9cbmludGVyZmFjZSBSZXBvcnREZXNjcmlwdG9yRGV0YWlscyB7XG4gIC8qKiBNZXNzYWdlSWQgZmllbGQgdmFsdWUuICovXG4gIG1lc3NhZ2VJZD86IHN0cmluZztcblxuICAvKiogTm9kZSBmaWVsZCB2YWx1ZS4gKi9cbiAgbm9kZT86IFJ1bGUuTm9kZTtcbn1cblxuLyoqIFR5cGUgZGVmaW5pdGlvbiBmb3IgcnVsZSBkYXRhLiAqL1xuaW50ZXJmYWNlIFJlcG9ydEVudHJ5IHtcbiAgLyoqIE1lc3NhZ2VJZCBoZWxwZXIgdmFsdWUuICovXG4gIG1lc3NhZ2VJZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKiBOb2RlVHlwZSBmaWVsZCB2YWx1ZS4gKi9cbiAgbm9kZVR5cGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbn1cblxuLyoqIFR5cGUgZGVmaW5pdGlvbiBmb3IgcnVsZSBkYXRhLiAqL1xuaW50ZXJmYWNlIFJ1bGVDb250ZXh0U3RhdGUge1xuICAvKiogQ29udGV4dCBmaWVsZCB2YWx1ZS4gKi9cbiAgY29udGV4dDogUnVsZS5SdWxlQ29udGV4dDtcblxuICAvKiogUmVwb3J0cyBmaWVsZCB2YWx1ZS4gKi9cbiAgcmVwb3J0czogUmVwb3J0RW50cnlbXTtcbn1cblxuLyoqIFR5cGUgZGVmaW5pdGlvbiBmb3IgcnVsZSBkYXRhLiAqL1xuaW50ZXJmYWNlIFR5cGVBbm5vdGF0aW9uV3JhcHBlciB7XG4gIC8qKiBUeXBlQW5ub3RhdGlvbiBmaWVsZCB2YWx1ZS4gKi9cbiAgdHlwZUFubm90YXRpb246IHtcbiAgICAvKiogVHlwZSBmaWVsZCB2YWx1ZS4gKi9cbiAgICB0eXBlOiBzdHJpbmc7XG4gIH07XG59XG5cbi8qKlxuICogQ3JlYXRlcyBjcmVhdGVDb250ZXh0LlxuICogQHJldHVybnMgUmV0dXJuIHZhbHVlIG91dHB1dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjcmVhdGVDb250ZXh0KCk7XG4gKiBgYGBcbiAqL1xuY29uc3QgY3JlYXRlQ29udGV4dCA9ICgpOiBSdWxlQ29udGV4dFN0YXRlID0+IHtcbiAgY29uc3QgcmVwb3J0czogUmVwb3J0RW50cnlbXSA9IFtdO1xuICBjb25zdCBjb250ZXh0OiBSdWxlLlJ1bGVDb250ZXh0ID0ge1xuICAgIGlkOiBcInByZWZlci1pbnRlcmZhY2UtdHlwZXNcIixcbiAgICBvcHRpb25zOiBbXSxcbiAgICByZXBvcnQ6IChkZXNjcmlwdG9yOiBSdWxlLlJlcG9ydERlc2NyaXB0b3IpOiB2b2lkID0+IHtcbiAgICAgIGNvbnN0IHsgbWVzc2FnZUlkLCBub2RlIH0gPSBkZXNjcmlwdG9yIGFzIFJlcG9ydERlc2NyaXB0b3JEZXRhaWxzO1xuICAgICAgY29uc3QgcmVwb3J0RW50cnk6IFJlcG9ydEVudHJ5ID0geyBtZXNzYWdlSWQsIG5vZGVUeXBlOiBub2RlPy50eXBlIH07XG5cbiAgICAgIHJlcG9ydHMucHVzaChyZXBvcnRFbnRyeSk7XG4gICAgfSxcbiAgfSBhcyB1bmtub3duIGFzIFJ1bGUuUnVsZUNvbnRleHQ7XG5cbiAgcmV0dXJuIHsgY29udGV4dCwgcmVwb3J0cyB9O1xufTtcblxuLyoqXG4gKiBDcmVhdGVzIGNyZWF0ZVR5cGVBbm5vdGF0aW9uLlxuICogQHBhcmFtIHR5cGUgSW5wdXQgdHlwZSB2YWx1ZS5cbiAqIEByZXR1cm5zIFJldHVybiB2YWx1ZSBvdXRwdXQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY3JlYXRlVHlwZUFubm90YXRpb24oKTtcbiAqIGBgYFxuICovXG5jb25zdCBjcmVhdGVUeXBlQW5ub3RhdGlvbiA9ICh0eXBlOiBzdHJpbmcpOiBUeXBlQW5ub3RhdGlvbldyYXBwZXIgPT4gKHtcbiAgdHlwZUFubm90YXRpb246IHsgdHlwZSB9LFxufSk7XG5cbi8qKlxuICogQ3JlYXRlcyBjcmVhdGVQYXJhbWV0ZXIuXG4gKiBAcGFyYW0gdHlwZSBJbnB1dCB0eXBlIHZhbHVlLlxuICogQHJldHVybnMgUmV0dXJuIHZhbHVlIG91dHB1dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjcmVhdGVQYXJhbWV0ZXIoKTtcbiAqIGBgYFxuICovXG5jb25zdCBjcmVhdGVQYXJhbWV0ZXIgPSAodHlwZTogc3RyaW5nKTogTW9ja05vZGUgPT4gKHtcbiAgbmFtZTogXCJ2YWx1ZVwiLFxuICB0eXBlOiBcIklkZW50aWZpZXJcIixcbiAgdHlwZUFubm90YXRpb246IGNyZWF0ZVR5cGVBbm5vdGF0aW9uKHR5cGUpLFxufSk7XG5cbi8qKlxuICogQ3JlYXRlcyBjcmVhdGVCYXJlUGFyYW1ldGVyLlxuICogQHJldHVybnMgUmV0dXJuIHZhbHVlIG91dHB1dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjcmVhdGVCYXJlUGFyYW1ldGVyKCk7XG4gKiBgYGBcbiAqL1xuY29uc3QgY3JlYXRlQmFyZVBhcmFtZXRlciA9ICgpOiBNb2NrTm9kZSA9PiAoe1xuICBuYW1lOiBcInZhbHVlXCIsXG4gIHR5cGU6IFwiSWRlbnRpZmllclwiLFxufSk7XG5cbi8qKlxuICogQ3JlYXRlcyBjcmVhdGVQYXJhbWV0ZXJQcm9wZXJ0eS5cbiAqIEBwYXJhbSB0eXBlIElucHV0IHR5cGUgdmFsdWUuXG4gKiBAcmV0dXJucyBSZXR1cm4gdmFsdWUgb3V0cHV0LlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNyZWF0ZVBhcmFtZXRlclByb3BlcnR5KCk7XG4gKiBgYGBcbiAqL1xuY29uc3QgY3JlYXRlUGFyYW1ldGVyUHJvcGVydHkgPSAodHlwZTogc3RyaW5nKTogTW9ja05vZGUgPT4gKHtcbiAgcGFyYW1ldGVyOiBjcmVhdGVQYXJhbWV0ZXIodHlwZSksXG4gIHR5cGU6IFwiVFNQYXJhbWV0ZXJQcm9wZXJ0eVwiLFxufSk7XG5cbi8qKlxuICogQ3JlYXRlcyBjcmVhdGVSZXN0UGFyYW1ldGVyLlxuICogQHBhcmFtIHR5cGUgSW5wdXQgdHlwZSB2YWx1ZS5cbiAqIEByZXR1cm5zIFJldHVybiB2YWx1ZSBvdXRwdXQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY3JlYXRlUmVzdFBhcmFtZXRlcigpO1xuICogYGBgXG4gKi9cbmNvbnN0IGNyZWF0ZVJlc3RQYXJhbWV0ZXIgPSAodHlwZTogc3RyaW5nKTogTW9ja05vZGUgPT4gKHtcbiAgYXJndW1lbnQ6IGNyZWF0ZVBhcmFtZXRlcih0eXBlKSxcbiAgdHlwZTogXCJSZXN0RWxlbWVudFwiLFxufSk7XG5cbi8qKlxuICogQ3JlYXRlcyBjcmVhdGVGdW5jdGlvbk5vZGUuXG4gKiBAcGFyYW0gb3ZlcnJpZGVzIElucHV0IG92ZXJyaWRlcyB2YWx1ZS5cbiAqIEByZXR1cm5zIFJldHVybiB2YWx1ZSBvdXRwdXQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY3JlYXRlRnVuY3Rpb25Ob2RlKCk7XG4gKiBgYGBcbiAqL1xuY29uc3QgY3JlYXRlRnVuY3Rpb25Ob2RlID0gKG92ZXJyaWRlczogUGFydGlhbDxNb2NrTm9kZT4pOiBNb2NrTm9kZSA9PiAoe1xuICBwYXJhbXM6IFtdLFxuICB0eXBlOiBcIkZ1bmN0aW9uRGVjbGFyYXRpb25cIixcbiAgLi4ub3ZlcnJpZGVzLFxufSk7XG5cbi8qKlxuICogUnVucyB0aGUgbGlzdGVuZXIgZm9yIHRoZSBzdXBwbGllZCBub2RlLlxuICogQHBhcmFtIGNvbnRleHQgUnVsZSBleGVjdXRpb24gY29udGV4dC5cbiAqIEBwYXJhbSBub2RlIE5vZGUgdG8gcnVuIHRocm91Z2ggdGhlIGxpc3RlbmVyLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIHJ1bkxpc3RlbmVyKGNvbnRleHQsIG5vZGUpO1xuICogYGBgXG4gKi9cbmNvbnN0IHJ1bkxpc3RlbmVyID0gKGNvbnRleHQ6IFJ1bGUuUnVsZUNvbnRleHQsIG5vZGU/OiBNb2NrTm9kZSk6IHZvaWQgPT4ge1xuICBjb25zdCBsaXN0ZW5lcnMgPSBwcmVmZXJJbnRlcmZhY2VUeXBlc1J1bGUuY3JlYXRlKGNvbnRleHQpO1xuICBjb25zdCBsaXN0ZW5lciA9IGxpc3RlbmVycy5GdW5jdGlvbkRlY2xhcmF0aW9uIGFzXG4gICAgfCAoKG5vZGU6IFJ1bGUuTm9kZSkgPT4gdm9pZClcbiAgICB8IHVuZGVmaW5lZDtcblxuICBsaXN0ZW5lcj8uKG5vZGUgYXMgdW5rbm93biBhcyBSdWxlLk5vZGUpO1xufTtcblxuZXhwb3J0IHtcbiAgY3JlYXRlQmFyZVBhcmFtZXRlcixcbiAgY3JlYXRlQ29udGV4dCxcbiAgY3JlYXRlRnVuY3Rpb25Ob2RlLFxuICBjcmVhdGVQYXJhbWV0ZXIsXG4gIGNyZWF0ZVBhcmFtZXRlclByb3BlcnR5LFxuICBjcmVhdGVSZXN0UGFyYW1ldGVyLFxuICBjcmVhdGVUeXBlQW5ub3RhdGlvbixcbiAgcnVuTGlzdGVuZXIsXG59O1xuIl19
@@ -2,11 +2,13 @@
2
2
  interface CustomRuleDocumentation {
3
3
  /** Human-readable rule description. */
4
4
  description: string;
5
+ /** Whether the rule is part of a recommended preset. */
6
+ recommended: boolean;
5
7
  /** Canonical documentation URL for the rule. */
6
8
  url: string;
7
9
  }
8
10
  /** Base URL for published custom rule documentation pages. */
9
- declare const customRuleDocumentationBaseUrl = "https://github.com/codeperfect/eslint-plugin/blob/main/docs/rules";
11
+ declare const customRuleDocumentationBaseUrl = "https://github.com/parloti/eslint-plugin/blob/main/docs/rules";
10
12
  /**
11
13
  * Creates shared docs metadata for a package-owned custom rule.
12
14
  * @param ruleName ESLint rule name without the plugin prefix.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-rule-documentation.d.ts","sourceRoot":"","sources":["../../src/domain/custom-rule-documentation.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,UAAU,uBAAuB;IAC/B,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IAEpB,wDAAwD;IACxD,WAAW,EAAE,OAAO,CAAC;IAErB,gDAAgD;IAChD,GAAG,EAAE,MAAM,CAAC;CACb;AAED,8DAA8D;AAC9D,QAAA,MAAM,8BAA8B,kEAC6B,CAAC;AAElE;;;;;;;;;;;;GAYG;AACH,iBAAS,uBAAuB,CAC9B,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,GAClB,uBAAuB,CAMzB;AAED;;;;;;;;GAQG;AACH,iBAAS,6BAA6B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED,OAAO,EACL,uBAAuB,EACvB,8BAA8B,EAC9B,6BAA6B,GAC9B,CAAC;AACF,YAAY,EAAE,uBAAuB,EAAE,CAAC"}
@@ -0,0 +1,36 @@
1
+ /** Base URL for published custom rule documentation pages. */
2
+ const customRuleDocumentationBaseUrl = "https://github.com/parloti/eslint-plugin/blob/main/docs/rules";
3
+ /**
4
+ * Creates shared docs metadata for a package-owned custom rule.
5
+ * @param ruleName ESLint rule name without the plugin prefix.
6
+ * @param description Input description value.
7
+ * @returns Return value output.
8
+ * @example
9
+ * ```typescript
10
+ * const docs = createRuleDocumentation(
11
+ * "prefer-interface-types",
12
+ * "Rule description",
13
+ * );
14
+ * ```
15
+ */
16
+ function createRuleDocumentation(ruleName, description) {
17
+ return {
18
+ description,
19
+ recommended: false,
20
+ url: getCustomRuleDocumentationUrl(ruleName),
21
+ };
22
+ }
23
+ /**
24
+ * Builds the canonical documentation URL for a package-owned custom rule.
25
+ * @param ruleName ESLint rule name without the plugin prefix.
26
+ * @returns Return value output.
27
+ * @example
28
+ * ```typescript
29
+ * const url = getCustomRuleDocumentationUrl("prefer-interface-types");
30
+ * ```
31
+ */
32
+ function getCustomRuleDocumentationUrl(ruleName) {
33
+ return `${customRuleDocumentationBaseUrl}/${ruleName}.md`;
34
+ }
35
+ export { createRuleDocumentation, customRuleDocumentationBaseUrl, getCustomRuleDocumentationUrl, };
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXJ1bGUtZG9jdW1lbnRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb21haW4vY3VzdG9tLXJ1bGUtZG9jdW1lbnRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFZQSw4REFBOEQ7QUFDOUQsTUFBTSw4QkFBOEIsR0FDbEMsK0RBQStELENBQUM7QUFFbEU7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsU0FBUyx1QkFBdUIsQ0FDOUIsUUFBZ0IsRUFDaEIsV0FBbUI7SUFFbkIsT0FBTztRQUNMLFdBQVc7UUFDWCxXQUFXLEVBQUUsS0FBSztRQUNsQixHQUFHLEVBQUUsNkJBQTZCLENBQUMsUUFBUSxDQUFDO0tBQzdDLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7Ozs7O0dBUUc7QUFDSCxTQUFTLDZCQUE2QixDQUFDLFFBQWdCO0lBQ3JELE9BQU8sR0FBRyw4QkFBOEIsSUFBSSxRQUFRLEtBQUssQ0FBQztBQUM1RCxDQUFDO0FBRUQsT0FBTyxFQUNMLHVCQUF1QixFQUN2Qiw4QkFBOEIsRUFDOUIsNkJBQTZCLEdBQzlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiogTWluaW1hbCBzaGFyZWQgZG9jcyBtZXRhZGF0YSBzaGFwZSBmb3IgcGFja2FnZS1vd25lZCBjdXN0b20gcnVsZXMuICovXG5pbnRlcmZhY2UgQ3VzdG9tUnVsZURvY3VtZW50YXRpb24ge1xuICAvKiogSHVtYW4tcmVhZGFibGUgcnVsZSBkZXNjcmlwdGlvbi4gKi9cbiAgZGVzY3JpcHRpb246IHN0cmluZztcblxuICAvKiogV2hldGhlciB0aGUgcnVsZSBpcyBwYXJ0IG9mIGEgcmVjb21tZW5kZWQgcHJlc2V0LiAqL1xuICByZWNvbW1lbmRlZDogYm9vbGVhbjtcblxuICAvKiogQ2Fub25pY2FsIGRvY3VtZW50YXRpb24gVVJMIGZvciB0aGUgcnVsZS4gKi9cbiAgdXJsOiBzdHJpbmc7XG59XG5cbi8qKiBCYXNlIFVSTCBmb3IgcHVibGlzaGVkIGN1c3RvbSBydWxlIGRvY3VtZW50YXRpb24gcGFnZXMuICovXG5jb25zdCBjdXN0b21SdWxlRG9jdW1lbnRhdGlvbkJhc2VVcmwgPVxuICBcImh0dHBzOi8vZ2l0aHViLmNvbS9wYXJsb3RpL2VzbGludC1wbHVnaW4vYmxvYi9tYWluL2RvY3MvcnVsZXNcIjtcblxuLyoqXG4gKiBDcmVhdGVzIHNoYXJlZCBkb2NzIG1ldGFkYXRhIGZvciBhIHBhY2thZ2Utb3duZWQgY3VzdG9tIHJ1bGUuXG4gKiBAcGFyYW0gcnVsZU5hbWUgRVNMaW50IHJ1bGUgbmFtZSB3aXRob3V0IHRoZSBwbHVnaW4gcHJlZml4LlxuICogQHBhcmFtIGRlc2NyaXB0aW9uIElucHV0IGRlc2NyaXB0aW9uIHZhbHVlLlxuICogQHJldHVybnMgUmV0dXJuIHZhbHVlIG91dHB1dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBkb2NzID0gY3JlYXRlUnVsZURvY3VtZW50YXRpb24oXG4gKiAgIFwicHJlZmVyLWludGVyZmFjZS10eXBlc1wiLFxuICogICBcIlJ1bGUgZGVzY3JpcHRpb25cIixcbiAqICk7XG4gKiBgYGBcbiAqL1xuZnVuY3Rpb24gY3JlYXRlUnVsZURvY3VtZW50YXRpb24oXG4gIHJ1bGVOYW1lOiBzdHJpbmcsXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcsXG4pOiBDdXN0b21SdWxlRG9jdW1lbnRhdGlvbiB7XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb24sXG4gICAgcmVjb21tZW5kZWQ6IGZhbHNlLFxuICAgIHVybDogZ2V0Q3VzdG9tUnVsZURvY3VtZW50YXRpb25VcmwocnVsZU5hbWUpLFxuICB9O1xufVxuXG4vKipcbiAqIEJ1aWxkcyB0aGUgY2Fub25pY2FsIGRvY3VtZW50YXRpb24gVVJMIGZvciBhIHBhY2thZ2Utb3duZWQgY3VzdG9tIHJ1bGUuXG4gKiBAcGFyYW0gcnVsZU5hbWUgRVNMaW50IHJ1bGUgbmFtZSB3aXRob3V0IHRoZSBwbHVnaW4gcHJlZml4LlxuICogQHJldHVybnMgUmV0dXJuIHZhbHVlIG91dHB1dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCB1cmwgPSBnZXRDdXN0b21SdWxlRG9jdW1lbnRhdGlvblVybChcInByZWZlci1pbnRlcmZhY2UtdHlwZXNcIik7XG4gKiBgYGBcbiAqL1xuZnVuY3Rpb24gZ2V0Q3VzdG9tUnVsZURvY3VtZW50YXRpb25VcmwocnVsZU5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBgJHtjdXN0b21SdWxlRG9jdW1lbnRhdGlvbkJhc2VVcmx9LyR7cnVsZU5hbWV9Lm1kYDtcbn1cblxuZXhwb3J0IHtcbiAgY3JlYXRlUnVsZURvY3VtZW50YXRpb24sXG4gIGN1c3RvbVJ1bGVEb2N1bWVudGF0aW9uQmFzZVVybCxcbiAgZ2V0Q3VzdG9tUnVsZURvY3VtZW50YXRpb25VcmwsXG59O1xuZXhwb3J0IHR5cGUgeyBDdXN0b21SdWxlRG9jdW1lbnRhdGlvbiB9O1xuIl19
@@ -0,0 +1,4 @@
1
+ export { noInterfaceMemberDocumentationRule } from "./no-interface-member-docs/index.js";
2
+ export { requireExampleLanguageRule } from "./require-example-language/index.js";
3
+ export { singleLineJsdocRule } from "./single-line-jsdoc/index.js";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domain/docs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kCAAkC,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { noInterfaceMemberDocumentationRule } from "./no-interface-member-docs/index.js";
2
+ export { requireExampleLanguageRule } from "./require-example-language/index.js";
3
+ export { singleLineJsdocRule } from "./single-line-jsdoc/index.js";
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZG9tYWluL2RvY3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDeEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBub0ludGVyZmFjZU1lbWJlckRvY3VtZW50YXRpb25SdWxlIH0gZnJvbSBcIi4vbm8taW50ZXJmYWNlLW1lbWJlci1kb2NzXCI7XG5leHBvcnQgeyByZXF1aXJlRXhhbXBsZUxhbmd1YWdlUnVsZSB9IGZyb20gXCIuL3JlcXVpcmUtZXhhbXBsZS1sYW5ndWFnZVwiO1xuZXhwb3J0IHsgc2luZ2xlTGluZUpzZG9jUnVsZSB9IGZyb20gXCIuL3NpbmdsZS1saW5lLWpzZG9jXCI7XG4iXX0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"comment-utilities-test-helpers.d.ts","sourceRoot":"","sources":["../../../../src/domain/docs/no-interface-member-docs/comment-utilities-test-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC,qCAAqC;AACrC,KAAK,OAAO,GAAG,UAAU,CACvB,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,gBAAgB,CAAC,CACjD,CAAC,MAAM,CAAC,CAAC;AAEV,qCAAqC;AACrC,UAAU,gBAAgB;IACxB,wBAAwB;IACxB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;IAEhB,0BAA0B;IAC1B,MAAM,EAAE,OAAO,CAAC;IAEhB,8BAA8B;IAC9B,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;CAC5C;AAED,qCAAqC;AACrC,UAAU,kBAAkB;IAC1B,wBAAwB;IACxB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;IAEhB,8BAA8B;IAC9B,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;CAC5C;AAED,qCAAqC;AACrC,UAAU,kBAAkB;IAC1B,2BAA2B;IAC3B,OAAO,EAAE,OAAO,CAAC;IAEjB,wBAAwB;IACxB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;IAEhB,8BAA8B;IAC9B,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;CAC5C;AAED;;;;;;;;;GASG;AACH,QAAA,MAAM,aAAa,GAAI,OAAO,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,KAAG,OAI/D,CAAC;AAEH;;;;;;;;;GASG;AACH,QAAA,MAAM,gBAAgB,GACpB,MAAM,MAAM,EACZ,UAAU,OAAO,EAAE,KAClB,IAAI,CAAC,WAAW,CAAC,YAAY,CAIM,CAAC;AAiBvC;;;;;;;GAOG;AACH,QAAA,MAAM,sBAAsB,QAAO,gBAkBlC,CAAC;AAEF;;;;;;;GAOG;AACH,QAAA,MAAM,wBAAwB,QAAO,kBAYpC,CAAC;AAEF;;;;;;;GAOG;AACH,QAAA,MAAM,qBAAqB,QAAO,kBAYjC,CAAC;AAEF;;;;;;;GAOG;AACH,QAAA,MAAM,yBAAyB,QAAO,kBAWrC,CAAC;AAEF,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,qBAAqB,EACrB,yBAAyB,EACzB,wBAAwB,EACxB,gBAAgB,GACjB,CAAC;AACF,YAAY,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,129 @@
1
+ /**
2
+ * Creates a block comment value for tests.
3
+ * @param value Comment value without delimiters.
4
+ * @param range Comment range in the source text.
5
+ * @returns The comment object.
6
+ * @example
7
+ * ```typescript
8
+ * const comment = createComment("*\n * ok\n ", [0, 10]);
9
+ * ```
10
+ */
11
+ const createComment = (value, range) => ({
12
+ range,
13
+ type: "Block",
14
+ value,
15
+ });
16
+ /**
17
+ * Creates a source code wrapper with comments.
18
+ * @param text Full source text.
19
+ * @param comments Comment nodes to return.
20
+ * @returns SourceCode stub used in tests.
21
+ * @example
22
+ * ```typescript
23
+ * const sourceCode = createSourceCode("function demo() {}", []);
24
+ * ```
25
+ */
26
+ const createSourceCode = (text, comments) => ({
27
+ getAllComments: () => comments,
28
+ text,
29
+ });
30
+ /**
31
+ * Creates a function node for the test source text.
32
+ * @param sourceText Source content that includes a function.
33
+ * @returns Function declaration node used in tests.
34
+ * @example
35
+ * ```typescript
36
+ * const node = createFunctionNode("function demo() {}");
37
+ * ```
38
+ */
39
+ const createFunctionNode = (sourceText) => ({
40
+ range: [sourceText.indexOf("function"), sourceText.length],
41
+ type: "FunctionDeclaration",
42
+ });
43
+ /**
44
+ * Creates a context with two JSDoc comments.
45
+ * @returns The dual-comment context.
46
+ * @example
47
+ * ```typescript
48
+ * const context = createDualJsdocContext();
49
+ * ```
50
+ */
51
+ const createDualJsdocContext = () => {
52
+ const sourceText = [
53
+ "/**\n * first\n */",
54
+ "/**\n * second\n */",
55
+ "function demo() {}",
56
+ ].join("\n");
57
+ const firstStart = sourceText.indexOf("/**");
58
+ const firstEnd = sourceText.indexOf("*/") + 2;
59
+ const secondStart = sourceText.indexOf("/**", firstEnd);
60
+ const secondEnd = sourceText.indexOf("*/", secondStart) + 2;
61
+ const first = createComment("*\n * first\n ", [firstStart, firstEnd]);
62
+ const second = createComment("*\n * second\n ", [secondStart, secondEnd]);
63
+ return {
64
+ node: createFunctionNode(sourceText),
65
+ second,
66
+ sourceCode: createSourceCode(sourceText, [first, second]),
67
+ };
68
+ };
69
+ /**
70
+ * Creates a context with a single JSDoc comment.
71
+ * @returns The single-comment context.
72
+ * @example
73
+ * ```typescript
74
+ * const context = createSingleJsdocContext();
75
+ * ```
76
+ */
77
+ const createSingleJsdocContext = () => {
78
+ const sourceText = ["/**\n * ok\n */", "function demo() {}"].join("\n");
79
+ const comment = createComment("*\n * ok\n ", [
80
+ 0,
81
+ sourceText.indexOf("*/") + 2,
82
+ ]);
83
+ return {
84
+ comment,
85
+ node: createFunctionNode(sourceText),
86
+ sourceCode: createSourceCode(sourceText, [comment]),
87
+ };
88
+ };
89
+ /**
90
+ * Creates a context with a non-JSDoc comment.
91
+ * @returns The lookup context.
92
+ * @example
93
+ * ```typescript
94
+ * const context = createNonJsdocContext();
95
+ * ```
96
+ */
97
+ const createNonJsdocContext = () => {
98
+ const sourceText = "// line\nfunction demo() {}";
99
+ const comment = {
100
+ range: [0, 7],
101
+ type: "Line",
102
+ value: " line",
103
+ };
104
+ return {
105
+ node: createFunctionNode(sourceText),
106
+ sourceCode: createSourceCode(sourceText, [comment]),
107
+ };
108
+ };
109
+ /**
110
+ * Creates a context with a JSDoc comment missing range data.
111
+ * @returns The lookup context.
112
+ * @example
113
+ * ```typescript
114
+ * const context = createRangeMissingContext();
115
+ * ```
116
+ */
117
+ const createRangeMissingContext = () => {
118
+ const sourceText = "function demo() {}";
119
+ const comment = {
120
+ type: "Block",
121
+ value: "*\n * ok\n ",
122
+ };
123
+ return {
124
+ node: createFunctionNode(sourceText),
125
+ sourceCode: createSourceCode(sourceText, [comment]),
126
+ };
127
+ };
128
+ export { createComment, createDualJsdocContext, createNonJsdocContext, createRangeMissingContext, createSingleJsdocContext, createSourceCode, };
129
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC11dGlsaXRpZXMtdGVzdC1oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RvbWFpbi9kb2NzL25vLWludGVyZmFjZS1tZW1iZXItZG9jcy9jb21tZW50LXV0aWxpdGllcy10ZXN0LWhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0NBOzs7Ozs7Ozs7R0FTRztBQUNILE1BQU0sYUFBYSxHQUFHLENBQUMsS0FBYSxFQUFFLEtBQXdCLEVBQVcsRUFBRSxDQUFDLENBQUM7SUFDM0UsS0FBSztJQUNMLElBQUksRUFBRSxPQUFPO0lBQ2IsS0FBSztDQUNOLENBQUMsQ0FBQztBQUVIOzs7Ozs7Ozs7R0FTRztBQUNILE1BQU0sZ0JBQWdCLEdBQUcsQ0FDdkIsSUFBWSxFQUNaLFFBQW1CLEVBQ2EsRUFBRSxDQUNsQyxDQUFDO0lBQ0MsY0FBYyxFQUFFLEdBQWMsRUFBRSxDQUFDLFFBQVE7SUFDekMsSUFBSTtDQUNMLENBQW1DLENBQUM7QUFFdkM7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLGtCQUFrQixHQUFHLENBQUMsVUFBa0IsRUFBYSxFQUFFLENBQzNELENBQUM7SUFDQyxLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUM7SUFDMUQsSUFBSSxFQUFFLHFCQUFxQjtDQUM1QixDQUFjLENBQUM7QUFFbEI7Ozs7Ozs7R0FPRztBQUNILE1BQU0sc0JBQXNCLEdBQUcsR0FBcUIsRUFBRTtJQUNwRCxNQUFNLFVBQVUsR0FBRztRQUNqQixvQkFBb0I7UUFDcEIscUJBQXFCO1FBQ3JCLG9CQUFvQjtLQUNyQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNiLE1BQU0sVUFBVSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0MsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDOUMsTUFBTSxXQUFXLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDeEQsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzVELE1BQU0sS0FBSyxHQUFHLGFBQWEsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLE1BQU0sTUFBTSxHQUFHLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBRTFFLE9BQU87UUFDTCxJQUFJLEVBQUUsa0JBQWtCLENBQUMsVUFBVSxDQUFDO1FBQ3BDLE1BQU07UUFDTixVQUFVLEVBQUUsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0tBQzFELENBQUM7QUFDSixDQUFDLENBQUM7QUFFRjs7Ozs7OztHQU9HO0FBQ0gsTUFBTSx3QkFBd0IsR0FBRyxHQUF1QixFQUFFO0lBQ3hELE1BQU0sVUFBVSxHQUFHLENBQUMsaUJBQWlCLEVBQUUsb0JBQW9CLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEUsTUFBTSxPQUFPLEdBQUcsYUFBYSxDQUFDLGFBQWEsRUFBRTtRQUMzQyxDQUFDO1FBQ0QsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO0tBQzdCLENBQUMsQ0FBQztJQUVILE9BQU87UUFDTCxPQUFPO1FBQ1AsSUFBSSxFQUFFLGtCQUFrQixDQUFDLFVBQVUsQ0FBQztRQUNwQyxVQUFVLEVBQUUsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7S0FDcEQsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLHFCQUFxQixHQUFHLEdBQXVCLEVBQUU7SUFDckQsTUFBTSxVQUFVLEdBQUcsNkJBQTZCLENBQUM7SUFDakQsTUFBTSxPQUFPLEdBQUc7UUFDZCxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2IsSUFBSSxFQUFFLE1BQU07UUFDWixLQUFLLEVBQUUsT0FBTztLQUNKLENBQUM7SUFFYixPQUFPO1FBQ0wsSUFBSSxFQUFFLGtCQUFrQixDQUFDLFVBQVUsQ0FBQztRQUNwQyxVQUFVLEVBQUUsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7S0FDcEQsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLHlCQUF5QixHQUFHLEdBQXVCLEVBQUU7SUFDekQsTUFBTSxVQUFVLEdBQUcsb0JBQW9CLENBQUM7SUFDeEMsTUFBTSxPQUFPLEdBQUc7UUFDZCxJQUFJLEVBQUUsT0FBTztRQUNiLEtBQUssRUFBRSxhQUFhO0tBQ1YsQ0FBQztJQUViLE9BQU87UUFDTCxJQUFJLEVBQUUsa0JBQWtCLENBQUMsVUFBVSxDQUFDO1FBQ3BDLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztLQUNwRCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsT0FBTyxFQUNMLGFBQWEsRUFDYixzQkFBc0IsRUFDdEIscUJBQXFCLEVBQ3JCLHlCQUF5QixFQUN6Qix3QkFBd0IsRUFDeEIsZ0JBQWdCLEdBQ2pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJ1bGUgfSBmcm9tIFwiZXNsaW50XCI7XG5cbi8qKiBUeXBlIGRlZmluaXRpb24gZm9yIHJ1bGUgZGF0YS4gKi9cbnR5cGUgQ29tbWVudCA9IFJldHVyblR5cGU8XG4gIFJ1bGUuUnVsZUNvbnRleHRbXCJzb3VyY2VDb2RlXCJdW1wiZ2V0QWxsQ29tbWVudHNcIl1cbj5bbnVtYmVyXTtcblxuLyoqIFR5cGUgZGVmaW5pdGlvbiBmb3IgcnVsZSBkYXRhLiAqL1xuaW50ZXJmYWNlIER1YWxKc2RvY0NvbnRleHQge1xuICAvKiogTm9kZSBmaWVsZCB2YWx1ZS4gKi9cbiAgbm9kZTogUnVsZS5Ob2RlO1xuXG4gIC8qKiBTZWNvbmQgZmllbGQgdmFsdWUuICovXG4gIHNlY29uZDogQ29tbWVudDtcblxuICAvKiogU291cmNlQ29kZSBmaWVsZCB2YWx1ZS4gKi9cbiAgc291cmNlQ29kZTogUnVsZS5SdWxlQ29udGV4dFtcInNvdXJjZUNvZGVcIl07XG59XG5cbi8qKiBUeXBlIGRlZmluaXRpb24gZm9yIHJ1bGUgZGF0YS4gKi9cbmludGVyZmFjZSBKc2RvY0xvb2t1cENvbnRleHQge1xuICAvKiogTm9kZSBmaWVsZCB2YWx1ZS4gKi9cbiAgbm9kZTogUnVsZS5Ob2RlO1xuXG4gIC8qKiBTb3VyY2VDb2RlIGZpZWxkIHZhbHVlLiAqL1xuICBzb3VyY2VDb2RlOiBSdWxlLlJ1bGVDb250ZXh0W1wic291cmNlQ29kZVwiXTtcbn1cblxuLyoqIFR5cGUgZGVmaW5pdGlvbiBmb3IgcnVsZSBkYXRhLiAqL1xuaW50ZXJmYWNlIFNpbmdsZUpzZG9jQ29udGV4dCB7XG4gIC8qKiBDb21tZW50IGZpZWxkIHZhbHVlLiAqL1xuICBjb21tZW50OiBDb21tZW50O1xuXG4gIC8qKiBOb2RlIGZpZWxkIHZhbHVlLiAqL1xuICBub2RlOiBSdWxlLk5vZGU7XG5cbiAgLyoqIFNvdXJjZUNvZGUgZmllbGQgdmFsdWUuICovXG4gIHNvdXJjZUNvZGU6IFJ1bGUuUnVsZUNvbnRleHRbXCJzb3VyY2VDb2RlXCJdO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBibG9jayBjb21tZW50IHZhbHVlIGZvciB0ZXN0cy5cbiAqIEBwYXJhbSB2YWx1ZSBDb21tZW50IHZhbHVlIHdpdGhvdXQgZGVsaW1pdGVycy5cbiAqIEBwYXJhbSByYW5nZSBDb21tZW50IHJhbmdlIGluIHRoZSBzb3VyY2UgdGV4dC5cbiAqIEByZXR1cm5zIFRoZSBjb21tZW50IG9iamVjdC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBjb21tZW50ID0gY3JlYXRlQ29tbWVudChcIipcXG4gKiBva1xcbiBcIiwgWzAsIDEwXSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgY3JlYXRlQ29tbWVudCA9ICh2YWx1ZTogc3RyaW5nLCByYW5nZT86IFtudW1iZXIsIG51bWJlcl0pOiBDb21tZW50ID0+ICh7XG4gIHJhbmdlLFxuICB0eXBlOiBcIkJsb2NrXCIsXG4gIHZhbHVlLFxufSk7XG5cbi8qKlxuICogQ3JlYXRlcyBhIHNvdXJjZSBjb2RlIHdyYXBwZXIgd2l0aCBjb21tZW50cy5cbiAqIEBwYXJhbSB0ZXh0IEZ1bGwgc291cmNlIHRleHQuXG4gKiBAcGFyYW0gY29tbWVudHMgQ29tbWVudCBub2RlcyB0byByZXR1cm4uXG4gKiBAcmV0dXJucyBTb3VyY2VDb2RlIHN0dWIgdXNlZCBpbiB0ZXN0cy5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBzb3VyY2VDb2RlID0gY3JlYXRlU291cmNlQ29kZShcImZ1bmN0aW9uIGRlbW8oKSB7fVwiLCBbXSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgY3JlYXRlU291cmNlQ29kZSA9IChcbiAgdGV4dDogc3RyaW5nLFxuICBjb21tZW50czogQ29tbWVudFtdLFxuKTogUnVsZS5SdWxlQ29udGV4dFtcInNvdXJjZUNvZGVcIl0gPT5cbiAgKHtcbiAgICBnZXRBbGxDb21tZW50czogKCk6IENvbW1lbnRbXSA9PiBjb21tZW50cyxcbiAgICB0ZXh0LFxuICB9KSBhcyBSdWxlLlJ1bGVDb250ZXh0W1wic291cmNlQ29kZVwiXTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgZnVuY3Rpb24gbm9kZSBmb3IgdGhlIHRlc3Qgc291cmNlIHRleHQuXG4gKiBAcGFyYW0gc291cmNlVGV4dCBTb3VyY2UgY29udGVudCB0aGF0IGluY2x1ZGVzIGEgZnVuY3Rpb24uXG4gKiBAcmV0dXJucyBGdW5jdGlvbiBkZWNsYXJhdGlvbiBub2RlIHVzZWQgaW4gdGVzdHMuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3Qgbm9kZSA9IGNyZWF0ZUZ1bmN0aW9uTm9kZShcImZ1bmN0aW9uIGRlbW8oKSB7fVwiKTtcbiAqIGBgYFxuICovXG5jb25zdCBjcmVhdGVGdW5jdGlvbk5vZGUgPSAoc291cmNlVGV4dDogc3RyaW5nKTogUnVsZS5Ob2RlID0+XG4gICh7XG4gICAgcmFuZ2U6IFtzb3VyY2VUZXh0LmluZGV4T2YoXCJmdW5jdGlvblwiKSwgc291cmNlVGV4dC5sZW5ndGhdLFxuICAgIHR5cGU6IFwiRnVuY3Rpb25EZWNsYXJhdGlvblwiLFxuICB9KSBhcyBSdWxlLk5vZGU7XG5cbi8qKlxuICogQ3JlYXRlcyBhIGNvbnRleHQgd2l0aCB0d28gSlNEb2MgY29tbWVudHMuXG4gKiBAcmV0dXJucyBUaGUgZHVhbC1jb21tZW50IGNvbnRleHQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgY29udGV4dCA9IGNyZWF0ZUR1YWxKc2RvY0NvbnRleHQoKTtcbiAqIGBgYFxuICovXG5jb25zdCBjcmVhdGVEdWFsSnNkb2NDb250ZXh0ID0gKCk6IER1YWxKc2RvY0NvbnRleHQgPT4ge1xuICBjb25zdCBzb3VyY2VUZXh0ID0gW1xuICAgIFwiLyoqXFxuICogZmlyc3RcXG4gKi9cIixcbiAgICBcIi8qKlxcbiAqIHNlY29uZFxcbiAqL1wiLFxuICAgIFwiZnVuY3Rpb24gZGVtbygpIHt9XCIsXG4gIF0uam9pbihcIlxcblwiKTtcbiAgY29uc3QgZmlyc3RTdGFydCA9IHNvdXJjZVRleHQuaW5kZXhPZihcIi8qKlwiKTtcbiAgY29uc3QgZmlyc3RFbmQgPSBzb3VyY2VUZXh0LmluZGV4T2YoXCIqL1wiKSArIDI7XG4gIGNvbnN0IHNlY29uZFN0YXJ0ID0gc291cmNlVGV4dC5pbmRleE9mKFwiLyoqXCIsIGZpcnN0RW5kKTtcbiAgY29uc3Qgc2Vjb25kRW5kID0gc291cmNlVGV4dC5pbmRleE9mKFwiKi9cIiwgc2Vjb25kU3RhcnQpICsgMjtcbiAgY29uc3QgZmlyc3QgPSBjcmVhdGVDb21tZW50KFwiKlxcbiAqIGZpcnN0XFxuIFwiLCBbZmlyc3RTdGFydCwgZmlyc3RFbmRdKTtcbiAgY29uc3Qgc2Vjb25kID0gY3JlYXRlQ29tbWVudChcIipcXG4gKiBzZWNvbmRcXG4gXCIsIFtzZWNvbmRTdGFydCwgc2Vjb25kRW5kXSk7XG5cbiAgcmV0dXJuIHtcbiAgICBub2RlOiBjcmVhdGVGdW5jdGlvbk5vZGUoc291cmNlVGV4dCksXG4gICAgc2Vjb25kLFxuICAgIHNvdXJjZUNvZGU6IGNyZWF0ZVNvdXJjZUNvZGUoc291cmNlVGV4dCwgW2ZpcnN0LCBzZWNvbmRdKSxcbiAgfTtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIGNvbnRleHQgd2l0aCBhIHNpbmdsZSBKU0RvYyBjb21tZW50LlxuICogQHJldHVybnMgVGhlIHNpbmdsZS1jb21tZW50IGNvbnRleHQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgY29udGV4dCA9IGNyZWF0ZVNpbmdsZUpzZG9jQ29udGV4dCgpO1xuICogYGBgXG4gKi9cbmNvbnN0IGNyZWF0ZVNpbmdsZUpzZG9jQ29udGV4dCA9ICgpOiBTaW5nbGVKc2RvY0NvbnRleHQgPT4ge1xuICBjb25zdCBzb3VyY2VUZXh0ID0gW1wiLyoqXFxuICogb2tcXG4gKi9cIiwgXCJmdW5jdGlvbiBkZW1vKCkge31cIl0uam9pbihcIlxcblwiKTtcbiAgY29uc3QgY29tbWVudCA9IGNyZWF0ZUNvbW1lbnQoXCIqXFxuICogb2tcXG4gXCIsIFtcbiAgICAwLFxuICAgIHNvdXJjZVRleHQuaW5kZXhPZihcIiovXCIpICsgMixcbiAgXSk7XG5cbiAgcmV0dXJuIHtcbiAgICBjb21tZW50LFxuICAgIG5vZGU6IGNyZWF0ZUZ1bmN0aW9uTm9kZShzb3VyY2VUZXh0KSxcbiAgICBzb3VyY2VDb2RlOiBjcmVhdGVTb3VyY2VDb2RlKHNvdXJjZVRleHQsIFtjb21tZW50XSksXG4gIH07XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBjb250ZXh0IHdpdGggYSBub24tSlNEb2MgY29tbWVudC5cbiAqIEByZXR1cm5zIFRoZSBsb29rdXAgY29udGV4dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBjb250ZXh0ID0gY3JlYXRlTm9uSnNkb2NDb250ZXh0KCk7XG4gKiBgYGBcbiAqL1xuY29uc3QgY3JlYXRlTm9uSnNkb2NDb250ZXh0ID0gKCk6IEpzZG9jTG9va3VwQ29udGV4dCA9PiB7XG4gIGNvbnN0IHNvdXJjZVRleHQgPSBcIi8vIGxpbmVcXG5mdW5jdGlvbiBkZW1vKCkge31cIjtcbiAgY29uc3QgY29tbWVudCA9IHtcbiAgICByYW5nZTogWzAsIDddLFxuICAgIHR5cGU6IFwiTGluZVwiLFxuICAgIHZhbHVlOiBcIiBsaW5lXCIsXG4gIH0gYXMgQ29tbWVudDtcblxuICByZXR1cm4ge1xuICAgIG5vZGU6IGNyZWF0ZUZ1bmN0aW9uTm9kZShzb3VyY2VUZXh0KSxcbiAgICBzb3VyY2VDb2RlOiBjcmVhdGVTb3VyY2VDb2RlKHNvdXJjZVRleHQsIFtjb21tZW50XSksXG4gIH07XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBjb250ZXh0IHdpdGggYSBKU0RvYyBjb21tZW50IG1pc3NpbmcgcmFuZ2UgZGF0YS5cbiAqIEByZXR1cm5zIFRoZSBsb29rdXAgY29udGV4dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBjb250ZXh0ID0gY3JlYXRlUmFuZ2VNaXNzaW5nQ29udGV4dCgpO1xuICogYGBgXG4gKi9cbmNvbnN0IGNyZWF0ZVJhbmdlTWlzc2luZ0NvbnRleHQgPSAoKTogSnNkb2NMb29rdXBDb250ZXh0ID0+IHtcbiAgY29uc3Qgc291cmNlVGV4dCA9IFwiZnVuY3Rpb24gZGVtbygpIHt9XCI7XG4gIGNvbnN0IGNvbW1lbnQgPSB7XG4gICAgdHlwZTogXCJCbG9ja1wiLFxuICAgIHZhbHVlOiBcIipcXG4gKiBva1xcbiBcIixcbiAgfSBhcyBDb21tZW50O1xuXG4gIHJldHVybiB7XG4gICAgbm9kZTogY3JlYXRlRnVuY3Rpb25Ob2RlKHNvdXJjZVRleHQpLFxuICAgIHNvdXJjZUNvZGU6IGNyZWF0ZVNvdXJjZUNvZGUoc291cmNlVGV4dCwgW2NvbW1lbnRdKSxcbiAgfTtcbn07XG5cbmV4cG9ydCB7XG4gIGNyZWF0ZUNvbW1lbnQsXG4gIGNyZWF0ZUR1YWxKc2RvY0NvbnRleHQsXG4gIGNyZWF0ZU5vbkpzZG9jQ29udGV4dCxcbiAgY3JlYXRlUmFuZ2VNaXNzaW5nQ29udGV4dCxcbiAgY3JlYXRlU2luZ2xlSnNkb2NDb250ZXh0LFxuICBjcmVhdGVTb3VyY2VDb2RlLFxufTtcbmV4cG9ydCB0eXBlIHsgQ29tbWVudCB9O1xuIl19
@@ -1,5 +1,5 @@
1
1
  import type { Rule } from "eslint";
2
- import type { Comment, CommentLine } from "./types";
2
+ import type { Comment, CommentLine } from "./types.js";
3
3
  /**
4
4
  * Gets the closest JSDoc comment for a node.
5
5
  * @param sourceCode Source code wrapper.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"comment-utilities.d.ts","sourceRoot":"","sources":["../../../../src/domain/docs/no-interface-member-docs/comment-utilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AA2DpD;;;;;;;;;GASG;AACH,QAAA,MAAM,eAAe,GACnB,YAAY,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,EAC1C,MAAM,IAAI,CAAC,IAAI,KACd,OAAO,GAAG,SASZ,CAAC;AAEF;;;;;;;;;GASG;AACH,QAAA,MAAM,cAAc,GAClB,YAAY,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,EAC1C,SAAS,OAAO,KACf,MASF,CAAC;AAEF;;;;;;;;GAQG;AACH,QAAA,MAAM,eAAe,GAAI,aAAa,MAAM,KAAG,WAAW,EAyBzD,CAAC;AAEF;;;;;;;;;;GAUG;AACH,QAAA,MAAM,iBAAiB,GACrB,cAAc,MAAM,EACpB,aAAa,MAAM,EACnB,MAAM,WAAW,KAChB,CAAC,MAAM,EAAE,MAAM,CAuBjB,CAAC;AAEF,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC"}