@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
@@ -1,12 +1,10 @@
1
1
  import type { AST } from "eslint";
2
2
  /** Type definition for rule data. */
3
3
  interface NoReexportsOutsideBarrelsState {
4
- /** Folders field value. */
5
- folders: string[];
6
- /** Names field value. */
7
- names: string[];
8
- /** NamesSet field value. */
9
- namesSet: Set<string>;
4
+ /** AllowedBarrelNames field value. */
5
+ allowedBarrelNames: string[];
6
+ /** AllowedBarrelNamesSet field value. */
7
+ allowedBarrelNamesSet: Set<string>;
10
8
  }
11
9
  /**
12
10
  * Builds the rule options state from raw options.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-reexports-outside-barrels-utilities.d.ts","sourceRoot":"","sources":["../../../../src/domain/architecture/consistent-barrel-files/no-reexports-outside-barrels-utilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAUlC,qCAAqC;AACrC,UAAU,8BAA8B;IACtC,sCAAsC;IACtC,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAE7B,yCAAyC;IACzC,qBAAqB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACpC;AAED;;;;;;;;GAQG;AACH,QAAA,MAAM,UAAU,GACd,SAAS,SAAS,OAAO,EAAE,KAC1B,8BAUF,CAAC;AAcF;;;;;;;;;GASG;AACH,QAAA,MAAM,cAAc,GAClB,UAAU,MAAM,EAChB,SAAS,8BAA8B,KACtC,OAEF,CAAC;AAEF;;;;;;;;;GASG;AACH,QAAA,MAAM,YAAY,GAChB,UAAU,MAAM,EAChB,SAAS,8BAA8B,KACtC,OAEF,CAAC;AAEF;;;;;;;;GAQG;AACH,QAAA,MAAM,oBAAoB,GAAI,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAG,GAAG,CAAC,MAAM,CAYnE,CAAC;AAEF;;;;;;;;;GASG;AACH,QAAA,MAAM,iBAAiB,GACrB,WAAW,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EACtC,eAAe,GAAG,CAAC,MAAM,CAAC,KACzB,OAcF,CAAC;AAEF,OAAO,EACL,oBAAoB,EACpB,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,cAAc,GACf,CAAC"}
@@ -0,0 +1,95 @@
1
+ import { isBarrelFile as isBarrelModuleFile, isLintableModuleFile, normalizeAllowedBarrelNames, } from "./barrel-file-utilities.js";
2
+ /**
3
+ * Builds the rule options state from raw options.
4
+ * @param options Raw rule options.
5
+ * @returns Normalized rule options.
6
+ * @example
7
+ * ```typescript
8
+ * const state = getOptions([{}]);
9
+ * ```
10
+ */
11
+ const getOptions = (options) => {
12
+ const rawOptions = options[0];
13
+ const allowedBarrelNames = normalizeAllowedBarrelNames(rawOptions?.allowedBarrelNames);
14
+ return {
15
+ allowedBarrelNames,
16
+ allowedBarrelNamesSet: new Set(allowedBarrelNames),
17
+ };
18
+ };
19
+ /**
20
+ * Checks whether the filename is valid for linting.
21
+ * @param filename Absolute filename.
22
+ * @returns True when the filename is lintable.
23
+ * @example
24
+ * ```typescript
25
+ * const ok = isLintableFilename("/repo/src/index.ts");
26
+ * ```
27
+ */
28
+ const isLintableFilename = (filename) => isLintableModuleFile(filename);
29
+ /**
30
+ * Determines whether a file should be linted by this rule.
31
+ * @param filename Absolute filename.
32
+ * @param options Normalized rule options.
33
+ * @returns True when the file should be checked.
34
+ * @example
35
+ * ```typescript
36
+ * const ok = shouldLintFile("/repo/src/index.ts", state);
37
+ * ```
38
+ */
39
+ const shouldLintFile = (filename, options) => {
40
+ return isLintableFilename(filename) && options.allowedBarrelNames.length > 0;
41
+ };
42
+ /**
43
+ * Determines whether a file is a barrel file under the rule options.
44
+ * @param filename Absolute filename.
45
+ * @param options Normalized rule options.
46
+ * @returns True when the file is a barrel file.
47
+ * @example
48
+ * ```typescript
49
+ * const ok = isBarrelFile("/repo/src/index.ts", state);
50
+ * ```
51
+ */
52
+ const isBarrelFile = (filename, options) => {
53
+ return isBarrelModuleFile(filename, options.allowedBarrelNamesSet);
54
+ };
55
+ /**
56
+ * Collects imported identifiers from the program body.
57
+ * @param body Program body statements.
58
+ * @returns Set of local imported identifiers.
59
+ * @example
60
+ * ```typescript
61
+ * const names = collectImportedNames(program.body);
62
+ * ```
63
+ */
64
+ const collectImportedNames = (body) => {
65
+ const importedNames = new Set();
66
+ for (const statement of body) {
67
+ if (statement.type === "ImportDeclaration") {
68
+ for (const specifier of statement.specifiers) {
69
+ importedNames.add(specifier.local.name);
70
+ }
71
+ }
72
+ }
73
+ return importedNames;
74
+ };
75
+ /**
76
+ * Checks whether an export specifier references an imported identifier.
77
+ * @param statement Export named declaration statement.
78
+ * @param importedNames Set of imported identifiers.
79
+ * @returns True when any export specifier references an import.
80
+ * @example
81
+ * ```typescript
82
+ * const ok = hasImportedExport(statement, names);
83
+ * ```
84
+ */
85
+ const hasImportedExport = (statement, importedNames) => {
86
+ if (statement.type !== "ExportNamedDeclaration" ||
87
+ (statement.source !== null && statement.source !== void 0) ||
88
+ (statement.declaration !== null && statement.declaration !== void 0)) {
89
+ return false;
90
+ }
91
+ return statement.specifiers.some((specifier) => specifier.local.type === "Identifier" &&
92
+ importedNames.has(specifier.local.name));
93
+ };
94
+ export { collectImportedNames, getOptions, hasImportedExport, isBarrelFile, shouldLintFile, };
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm8tcmVleHBvcnRzLW91dHNpZGUtYmFycmVscy11dGlsaXRpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZG9tYWluL2FyY2hpdGVjdHVyZS9jb25zaXN0ZW50LWJhcnJlbC1maWxlcy9uby1yZWV4cG9ydHMtb3V0c2lkZS1iYXJyZWxzLXV0aWxpdGllcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQ0wsWUFBWSxJQUFJLGtCQUFrQixFQUNsQyxvQkFBb0IsRUFDcEIsMkJBQTJCLEdBQzVCLE1BQU0seUJBQXlCLENBQUM7QUFXakM7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLFVBQVUsR0FBRyxDQUNqQixPQUEyQixFQUNLLEVBQUU7SUFDbEMsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBaUQsQ0FBQztJQUM5RSxNQUFNLGtCQUFrQixHQUFHLDJCQUEyQixDQUNwRCxVQUFVLEVBQUUsa0JBQWtCLENBQy9CLENBQUM7SUFFRixPQUFPO1FBQ0wsa0JBQWtCO1FBQ2xCLHFCQUFxQixFQUFFLElBQUksR0FBRyxDQUFDLGtCQUFrQixDQUFDO0tBQ25ELENBQUM7QUFDSixDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxRQUFnQixFQUFXLEVBQUUsQ0FDdkQsb0JBQW9CLENBQUMsUUFBUSxDQUFDLENBQUM7QUFFakM7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxjQUFjLEdBQUcsQ0FDckIsUUFBZ0IsRUFDaEIsT0FBdUMsRUFDOUIsRUFBRTtJQUNYLE9BQU8sa0JBQWtCLENBQUMsUUFBUSxDQUFDLElBQUksT0FBTyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7QUFDL0UsQ0FBQyxDQUFDO0FBRUY7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxZQUFZLEdBQUcsQ0FDbkIsUUFBZ0IsRUFDaEIsT0FBdUMsRUFDOUIsRUFBRTtJQUNYLE9BQU8sa0JBQWtCLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0FBQ3JFLENBQUMsQ0FBQztBQUVGOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLElBQXlCLEVBQWUsRUFBRTtJQUN0RSxNQUFNLGFBQWEsR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDO0lBRXhDLEtBQUssTUFBTSxTQUFTLElBQUksSUFBSSxFQUFFLENBQUM7UUFDN0IsSUFBSSxTQUFTLENBQUMsSUFBSSxLQUFLLG1CQUFtQixFQUFFLENBQUM7WUFDM0MsS0FBSyxNQUFNLFNBQVMsSUFBSSxTQUFTLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQzdDLGFBQWEsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMxQyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPLGFBQWEsQ0FBQztBQUN2QixDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLGlCQUFpQixHQUFHLENBQ3hCLFNBQXNDLEVBQ3RDLGFBQTBCLEVBQ2pCLEVBQUU7SUFDWCxJQUNFLFNBQVMsQ0FBQyxJQUFJLEtBQUssd0JBQXdCO1FBQzNDLENBQUMsU0FBUyxDQUFDLE1BQU0sS0FBSyxJQUFJLElBQUksU0FBUyxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsQ0FBQztRQUMxRCxDQUFDLFNBQVMsQ0FBQyxXQUFXLEtBQUssSUFBSSxJQUFJLFNBQVMsQ0FBQyxXQUFXLEtBQUssS0FBSyxDQUFDLENBQUMsRUFDcEUsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELE9BQU8sU0FBUyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQzlCLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FDWixTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxZQUFZO1FBQ3JDLGFBQWEsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FDMUMsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsVUFBVSxFQUNWLGlCQUFpQixFQUNqQixZQUFZLEVBQ1osY0FBYyxHQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEFTVCB9IGZyb20gXCJlc2xpbnRcIjtcblxuaW1wb3J0IHR5cGUgeyBOb1JlZXhwb3J0c091dHNpZGVCYXJyZWxzT3B0aW9ucyB9IGZyb20gXCIuL3R5cGVzXCI7XG5cbmltcG9ydCB7XG4gIGlzQmFycmVsRmlsZSBhcyBpc0JhcnJlbE1vZHVsZUZpbGUsXG4gIGlzTGludGFibGVNb2R1bGVGaWxlLFxuICBub3JtYWxpemVBbGxvd2VkQmFycmVsTmFtZXMsXG59IGZyb20gXCIuL2JhcnJlbC1maWxlLXV0aWxpdGllc1wiO1xuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG5pbnRlcmZhY2UgTm9SZWV4cG9ydHNPdXRzaWRlQmFycmVsc1N0YXRlIHtcbiAgLyoqIEFsbG93ZWRCYXJyZWxOYW1lcyBmaWVsZCB2YWx1ZS4gKi9cbiAgYWxsb3dlZEJhcnJlbE5hbWVzOiBzdHJpbmdbXTtcblxuICAvKiogQWxsb3dlZEJhcnJlbE5hbWVzU2V0IGZpZWxkIHZhbHVlLiAqL1xuICBhbGxvd2VkQmFycmVsTmFtZXNTZXQ6IFNldDxzdHJpbmc+O1xufVxuXG4vKipcbiAqIEJ1aWxkcyB0aGUgcnVsZSBvcHRpb25zIHN0YXRlIGZyb20gcmF3IG9wdGlvbnMuXG4gKiBAcGFyYW0gb3B0aW9ucyBSYXcgcnVsZSBvcHRpb25zLlxuICogQHJldHVybnMgTm9ybWFsaXplZCBydWxlIG9wdGlvbnMuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3Qgc3RhdGUgPSBnZXRPcHRpb25zKFt7fV0pO1xuICogYGBgXG4gKi9cbmNvbnN0IGdldE9wdGlvbnMgPSAoXG4gIG9wdGlvbnM6IHJlYWRvbmx5IHVua25vd25bXSxcbik6IE5vUmVleHBvcnRzT3V0c2lkZUJhcnJlbHNTdGF0ZSA9PiB7XG4gIGNvbnN0IHJhd09wdGlvbnMgPSBvcHRpb25zWzBdIGFzIE5vUmVleHBvcnRzT3V0c2lkZUJhcnJlbHNPcHRpb25zIHwgdW5kZWZpbmVkO1xuICBjb25zdCBhbGxvd2VkQmFycmVsTmFtZXMgPSBub3JtYWxpemVBbGxvd2VkQmFycmVsTmFtZXMoXG4gICAgcmF3T3B0aW9ucz8uYWxsb3dlZEJhcnJlbE5hbWVzLFxuICApO1xuXG4gIHJldHVybiB7XG4gICAgYWxsb3dlZEJhcnJlbE5hbWVzLFxuICAgIGFsbG93ZWRCYXJyZWxOYW1lc1NldDogbmV3IFNldChhbGxvd2VkQmFycmVsTmFtZXMpLFxuICB9O1xufTtcblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgZmlsZW5hbWUgaXMgdmFsaWQgZm9yIGxpbnRpbmcuXG4gKiBAcGFyYW0gZmlsZW5hbWUgQWJzb2x1dGUgZmlsZW5hbWUuXG4gKiBAcmV0dXJucyBUcnVlIHdoZW4gdGhlIGZpbGVuYW1lIGlzIGxpbnRhYmxlLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IG9rID0gaXNMaW50YWJsZUZpbGVuYW1lKFwiL3JlcG8vc3JjL2luZGV4LnRzXCIpO1xuICogYGBgXG4gKi9cbmNvbnN0IGlzTGludGFibGVGaWxlbmFtZSA9IChmaWxlbmFtZTogc3RyaW5nKTogYm9vbGVhbiA9PlxuICBpc0xpbnRhYmxlTW9kdWxlRmlsZShmaWxlbmFtZSk7XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIGEgZmlsZSBzaG91bGQgYmUgbGludGVkIGJ5IHRoaXMgcnVsZS5cbiAqIEBwYXJhbSBmaWxlbmFtZSBBYnNvbHV0ZSBmaWxlbmFtZS5cbiAqIEBwYXJhbSBvcHRpb25zIE5vcm1hbGl6ZWQgcnVsZSBvcHRpb25zLlxuICogQHJldHVybnMgVHJ1ZSB3aGVuIHRoZSBmaWxlIHNob3VsZCBiZSBjaGVja2VkLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IG9rID0gc2hvdWxkTGludEZpbGUoXCIvcmVwby9zcmMvaW5kZXgudHNcIiwgc3RhdGUpO1xuICogYGBgXG4gKi9cbmNvbnN0IHNob3VsZExpbnRGaWxlID0gKFxuICBmaWxlbmFtZTogc3RyaW5nLFxuICBvcHRpb25zOiBOb1JlZXhwb3J0c091dHNpZGVCYXJyZWxzU3RhdGUsXG4pOiBib29sZWFuID0+IHtcbiAgcmV0dXJuIGlzTGludGFibGVGaWxlbmFtZShmaWxlbmFtZSkgJiYgb3B0aW9ucy5hbGxvd2VkQmFycmVsTmFtZXMubGVuZ3RoID4gMDtcbn07XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIGEgZmlsZSBpcyBhIGJhcnJlbCBmaWxlIHVuZGVyIHRoZSBydWxlIG9wdGlvbnMuXG4gKiBAcGFyYW0gZmlsZW5hbWUgQWJzb2x1dGUgZmlsZW5hbWUuXG4gKiBAcGFyYW0gb3B0aW9ucyBOb3JtYWxpemVkIHJ1bGUgb3B0aW9ucy5cbiAqIEByZXR1cm5zIFRydWUgd2hlbiB0aGUgZmlsZSBpcyBhIGJhcnJlbCBmaWxlLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IG9rID0gaXNCYXJyZWxGaWxlKFwiL3JlcG8vc3JjL2luZGV4LnRzXCIsIHN0YXRlKTtcbiAqIGBgYFxuICovXG5jb25zdCBpc0JhcnJlbEZpbGUgPSAoXG4gIGZpbGVuYW1lOiBzdHJpbmcsXG4gIG9wdGlvbnM6IE5vUmVleHBvcnRzT3V0c2lkZUJhcnJlbHNTdGF0ZSxcbik6IGJvb2xlYW4gPT4ge1xuICByZXR1cm4gaXNCYXJyZWxNb2R1bGVGaWxlKGZpbGVuYW1lLCBvcHRpb25zLmFsbG93ZWRCYXJyZWxOYW1lc1NldCk7XG59O1xuXG4vKipcbiAqIENvbGxlY3RzIGltcG9ydGVkIGlkZW50aWZpZXJzIGZyb20gdGhlIHByb2dyYW0gYm9keS5cbiAqIEBwYXJhbSBib2R5IFByb2dyYW0gYm9keSBzdGF0ZW1lbnRzLlxuICogQHJldHVybnMgU2V0IG9mIGxvY2FsIGltcG9ydGVkIGlkZW50aWZpZXJzLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IG5hbWVzID0gY29sbGVjdEltcG9ydGVkTmFtZXMocHJvZ3JhbS5ib2R5KTtcbiAqIGBgYFxuICovXG5jb25zdCBjb2xsZWN0SW1wb3J0ZWROYW1lcyA9IChib2R5OiBBU1QuUHJvZ3JhbVtcImJvZHlcIl0pOiBTZXQ8c3RyaW5nPiA9PiB7XG4gIGNvbnN0IGltcG9ydGVkTmFtZXMgPSBuZXcgU2V0PHN0cmluZz4oKTtcblxuICBmb3IgKGNvbnN0IHN0YXRlbWVudCBvZiBib2R5KSB7XG4gICAgaWYgKHN0YXRlbWVudC50eXBlID09PSBcIkltcG9ydERlY2xhcmF0aW9uXCIpIHtcbiAgICAgIGZvciAoY29uc3Qgc3BlY2lmaWVyIG9mIHN0YXRlbWVudC5zcGVjaWZpZXJzKSB7XG4gICAgICAgIGltcG9ydGVkTmFtZXMuYWRkKHNwZWNpZmllci5sb2NhbC5uYW1lKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gaW1wb3J0ZWROYW1lcztcbn07XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgYW4gZXhwb3J0IHNwZWNpZmllciByZWZlcmVuY2VzIGFuIGltcG9ydGVkIGlkZW50aWZpZXIuXG4gKiBAcGFyYW0gc3RhdGVtZW50IEV4cG9ydCBuYW1lZCBkZWNsYXJhdGlvbiBzdGF0ZW1lbnQuXG4gKiBAcGFyYW0gaW1wb3J0ZWROYW1lcyBTZXQgb2YgaW1wb3J0ZWQgaWRlbnRpZmllcnMuXG4gKiBAcmV0dXJucyBUcnVlIHdoZW4gYW55IGV4cG9ydCBzcGVjaWZpZXIgcmVmZXJlbmNlcyBhbiBpbXBvcnQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3Qgb2sgPSBoYXNJbXBvcnRlZEV4cG9ydChzdGF0ZW1lbnQsIG5hbWVzKTtcbiAqIGBgYFxuICovXG5jb25zdCBoYXNJbXBvcnRlZEV4cG9ydCA9IChcbiAgc3RhdGVtZW50OiBBU1QuUHJvZ3JhbVtcImJvZHlcIl1bbnVtYmVyXSxcbiAgaW1wb3J0ZWROYW1lczogU2V0PHN0cmluZz4sXG4pOiBib29sZWFuID0+IHtcbiAgaWYgKFxuICAgIHN0YXRlbWVudC50eXBlICE9PSBcIkV4cG9ydE5hbWVkRGVjbGFyYXRpb25cIiB8fFxuICAgIChzdGF0ZW1lbnQuc291cmNlICE9PSBudWxsICYmIHN0YXRlbWVudC5zb3VyY2UgIT09IHZvaWQgMCkgfHxcbiAgICAoc3RhdGVtZW50LmRlY2xhcmF0aW9uICE9PSBudWxsICYmIHN0YXRlbWVudC5kZWNsYXJhdGlvbiAhPT0gdm9pZCAwKVxuICApIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICByZXR1cm4gc3RhdGVtZW50LnNwZWNpZmllcnMuc29tZShcbiAgICAoc3BlY2lmaWVyKSA9PlxuICAgICAgc3BlY2lmaWVyLmxvY2FsLnR5cGUgPT09IFwiSWRlbnRpZmllclwiICYmXG4gICAgICBpbXBvcnRlZE5hbWVzLmhhcyhzcGVjaWZpZXIubG9jYWwubmFtZSksXG4gICk7XG59O1xuXG5leHBvcnQge1xuICBjb2xsZWN0SW1wb3J0ZWROYW1lcyxcbiAgZ2V0T3B0aW9ucyxcbiAgaGFzSW1wb3J0ZWRFeHBvcnQsXG4gIGlzQmFycmVsRmlsZSxcbiAgc2hvdWxkTGludEZpbGUsXG59O1xuIl19
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rule.d.ts","sourceRoot":"","sources":["../../../../src/domain/architecture/consistent-barrel-files/rule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAQnC;;;;;;GAMG;AACH,QAAA,MAAM,yBAAyB,EAAE,IAAI,CAAC,UA8CrC,CAAC;AAEF,OAAO,EAAE,yBAAyB,EAAE,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { buildListenerForFile } from "./consistent-barrel-files-listeners.js";
2
+ import { getOptions, isLintableFilename, } from "./consistent-barrel-files-options.js";
3
+ /**
4
+ * ESLint rule requiring consistent barrel file usage by folder.
5
+ * @example
6
+ * ```typescript
7
+ * const rule = consistentBarrelFilesRule;
8
+ * ```
9
+ */
10
+ const consistentBarrelFilesRule = {
11
+ create(context) {
12
+ const { filename, options } = context;
13
+ if (!isLintableFilename(filename)) {
14
+ return {};
15
+ }
16
+ return buildListenerForFile(context, filename, getOptions(options));
17
+ },
18
+ meta: {
19
+ defaultOptions: [{ allowedNames: ["index"], enforce: true }],
20
+ docs: {
21
+ description: "Enforce or forbid barrel files with consistent, allowed names.",
22
+ recommended: false,
23
+ url: "https://github.com/parloti/eslint-plugin/blob/main/docs/rules/consistent-barrel-files.md",
24
+ },
25
+ messages: {
26
+ forbiddenBarrel: "Barrel files are forbidden. Remove the barrel file '{{name}}'.",
27
+ missingBarrel: "Each folder must include a barrel file named with one of these stems: {{names}}.",
28
+ },
29
+ schema: [
30
+ {
31
+ additionalProperties: false,
32
+ properties: {
33
+ allowedNames: {
34
+ description: "Allowed barrel basenames that the rule recognizes in each folder.",
35
+ items: { type: "string" },
36
+ minItems: 1,
37
+ type: "array",
38
+ },
39
+ enforce: {
40
+ description: "Whether each eligible folder must contain one of the allowed barrel filenames.",
41
+ type: "boolean",
42
+ },
43
+ },
44
+ type: "object",
45
+ },
46
+ ],
47
+ type: "problem",
48
+ },
49
+ };
50
+ export { consistentBarrelFilesRule };
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kb21haW4vYXJjaGl0ZWN0dXJlL2NvbnNpc3RlbnQtYmFycmVsLWZpbGVzL3J1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDM0UsT0FBTyxFQUNMLFVBQVUsRUFDVixrQkFBa0IsR0FDbkIsTUFBTSxtQ0FBbUMsQ0FBQztBQUUzQzs7Ozs7O0dBTUc7QUFDSCxNQUFNLHlCQUF5QixHQUFvQjtJQUNqRCxNQUFNLENBQUMsT0FBeUI7UUFDOUIsTUFBTSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFFdEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDbEMsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBRUQsT0FBTyxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFDRCxJQUFJLEVBQUU7UUFDSixjQUFjLEVBQUUsQ0FBQyxFQUFFLFlBQVksRUFBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUM1RCxJQUFJLEVBQUU7WUFDSixXQUFXLEVBQ1QsZ0VBQWdFO1lBQ2xFLFdBQVcsRUFBRSxLQUFLO1lBQ2xCLEdBQUcsRUFBRSwwRkFBMEY7U0FDaEc7UUFDRCxRQUFRLEVBQUU7WUFDUixlQUFlLEVBQ2IsZ0VBQWdFO1lBQ2xFLGFBQWEsRUFDWCxrRkFBa0Y7U0FDckY7UUFDRCxNQUFNLEVBQUU7WUFDTjtnQkFDRSxvQkFBb0IsRUFBRSxLQUFLO2dCQUMzQixVQUFVLEVBQUU7b0JBQ1YsWUFBWSxFQUFFO3dCQUNaLFdBQVcsRUFDVCxtRUFBbUU7d0JBQ3JFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUU7d0JBQ3pCLFFBQVEsRUFBRSxDQUFDO3dCQUNYLElBQUksRUFBRSxPQUFPO3FCQUNkO29CQUNELE9BQU8sRUFBRTt3QkFDUCxXQUFXLEVBQ1QsZ0ZBQWdGO3dCQUNsRixJQUFJLEVBQUUsU0FBUztxQkFDaEI7aUJBQ0Y7Z0JBQ0QsSUFBSSxFQUFFLFFBQVE7YUFDZjtTQUNGO1FBQ0QsSUFBSSxFQUFFLFNBQVM7S0FDaEI7Q0FDRixDQUFDO0FBRUYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJ1bGUgfSBmcm9tIFwiZXNsaW50XCI7XG5cbmltcG9ydCB7IGJ1aWxkTGlzdGVuZXJGb3JGaWxlIH0gZnJvbSBcIi4vY29uc2lzdGVudC1iYXJyZWwtZmlsZXMtbGlzdGVuZXJzXCI7XG5pbXBvcnQge1xuICBnZXRPcHRpb25zLFxuICBpc0xpbnRhYmxlRmlsZW5hbWUsXG59IGZyb20gXCIuL2NvbnNpc3RlbnQtYmFycmVsLWZpbGVzLW9wdGlvbnNcIjtcblxuLyoqXG4gKiBFU0xpbnQgcnVsZSByZXF1aXJpbmcgY29uc2lzdGVudCBiYXJyZWwgZmlsZSB1c2FnZSBieSBmb2xkZXIuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgcnVsZSA9IGNvbnNpc3RlbnRCYXJyZWxGaWxlc1J1bGU7XG4gKiBgYGBcbiAqL1xuY29uc3QgY29uc2lzdGVudEJhcnJlbEZpbGVzUnVsZTogUnVsZS5SdWxlTW9kdWxlID0ge1xuICBjcmVhdGUoY29udGV4dDogUnVsZS5SdWxlQ29udGV4dCk6IFJ1bGUuUnVsZUxpc3RlbmVyIHtcbiAgICBjb25zdCB7IGZpbGVuYW1lLCBvcHRpb25zIH0gPSBjb250ZXh0O1xuXG4gICAgaWYgKCFpc0xpbnRhYmxlRmlsZW5hbWUoZmlsZW5hbWUpKSB7XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuXG4gICAgcmV0dXJuIGJ1aWxkTGlzdGVuZXJGb3JGaWxlKGNvbnRleHQsIGZpbGVuYW1lLCBnZXRPcHRpb25zKG9wdGlvbnMpKTtcbiAgfSxcbiAgbWV0YToge1xuICAgIGRlZmF1bHRPcHRpb25zOiBbeyBhbGxvd2VkTmFtZXM6IFtcImluZGV4XCJdLCBlbmZvcmNlOiB0cnVlIH1dLFxuICAgIGRvY3M6IHtcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICBcIkVuZm9yY2Ugb3IgZm9yYmlkIGJhcnJlbCBmaWxlcyB3aXRoIGNvbnNpc3RlbnQsIGFsbG93ZWQgbmFtZXMuXCIsXG4gICAgICByZWNvbW1lbmRlZDogZmFsc2UsXG4gICAgICB1cmw6IFwiaHR0cHM6Ly9naXRodWIuY29tL3BhcmxvdGkvZXNsaW50LXBsdWdpbi9ibG9iL21haW4vZG9jcy9ydWxlcy9jb25zaXN0ZW50LWJhcnJlbC1maWxlcy5tZFwiLFxuICAgIH0sXG4gICAgbWVzc2FnZXM6IHtcbiAgICAgIGZvcmJpZGRlbkJhcnJlbDpcbiAgICAgICAgXCJCYXJyZWwgZmlsZXMgYXJlIGZvcmJpZGRlbi4gUmVtb3ZlIHRoZSBiYXJyZWwgZmlsZSAne3tuYW1lfX0nLlwiLFxuICAgICAgbWlzc2luZ0JhcnJlbDpcbiAgICAgICAgXCJFYWNoIGZvbGRlciBtdXN0IGluY2x1ZGUgYSBiYXJyZWwgZmlsZSBuYW1lZCB3aXRoIG9uZSBvZiB0aGVzZSBzdGVtczoge3tuYW1lc319LlwiLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXG4gICAgICB7XG4gICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgIGFsbG93ZWROYW1lczoge1xuICAgICAgICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICAgICAgIFwiQWxsb3dlZCBiYXJyZWwgYmFzZW5hbWVzIHRoYXQgdGhlIHJ1bGUgcmVjb2duaXplcyBpbiBlYWNoIGZvbGRlci5cIixcbiAgICAgICAgICAgIGl0ZW1zOiB7IHR5cGU6IFwic3RyaW5nXCIgfSxcbiAgICAgICAgICAgIG1pbkl0ZW1zOiAxLFxuICAgICAgICAgICAgdHlwZTogXCJhcnJheVwiLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgZW5mb3JjZToge1xuICAgICAgICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICAgICAgIFwiV2hldGhlciBlYWNoIGVsaWdpYmxlIGZvbGRlciBtdXN0IGNvbnRhaW4gb25lIG9mIHRoZSBhbGxvd2VkIGJhcnJlbCBmaWxlbmFtZXMuXCIsXG4gICAgICAgICAgICB0eXBlOiBcImJvb2xlYW5cIixcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBcIm9iamVjdFwiLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHR5cGU6IFwicHJvYmxlbVwiLFxuICB9LFxufTtcblxuZXhwb3J0IHsgY29uc2lzdGVudEJhcnJlbEZpbGVzUnVsZSB9O1xuIl19
@@ -0,0 +1,4 @@
1
+ /** Companion module for rule.repeat-runs.spec.ts. */
2
+ declare const ruleRepeatRunsCompanion = "rule.repeat-runs";
3
+ export { ruleRepeatRunsCompanion };
4
+ //# sourceMappingURL=rule.repeat-runs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rule.repeat-runs.d.ts","sourceRoot":"","sources":["../../../../src/domain/architecture/consistent-barrel-files/rule.repeat-runs.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,QAAA,MAAM,uBAAuB,qBAAqB,CAAC;AAEnD,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
@@ -0,0 +1,4 @@
1
+ /** Companion module for rule.repeat-runs.spec.ts. */
2
+ const ruleRepeatRunsCompanion = "rule.repeat-runs";
3
+ export { ruleRepeatRunsCompanion };
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVsZS5yZXBlYXQtcnVucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kb21haW4vYXJjaGl0ZWN0dXJlL2NvbnNpc3RlbnQtYmFycmVsLWZpbGVzL3J1bGUucmVwZWF0LXJ1bnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEscURBQXFEO0FBQ3JELE1BQU0sdUJBQXVCLEdBQUcsa0JBQWtCLENBQUM7QUFFbkQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiogQ29tcGFuaW9uIG1vZHVsZSBmb3IgcnVsZS5yZXBlYXQtcnVucy5zcGVjLnRzLiAqL1xyXG5jb25zdCBydWxlUmVwZWF0UnVuc0NvbXBhbmlvbiA9IFwicnVsZS5yZXBlYXQtcnVuc1wiO1xyXG5cclxuZXhwb3J0IHsgcnVsZVJlcGVhdFJ1bnNDb21wYW5pb24gfTtcclxuIl19
@@ -1,9 +1,9 @@
1
1
  import type { AST } from "eslint";
2
2
  import type * as ESTree from "estree";
3
3
  /**
4
- * Creates a temporary repo directory under the given root.
5
- * @param root Root folder for temp files.
6
- * @returns The generated directory path.
4
+ * Creates a temporary repo directory for test fixtures.
5
+ * @param root Root folder to create the temporary directory under.
6
+ * @returns The generated temporary directory path.
7
7
  * @example
8
8
  * ```typescript
9
9
  * const directory = createRepoDirectory("tmp");
@@ -11,9 +11,9 @@ import type * as ESTree from "estree";
11
11
  */
12
12
  declare const createRepoDirectory: (root: "src" | "tmp") => string;
13
13
  /**
14
- * Creates a program wrapper around the supplied AST body.
14
+ * Wraps statements in a program node for SourceCode construction.
15
15
  * @param body Program body statements.
16
- * @returns The AST program.
16
+ * @returns The AST program wrapper.
17
17
  * @example
18
18
  * ```typescript
19
19
  * const program = createProgram([]);
@@ -21,10 +21,10 @@ declare const createRepoDirectory: (root: "src" | "tmp") => string;
21
21
  */
22
22
  declare const createProgram: (body: ESTree.Program["body"]) => AST.Program;
23
23
  /**
24
- * Creates an ESTree export specifier.
24
+ * Creates an export specifier node.
25
25
  * @param localName Local identifier name.
26
26
  * @param exportedName Exported identifier name.
27
- * @returns Export specifier node.
27
+ * @returns The ESTree export specifier.
28
28
  * @example
29
29
  * ```typescript
30
30
  * const specifier = createExportSpecifier("feature");
@@ -32,10 +32,10 @@ declare const createProgram: (body: ESTree.Program["body"]) => AST.Program;
32
32
  */
33
33
  declare const createExportSpecifier: (localName: string, exportedName?: string) => ESTree.ExportSpecifier;
34
34
  /**
35
- * Creates an ESTree import specifier.
35
+ * Creates an import specifier node.
36
36
  * @param localName Local identifier name.
37
37
  * @param importedName Imported identifier name.
38
- * @returns Import specifier node.
38
+ * @returns The ESTree import specifier.
39
39
  * @example
40
40
  * ```typescript
41
41
  * const specifier = createImportSpecifier("feature");
@@ -43,9 +43,9 @@ declare const createExportSpecifier: (localName: string, exportedName?: string)
43
43
  */
44
44
  declare const createImportSpecifier: (localName: string, importedName?: string) => ESTree.ImportSpecifier;
45
45
  /**
46
- * Creates an ESTree import default specifier.
46
+ * Creates an import default specifier node.
47
47
  * @param localName Local identifier name.
48
- * @returns Import default specifier node.
48
+ * @returns The ESTree default import specifier.
49
49
  * @example
50
50
  * ```typescript
51
51
  * const specifier = createImportDefaultSpecifier("feature");
@@ -53,89 +53,89 @@ declare const createImportSpecifier: (localName: string, importedName?: string)
53
53
  */
54
54
  declare const createImportDefaultSpecifier: (localName: string) => ESTree.ImportDefaultSpecifier;
55
55
  /**
56
- * Creates an import declaration for test fixtures.
57
- * @param specifiers Specifiers to include.
58
- * @returns Import declaration node for tests.
56
+ * Creates an import declaration for fixture programs.
57
+ * @param specifiers Import specifiers to include.
58
+ * @returns The ESTree import declaration.
59
59
  * @example
60
60
  * ```typescript
61
- * const node = createImportDeclaration([createImportSpecifier("feature")]);
61
+ * const declaration = createImportDeclaration();
62
62
  * ```
63
63
  */
64
64
  declare const createImportDeclaration: (specifiers?: ESTree.ImportDeclaration["specifiers"]) => ESTree.ImportDeclaration;
65
65
  /**
66
- * Creates an export-all declaration for test fixtures.
67
- * @returns The export-all declaration node.
66
+ * Creates an export-all declaration for fixture programs.
67
+ * @returns The ESTree export-all declaration.
68
68
  * @example
69
69
  * ```typescript
70
- * const node = createExportAll();
70
+ * const declaration = createExportAll();
71
71
  * ```
72
72
  */
73
73
  declare const createExportAll: () => ESTree.ExportAllDeclaration;
74
74
  /**
75
- * Creates a named export-from declaration for test fixtures.
76
- * @returns Export declaration node for tests.
75
+ * Creates an export-from declaration for fixture programs.
76
+ * @returns The ESTree named export declaration.
77
77
  * @example
78
78
  * ```typescript
79
- * const node = createExportNamedFrom();
79
+ * const declaration = createExportNamedFrom();
80
80
  * ```
81
81
  */
82
82
  declare const createExportNamedFrom: () => ESTree.ExportNamedDeclaration;
83
83
  /**
84
- * Creates a named export with a local declaration.
85
- * @returns Export declaration node for tests.
84
+ * Creates an export declaration with an inline variable declaration.
85
+ * @returns The ESTree named export declaration.
86
86
  * @example
87
87
  * ```typescript
88
- * const node = createExportWithDeclaration();
88
+ * const declaration = createExportWithDeclaration();
89
89
  * ```
90
90
  */
91
91
  declare const createExportWithDeclaration: () => ESTree.ExportNamedDeclaration;
92
92
  /**
93
- * Creates a named export without a source value.
94
- * @param specifiers Export specifiers to include.
95
- * @returns Export declaration node for tests.
93
+ * Creates an exported interface declaration for tests.
94
+ * @returns The exported interface declaration node.
96
95
  * @example
97
96
  * ```typescript
98
- * const node = createExportWithoutSource([createExportSpecifier("feature")]);
97
+ * const declaration = createExportInterfaceDeclaration();
99
98
  * ```
100
99
  */
101
- declare const createExportWithoutSource: (specifiers?: ESTree.ExportSpecifier[]) => ESTree.ExportNamedDeclaration;
100
+ declare const createExportInterfaceDeclaration: () => ESTree.Program["body"][number];
102
101
  /**
103
- * Creates a default export for an identifier.
104
- * @param name Identifier to export.
105
- * @returns Export default declaration node for tests.
102
+ * Creates an exported type alias declaration for tests.
103
+ * @returns The exported type alias declaration node.
106
104
  * @example
107
105
  * ```typescript
108
- * const node = createExportDefaultIdentifier("feature");
106
+ * const declaration = createExportTypeAliasDeclaration();
109
107
  * ```
110
108
  */
111
- declare const createExportDefaultIdentifier: (name: string) => ESTree.ExportDefaultDeclaration;
109
+ declare const createExportTypeAliasDeclaration: () => ESTree.Program["body"][number];
112
110
  /**
113
- * Collects statements into a program body array.
114
- * @param statements Statements to include in the program.
115
- * @returns The program body array.
111
+ * Creates a named export without a source value.
112
+ * @param specifiers Export specifiers to include.
113
+ * @returns The ESTree named export declaration.
116
114
  * @example
117
115
  * ```typescript
118
- * const body = createBody(createImportDeclaration());
116
+ * const declaration = createExportWithoutSource();
119
117
  * ```
120
118
  */
121
- declare const createBody: (...statements: ESTree.Program["body"][number][]) => ESTree.Program["body"];
119
+ declare const createExportWithoutSource: (specifiers?: ESTree.ExportSpecifier[]) => ESTree.ExportNamedDeclaration;
122
120
  /**
123
- * Writes a barrel file to the given path.
124
- * @param filePath Path for the barrel file.
121
+ * Creates a default export declaration for an identifier.
122
+ * @param name Identifier to export.
123
+ * @returns The ESTree default export declaration.
125
124
  * @example
126
125
  * ```typescript
127
- * writeBarrel("/tmp/index.ts");
126
+ * const declaration = createExportDefaultIdentifier("feature");
128
127
  * ```
129
128
  */
130
- declare const writeBarrel: (filePath: string) => void;
129
+ declare const createExportDefaultIdentifier: (name: string) => ESTree.ExportDefaultDeclaration;
131
130
  /**
132
- * Writes a feature file to the given path.
133
- * @param filePath Path for the feature file.
131
+ * Collects statements into a program body.
132
+ * @param statements Statements to include in the body.
133
+ * @returns The program body array.
134
134
  * @example
135
135
  * ```typescript
136
- * writeFeature("/tmp/feature.ts");
136
+ * const body = createBody();
137
137
  * ```
138
138
  */
139
- declare const writeFeature: (filePath: string) => void;
140
- export { createBody, createExportAll, createExportDefaultIdentifier, createExportNamedFrom, createExportSpecifier, createExportWithDeclaration, createExportWithoutSource, createImportDeclaration, createImportDefaultSpecifier, createImportSpecifier, createProgram, createRepoDirectory, writeBarrel, writeFeature, };
139
+ declare const createBody: (...statements: ESTree.Program["body"][number][]) => ESTree.Program["body"];
140
+ export { createBody, createExportAll, createExportDefaultIdentifier, createExportInterfaceDeclaration, createExportNamedFrom, createExportSpecifier, createExportTypeAliasDeclaration, createExportWithDeclaration, createExportWithoutSource, createImportDeclaration, createImportDefaultSpecifier, createImportSpecifier, createProgram, createRepoDirectory, };
141
141
  //# sourceMappingURL=test-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-helpers.d.ts","sourceRoot":"","sources":["../../../../src/domain/architecture/consistent-barrel-files/test-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,MAAM,QAAQ,CAAC;AAMtC;;;;;;;;GAQG;AACH,QAAA,MAAM,mBAAmB,GAAI,MAAM,KAAK,GAAG,KAAK,KAAG,MAIlD,CAAC;AAEF;;;;;;;;GAQG;AACH,QAAA,MAAM,aAAa,GAAI,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAG,GAAG,CAAC,OAQxD,CAAC;AA0BH;;;;;;;;;GASG;AACH,QAAA,MAAM,qBAAqB,GACzB,WAAW,MAAM,EACjB,qBAAwB,KACvB,MAAM,CAAC,eAK2B,CAAC;AAEtC;;;;;;;;;GASG;AACH,QAAA,MAAM,qBAAqB,GACzB,WAAW,MAAM,EACjB,qBAAwB,KACvB,MAAM,CAAC,eAK2B,CAAC;AAEtC;;;;;;;;GAQG;AACH,QAAA,MAAM,4BAA4B,GAChC,WAAW,MAAM,KAChB,MAAM,CAAC,sBAIkC,CAAC;AAE7C;;;;;;;;GAQG;AACH,QAAA,MAAM,uBAAuB,GAC3B,aAAY,MAAM,CAAC,iBAAiB,CAAC,YAAY,CAAM,KACtD,MAAM,CAAC,iBAM6B,CAAC;AAExC;;;;;;;GAOG;AACH,QAAA,MAAM,eAAe,QAAO,MAAM,CAAC,oBAMO,CAAC;AAE3C;;;;;;;GAOG;AACH,QAAA,MAAM,qBAAqB,QAAO,MAAM,CAAC,sBAMG,CAAC;AAE7C;;;;;;;GAOG;AACH,QAAA,MAAM,2BAA2B,QAAO,MAAM,CAAC,sBAa9C,CAAC;AAEF;;;;;;;GAOG;AACH,QAAA,MAAM,gCAAgC,QAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CASzB,CAAC;AAElD;;;;;;;GAOG;AACH,QAAA,MAAM,gCAAgC,QAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CASzB,CAAC;AAElD;;;;;;;;GAQG;AACH,QAAA,MAAM,yBAAyB,GAC7B,aAAY,MAAM,CAAC,eAAe,EAAO,KACxC,MAAM,CAAC,sBAKkC,CAAC;AAE7C;;;;;;;;GAQG;AACH,QAAA,MAAM,6BAA6B,GACjC,MAAM,MAAM,KACX,MAAM,CAAC,wBAIoC,CAAC;AAE/C;;;;;;;;GAQG;AACH,QAAA,MAAM,UAAU,GACd,GAAG,YAAY,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EAAE,KAC9C,MAAM,CAAC,OAAO,CAAC,MAAM,CAAe,CAAC;AAExC,OAAO,EACL,UAAU,EACV,eAAe,EACf,6BAA6B,EAC7B,gCAAgC,EAChC,qBAAqB,EACrB,qBAAqB,EACrB,gCAAgC,EAChC,2BAA2B,EAC3B,yBAAyB,EACzB,uBAAuB,EACvB,4BAA4B,EAC5B,qBAAqB,EACrB,aAAa,EACb,mBAAmB,GACpB,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Writes a barrel file fixture.
3
+ * @param filePath File path for the barrel fixture.
4
+ * @example
5
+ * ```typescript
6
+ * writeBarrel("/tmp/index.ts");
7
+ * ```
8
+ */
9
+ declare const writeBarrel: (filePath: string) => void;
10
+ /**
11
+ * Writes a feature file fixture.
12
+ * @param filePath File path for the feature fixture.
13
+ * @example
14
+ * ```typescript
15
+ * writeFeature("/tmp/feature.ts");
16
+ * ```
17
+ */
18
+ declare const writeFeature: (filePath: string) => void;
19
+ export { writeBarrel, writeFeature };
20
+ //# sourceMappingURL=test-helpers.file-writers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-helpers.file-writers.d.ts","sourceRoot":"","sources":["../../../../src/domain/architecture/consistent-barrel-files/test-helpers.file-writers.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,QAAA,MAAM,WAAW,GAAI,UAAU,MAAM,KAAG,IAEvC,CAAC;AAEF;;;;;;;GAOG;AACH,QAAA,MAAM,YAAY,GAAI,UAAU,MAAM,KAAG,IAExC,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { writeFileSync } from "node:fs";
2
+ /**
3
+ * Writes a barrel file fixture.
4
+ * @param filePath File path for the barrel fixture.
5
+ * @example
6
+ * ```typescript
7
+ * writeBarrel("/tmp/index.ts");
8
+ * ```
9
+ */
10
+ const writeBarrel = (filePath) => {
11
+ writeFileSync(filePath, "export * from './feature';", "utf8");
12
+ };
13
+ /**
14
+ * Writes a feature file fixture.
15
+ * @param filePath File path for the feature fixture.
16
+ * @example
17
+ * ```typescript
18
+ * writeFeature("/tmp/feature.ts");
19
+ * ```
20
+ */
21
+ const writeFeature = (filePath) => {
22
+ writeFileSync(filePath, "export const feature = 1;", "utf8");
23
+ };
24
+ export { writeBarrel, writeFeature };
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1oZWxwZXJzLmZpbGUtd3JpdGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kb21haW4vYXJjaGl0ZWN0dXJlL2NvbnNpc3RlbnQtYmFycmVsLWZpbGVzL3Rlc3QtaGVscGVycy5maWxlLXdyaXRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUV4Qzs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxXQUFXLEdBQUcsQ0FBQyxRQUFnQixFQUFRLEVBQUU7SUFDN0MsYUFBYSxDQUFDLFFBQVEsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUNoRSxDQUFDLENBQUM7QUFFRjs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxZQUFZLEdBQUcsQ0FBQyxRQUFnQixFQUFRLEVBQUU7SUFDOUMsYUFBYSxDQUFDLFFBQVEsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUMvRCxDQUFDLENBQUM7QUFFRixPQUFPLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgd3JpdGVGaWxlU3luYyB9IGZyb20gXCJub2RlOmZzXCI7XHJcblxyXG4vKipcclxuICogV3JpdGVzIGEgYmFycmVsIGZpbGUgZml4dHVyZS5cclxuICogQHBhcmFtIGZpbGVQYXRoIEZpbGUgcGF0aCBmb3IgdGhlIGJhcnJlbCBmaXh0dXJlLlxyXG4gKiBAZXhhbXBsZVxyXG4gKiBgYGB0eXBlc2NyaXB0XHJcbiAqIHdyaXRlQmFycmVsKFwiL3RtcC9pbmRleC50c1wiKTtcclxuICogYGBgXHJcbiAqL1xyXG5jb25zdCB3cml0ZUJhcnJlbCA9IChmaWxlUGF0aDogc3RyaW5nKTogdm9pZCA9PiB7XHJcbiAgd3JpdGVGaWxlU3luYyhmaWxlUGF0aCwgXCJleHBvcnQgKiBmcm9tICcuL2ZlYXR1cmUnO1wiLCBcInV0ZjhcIik7XHJcbn07XHJcblxyXG4vKipcclxuICogV3JpdGVzIGEgZmVhdHVyZSBmaWxlIGZpeHR1cmUuXHJcbiAqIEBwYXJhbSBmaWxlUGF0aCBGaWxlIHBhdGggZm9yIHRoZSBmZWF0dXJlIGZpeHR1cmUuXHJcbiAqIEBleGFtcGxlXHJcbiAqIGBgYHR5cGVzY3JpcHRcclxuICogd3JpdGVGZWF0dXJlKFwiL3RtcC9mZWF0dXJlLnRzXCIpO1xyXG4gKiBgYGBcclxuICovXHJcbmNvbnN0IHdyaXRlRmVhdHVyZSA9IChmaWxlUGF0aDogc3RyaW5nKTogdm9pZCA9PiB7XHJcbiAgd3JpdGVGaWxlU3luYyhmaWxlUGF0aCwgXCJleHBvcnQgY29uc3QgZmVhdHVyZSA9IDE7XCIsIFwidXRmOFwiKTtcclxufTtcclxuXHJcbmV4cG9ydCB7IHdyaXRlQmFycmVsLCB3cml0ZUZlYXR1cmUgfTtcclxuIl19