@alexlit/lint-kit 182.1.0 → 182.2.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 (409) hide show
  1. package/package.json +1 -1
  2. package/packages/config-eslint/package.json +3 -3
  3. package/packages/config-eslint/plugins/unocss.js +4 -6
  4. package/packages/config-stylelint/node_modules/ansi-regex/index.d.ts +33 -0
  5. package/packages/config-stylelint/node_modules/ansi-regex/index.js +14 -0
  6. package/packages/config-stylelint/node_modules/ansi-regex/license +9 -0
  7. package/packages/config-stylelint/node_modules/ansi-regex/package.json +61 -0
  8. package/packages/config-stylelint/node_modules/ansi-regex/readme.md +66 -0
  9. package/packages/config-stylelint/node_modules/file-entry-cache/LICENSE +19 -0
  10. package/packages/config-stylelint/node_modules/file-entry-cache/README.md +630 -0
  11. package/packages/config-stylelint/node_modules/file-entry-cache/dist/index.cjs +559 -0
  12. package/packages/config-stylelint/node_modules/file-entry-cache/dist/index.d.cts +304 -0
  13. package/packages/config-stylelint/node_modules/file-entry-cache/dist/index.d.ts +304 -0
  14. package/packages/config-stylelint/node_modules/file-entry-cache/dist/index.js +525 -0
  15. package/packages/config-stylelint/node_modules/file-entry-cache/package.json +62 -0
  16. package/packages/config-stylelint/node_modules/flat-cache/LICENSE +19 -0
  17. package/packages/config-stylelint/node_modules/flat-cache/README.md +235 -0
  18. package/packages/config-stylelint/node_modules/flat-cache/dist/index.cjs +495 -0
  19. package/packages/config-stylelint/node_modules/flat-cache/dist/index.d.cts +255 -0
  20. package/packages/config-stylelint/node_modules/flat-cache/dist/index.d.ts +255 -0
  21. package/packages/config-stylelint/node_modules/flat-cache/dist/index.js +455 -0
  22. package/packages/config-stylelint/node_modules/flat-cache/package.json +87 -0
  23. package/packages/config-stylelint/node_modules/globby/ignore.js +337 -0
  24. package/packages/config-stylelint/node_modules/globby/index.d.ts +394 -0
  25. package/packages/config-stylelint/node_modules/globby/index.js +488 -0
  26. package/packages/config-stylelint/node_modules/globby/license +9 -0
  27. package/packages/config-stylelint/node_modules/globby/package.json +94 -0
  28. package/packages/config-stylelint/node_modules/globby/readme.md +388 -0
  29. package/packages/config-stylelint/node_modules/globby/utilities.js +382 -0
  30. package/packages/config-stylelint/node_modules/meow/build/dependencies.js +7347 -0
  31. package/packages/config-stylelint/node_modules/meow/build/index.d.ts +2684 -0
  32. package/packages/config-stylelint/node_modules/meow/build/index.js +185 -0
  33. package/packages/config-stylelint/node_modules/meow/build/licenses.md +1254 -0
  34. package/packages/config-stylelint/node_modules/meow/build/options.js +147 -0
  35. package/packages/config-stylelint/node_modules/meow/build/parser.js +113 -0
  36. package/packages/config-stylelint/node_modules/meow/build/utils.js +7 -0
  37. package/packages/config-stylelint/node_modules/meow/build/validate.js +145 -0
  38. package/packages/config-stylelint/node_modules/meow/license +9 -0
  39. package/packages/config-stylelint/node_modules/meow/package.json +103 -0
  40. package/packages/config-stylelint/node_modules/meow/readme.md +387 -0
  41. package/packages/config-stylelint/node_modules/postcss-safe-parser/LICENSE +20 -0
  42. package/packages/config-stylelint/node_modules/postcss-safe-parser/README.md +25 -0
  43. package/packages/config-stylelint/node_modules/postcss-safe-parser/lib/safe-parse.js +12 -0
  44. package/packages/config-stylelint/node_modules/postcss-safe-parser/lib/safe-parser.js +100 -0
  45. package/packages/config-stylelint/node_modules/postcss-safe-parser/package.json +36 -0
  46. package/packages/config-stylelint/node_modules/slash/index.d.ts +23 -0
  47. package/packages/config-stylelint/node_modules/slash/index.js +9 -0
  48. package/packages/config-stylelint/node_modules/slash/license +9 -0
  49. package/packages/config-stylelint/node_modules/slash/package.json +39 -0
  50. package/packages/config-stylelint/node_modules/slash/readme.md +36 -0
  51. package/packages/config-stylelint/node_modules/string-width/index.d.ts +39 -0
  52. package/packages/config-stylelint/node_modules/string-width/index.js +119 -0
  53. package/packages/config-stylelint/node_modules/string-width/license +9 -0
  54. package/packages/config-stylelint/node_modules/string-width/package.json +65 -0
  55. package/packages/config-stylelint/node_modules/string-width/readme.md +66 -0
  56. package/packages/config-stylelint/node_modules/strip-ansi/index.d.ts +15 -0
  57. package/packages/config-stylelint/node_modules/strip-ansi/index.js +19 -0
  58. package/packages/config-stylelint/node_modules/strip-ansi/license +9 -0
  59. package/packages/config-stylelint/node_modules/strip-ansi/package.json +59 -0
  60. package/packages/config-stylelint/node_modules/strip-ansi/readme.md +37 -0
  61. package/packages/config-stylelint/node_modules/stylelint/LICENSE +20 -0
  62. package/packages/config-stylelint/node_modules/stylelint/README.md +113 -0
  63. package/packages/config-stylelint/node_modules/stylelint/bin/stylelint.mjs +7 -0
  64. package/packages/config-stylelint/node_modules/stylelint/lib/assignDisabledRanges.mjs +483 -0
  65. package/packages/config-stylelint/node_modules/stylelint/lib/augmentConfig.mjs +586 -0
  66. package/packages/config-stylelint/node_modules/stylelint/lib/cli.mjs +746 -0
  67. package/packages/config-stylelint/node_modules/stylelint/lib/constants.mjs +25 -0
  68. package/packages/config-stylelint/node_modules/stylelint/lib/createPartialStylelintResult.mjs +114 -0
  69. package/packages/config-stylelint/node_modules/stylelint/lib/createPlugin.mjs +9 -0
  70. package/packages/config-stylelint/node_modules/stylelint/lib/createStylelint.mjs +37 -0
  71. package/packages/config-stylelint/node_modules/stylelint/lib/descriptionlessDisables.mjs +51 -0
  72. package/packages/config-stylelint/node_modules/stylelint/lib/formatters/calcSeverityCounts.mjs +21 -0
  73. package/packages/config-stylelint/node_modules/stylelint/lib/formatters/compactFormatter.mjs +23 -0
  74. package/packages/config-stylelint/node_modules/stylelint/lib/formatters/index.mjs +23 -0
  75. package/packages/config-stylelint/node_modules/stylelint/lib/formatters/jsonFormatter.mjs +10 -0
  76. package/packages/config-stylelint/node_modules/stylelint/lib/formatters/preprocessWarnings.mjs +74 -0
  77. package/packages/config-stylelint/node_modules/stylelint/lib/formatters/stringFormatter.mjs +308 -0
  78. package/packages/config-stylelint/node_modules/stylelint/lib/formatters/tapFormatter.mjs +85 -0
  79. package/packages/config-stylelint/node_modules/stylelint/lib/formatters/terminalLink.mjs +21 -0
  80. package/packages/config-stylelint/node_modules/stylelint/lib/formatters/unixFormatter.mjs +32 -0
  81. package/packages/config-stylelint/node_modules/stylelint/lib/formatters/verboseFormatter.mjs +175 -0
  82. package/packages/config-stylelint/node_modules/stylelint/lib/getConfigForFile.mjs +110 -0
  83. package/packages/config-stylelint/node_modules/stylelint/lib/getPostcssResult.mjs +130 -0
  84. package/packages/config-stylelint/node_modules/stylelint/lib/index.mjs +38 -0
  85. package/packages/config-stylelint/node_modules/stylelint/lib/invalidScopeDisables.mjs +41 -0
  86. package/packages/config-stylelint/node_modules/stylelint/lib/isPathIgnored.mjs +48 -0
  87. package/packages/config-stylelint/node_modules/stylelint/lib/lintPostcssResult.mjs +172 -0
  88. package/packages/config-stylelint/node_modules/stylelint/lib/lintSource.mjs +135 -0
  89. package/packages/config-stylelint/node_modules/stylelint/lib/needlessDisables.mjs +91 -0
  90. package/packages/config-stylelint/node_modules/stylelint/lib/normalizeAllRuleSettings.mjs +29 -0
  91. package/packages/config-stylelint/node_modules/stylelint/lib/normalizeRuleSettings.mjs +56 -0
  92. package/packages/config-stylelint/node_modules/stylelint/lib/postcssPlugin.mjs +50 -0
  93. package/packages/config-stylelint/node_modules/stylelint/lib/prepareReturnValue.mjs +63 -0
  94. package/packages/config-stylelint/node_modules/stylelint/lib/printConfig.mjs +44 -0
  95. package/packages/config-stylelint/node_modules/stylelint/lib/reference/atKeywords.mjs +83 -0
  96. package/packages/config-stylelint/node_modules/stylelint/lib/reference/functions.mjs +96 -0
  97. package/packages/config-stylelint/node_modules/stylelint/lib/reference/keywords.mjs +663 -0
  98. package/packages/config-stylelint/node_modules/stylelint/lib/reference/mediaFeatures.mjs +115 -0
  99. package/packages/config-stylelint/node_modules/stylelint/lib/reference/mediaTypes.mjs +14 -0
  100. package/packages/config-stylelint/node_modules/stylelint/lib/reference/prefixes.mjs +17 -0
  101. package/packages/config-stylelint/node_modules/stylelint/lib/reference/properties.mjs +1112 -0
  102. package/packages/config-stylelint/node_modules/stylelint/lib/reference/selectors.mjs +472 -0
  103. package/packages/config-stylelint/node_modules/stylelint/lib/reference/units.mjs +82 -0
  104. package/packages/config-stylelint/node_modules/stylelint/lib/reportDisables.mjs +48 -0
  105. package/packages/config-stylelint/node_modules/stylelint/lib/reportUnknownRuleNames.mjs +76 -0
  106. package/packages/config-stylelint/node_modules/stylelint/lib/resolveConfig.mjs +43 -0
  107. package/packages/config-stylelint/node_modules/stylelint/lib/rules/alpha-value-notation/index.mjs +207 -0
  108. package/packages/config-stylelint/node_modules/stylelint/lib/rules/annotation-no-unknown/index.mjs +88 -0
  109. package/packages/config-stylelint/node_modules/stylelint/lib/rules/at-rule-allowed-list/index.mjs +62 -0
  110. package/packages/config-stylelint/node_modules/stylelint/lib/rules/at-rule-descriptor-no-unknown/index.mjs +108 -0
  111. package/packages/config-stylelint/node_modules/stylelint/lib/rules/at-rule-descriptor-value-no-unknown/index.mjs +64 -0
  112. package/packages/config-stylelint/node_modules/stylelint/lib/rules/at-rule-disallowed-list/index.mjs +62 -0
  113. package/packages/config-stylelint/node_modules/stylelint/lib/rules/at-rule-empty-line-before/index.mjs +178 -0
  114. package/packages/config-stylelint/node_modules/stylelint/lib/rules/at-rule-no-deprecated/index.mjs +86 -0
  115. package/packages/config-stylelint/node_modules/stylelint/lib/rules/at-rule-no-unknown/index.mjs +80 -0
  116. package/packages/config-stylelint/node_modules/stylelint/lib/rules/at-rule-no-vendor-prefix/index.mjs +82 -0
  117. package/packages/config-stylelint/node_modules/stylelint/lib/rules/at-rule-prelude-no-invalid/index.mjs +76 -0
  118. package/packages/config-stylelint/node_modules/stylelint/lib/rules/at-rule-property-required-list/index.mjs +92 -0
  119. package/packages/config-stylelint/node_modules/stylelint/lib/rules/block-no-empty/index.mjs +116 -0
  120. package/packages/config-stylelint/node_modules/stylelint/lib/rules/block-no-redundant-nested-style-rules/index.mjs +52 -0
  121. package/packages/config-stylelint/node_modules/stylelint/lib/rules/color-function-alias-notation/index.mjs +87 -0
  122. package/packages/config-stylelint/node_modules/stylelint/lib/rules/color-function-notation/index.mjs +168 -0
  123. package/packages/config-stylelint/node_modules/stylelint/lib/rules/color-hex-alpha/index.mjs +75 -0
  124. package/packages/config-stylelint/node_modules/stylelint/lib/rules/color-hex-length/index.mjs +128 -0
  125. package/packages/config-stylelint/node_modules/stylelint/lib/rules/color-named/colordUtils.mjs +109 -0
  126. package/packages/config-stylelint/node_modules/stylelint/lib/rules/color-named/index.mjs +183 -0
  127. package/packages/config-stylelint/node_modules/stylelint/lib/rules/color-no-hex/index.mjs +69 -0
  128. package/packages/config-stylelint/node_modules/stylelint/lib/rules/color-no-invalid-hex/index.mjs +68 -0
  129. package/packages/config-stylelint/node_modules/stylelint/lib/rules/comment-empty-line-before/index.mjs +131 -0
  130. package/packages/config-stylelint/node_modules/stylelint/lib/rules/comment-no-empty/index.mjs +50 -0
  131. package/packages/config-stylelint/node_modules/stylelint/lib/rules/comment-pattern/index.mjs +51 -0
  132. package/packages/config-stylelint/node_modules/stylelint/lib/rules/comment-whitespace-inside/index.mjs +149 -0
  133. package/packages/config-stylelint/node_modules/stylelint/lib/rules/comment-word-disallowed-list/index.mjs +63 -0
  134. package/packages/config-stylelint/node_modules/stylelint/lib/rules/container-name-pattern/index.mjs +107 -0
  135. package/packages/config-stylelint/node_modules/stylelint/lib/rules/custom-media-pattern/index.mjs +61 -0
  136. package/packages/config-stylelint/node_modules/stylelint/lib/rules/custom-property-empty-line-before/index.mjs +156 -0
  137. package/packages/config-stylelint/node_modules/stylelint/lib/rules/custom-property-no-missing-var-function/index.mjs +148 -0
  138. package/packages/config-stylelint/node_modules/stylelint/lib/rules/custom-property-pattern/index.mjs +100 -0
  139. package/packages/config-stylelint/node_modules/stylelint/lib/rules/declaration-block-no-duplicate-custom-properties/index.mjs +82 -0
  140. package/packages/config-stylelint/node_modules/stylelint/lib/rules/declaration-block-no-duplicate-properties/index.mjs +301 -0
  141. package/packages/config-stylelint/node_modules/stylelint/lib/rules/declaration-block-no-redundant-longhand-properties/index.mjs +411 -0
  142. package/packages/config-stylelint/node_modules/stylelint/lib/rules/declaration-block-no-shorthand-property-overrides/index.mjs +74 -0
  143. package/packages/config-stylelint/node_modules/stylelint/lib/rules/declaration-block-single-line-max-declarations/index.mjs +62 -0
  144. package/packages/config-stylelint/node_modules/stylelint/lib/rules/declaration-empty-line-before/index.mjs +160 -0
  145. package/packages/config-stylelint/node_modules/stylelint/lib/rules/declaration-no-important/index.mjs +51 -0
  146. package/packages/config-stylelint/node_modules/stylelint/lib/rules/declaration-property-max-values/index.mjs +79 -0
  147. package/packages/config-stylelint/node_modules/stylelint/lib/rules/declaration-property-unit-allowed-list/index.mjs +108 -0
  148. package/packages/config-stylelint/node_modules/stylelint/lib/rules/declaration-property-unit-disallowed-list/index.mjs +94 -0
  149. package/packages/config-stylelint/node_modules/stylelint/lib/rules/declaration-property-value-allowed-list/index.mjs +66 -0
  150. package/packages/config-stylelint/node_modules/stylelint/lib/rules/declaration-property-value-disallowed-list/index.mjs +66 -0
  151. package/packages/config-stylelint/node_modules/stylelint/lib/rules/declaration-property-value-keyword-no-deprecated/index.mjs +203 -0
  152. package/packages/config-stylelint/node_modules/stylelint/lib/rules/declaration-property-value-no-unknown/index.mjs +424 -0
  153. package/packages/config-stylelint/node_modules/stylelint/lib/rules/display-notation/index.mjs +225 -0
  154. package/packages/config-stylelint/node_modules/stylelint/lib/rules/font-family-name-quotes/index.mjs +243 -0
  155. package/packages/config-stylelint/node_modules/stylelint/lib/rules/font-family-no-duplicate-names/index.mjs +122 -0
  156. package/packages/config-stylelint/node_modules/stylelint/lib/rules/font-family-no-missing-generic-family-keyword/index.mjs +122 -0
  157. package/packages/config-stylelint/node_modules/stylelint/lib/rules/font-weight-notation/index.mjs +221 -0
  158. package/packages/config-stylelint/node_modules/stylelint/lib/rules/function-allowed-list/index.mjs +114 -0
  159. package/packages/config-stylelint/node_modules/stylelint/lib/rules/function-calc-no-unspaced-operator/index.mjs +589 -0
  160. package/packages/config-stylelint/node_modules/stylelint/lib/rules/function-disallowed-list/index.mjs +73 -0
  161. package/packages/config-stylelint/node_modules/stylelint/lib/rules/function-linear-gradient-no-nonstandard-direction/index.mjs +145 -0
  162. package/packages/config-stylelint/node_modules/stylelint/lib/rules/function-name-case/index.mjs +120 -0
  163. package/packages/config-stylelint/node_modules/stylelint/lib/rules/function-no-unknown/index.mjs +83 -0
  164. package/packages/config-stylelint/node_modules/stylelint/lib/rules/function-url-no-scheme-relative/index.mjs +67 -0
  165. package/packages/config-stylelint/node_modules/stylelint/lib/rules/function-url-quotes/index.mjs +230 -0
  166. package/packages/config-stylelint/node_modules/stylelint/lib/rules/function-url-scheme-allowed-list/index.mjs +70 -0
  167. package/packages/config-stylelint/node_modules/stylelint/lib/rules/function-url-scheme-disallowed-list/index.mjs +70 -0
  168. package/packages/config-stylelint/node_modules/stylelint/lib/rules/hue-degree-notation/index.mjs +123 -0
  169. package/packages/config-stylelint/node_modules/stylelint/lib/rules/import-notation/index.mjs +104 -0
  170. package/packages/config-stylelint/node_modules/stylelint/lib/rules/index.mjs +180 -0
  171. package/packages/config-stylelint/node_modules/stylelint/lib/rules/keyframe-block-no-duplicate-selectors/index.mjs +68 -0
  172. package/packages/config-stylelint/node_modules/stylelint/lib/rules/keyframe-declaration-no-important/index.mjs +54 -0
  173. package/packages/config-stylelint/node_modules/stylelint/lib/rules/keyframe-selector-notation/index.mjs +202 -0
  174. package/packages/config-stylelint/node_modules/stylelint/lib/rules/keyframes-name-pattern/index.mjs +63 -0
  175. package/packages/config-stylelint/node_modules/stylelint/lib/rules/layer-name-pattern/index.mjs +91 -0
  176. package/packages/config-stylelint/node_modules/stylelint/lib/rules/length-zero-no-unit/index.mjs +221 -0
  177. package/packages/config-stylelint/node_modules/stylelint/lib/rules/lightness-notation/index.mjs +165 -0
  178. package/packages/config-stylelint/node_modules/stylelint/lib/rules/max-nesting-depth/index.mjs +195 -0
  179. package/packages/config-stylelint/node_modules/stylelint/lib/rules/media-feature-name-allowed-list/index.mjs +67 -0
  180. package/packages/config-stylelint/node_modules/stylelint/lib/rules/media-feature-name-disallowed-list/index.mjs +67 -0
  181. package/packages/config-stylelint/node_modules/stylelint/lib/rules/media-feature-name-no-unknown/index.mjs +79 -0
  182. package/packages/config-stylelint/node_modules/stylelint/lib/rules/media-feature-name-no-vendor-prefix/index.mjs +94 -0
  183. package/packages/config-stylelint/node_modules/stylelint/lib/rules/media-feature-name-unit-allowed-list/index.mjs +110 -0
  184. package/packages/config-stylelint/node_modules/stylelint/lib/rules/media-feature-name-value-allowed-list/index.mjs +100 -0
  185. package/packages/config-stylelint/node_modules/stylelint/lib/rules/media-feature-name-value-no-unknown/index.mjs +277 -0
  186. package/packages/config-stylelint/node_modules/stylelint/lib/rules/media-feature-range-notation/index.mjs +187 -0
  187. package/packages/config-stylelint/node_modules/stylelint/lib/rules/media-query-no-invalid/index.mjs +193 -0
  188. package/packages/config-stylelint/node_modules/stylelint/lib/rules/media-type-no-deprecated/index.mjs +82 -0
  189. package/packages/config-stylelint/node_modules/stylelint/lib/rules/named-grid-areas-no-invalid/index.mjs +117 -0
  190. package/packages/config-stylelint/node_modules/stylelint/lib/rules/named-grid-areas-no-invalid/utils/findNotContiguousOrRectangular.mjs +57 -0
  191. package/packages/config-stylelint/node_modules/stylelint/lib/rules/nesting-selector-no-missing-scoping-root/index.mjs +165 -0
  192. package/packages/config-stylelint/node_modules/stylelint/lib/rules/no-descending-specificity/index.mjs +200 -0
  193. package/packages/config-stylelint/node_modules/stylelint/lib/rules/no-duplicate-at-import-rules/index.mjs +156 -0
  194. package/packages/config-stylelint/node_modules/stylelint/lib/rules/no-duplicate-selectors/index.mjs +218 -0
  195. package/packages/config-stylelint/node_modules/stylelint/lib/rules/no-empty-source/index.mjs +61 -0
  196. package/packages/config-stylelint/node_modules/stylelint/lib/rules/no-invalid-double-slash-comments/index.mjs +77 -0
  197. package/packages/config-stylelint/node_modules/stylelint/lib/rules/no-invalid-position-at-import-rule/index.mjs +76 -0
  198. package/packages/config-stylelint/node_modules/stylelint/lib/rules/no-invalid-position-declaration/index.mjs +86 -0
  199. package/packages/config-stylelint/node_modules/stylelint/lib/rules/no-irregular-whitespace/index.mjs +236 -0
  200. package/packages/config-stylelint/node_modules/stylelint/lib/rules/no-unknown-animations/index.mjs +71 -0
  201. package/packages/config-stylelint/node_modules/stylelint/lib/rules/no-unknown-custom-media/index.mjs +77 -0
  202. package/packages/config-stylelint/node_modules/stylelint/lib/rules/no-unknown-custom-properties/index.mjs +72 -0
  203. package/packages/config-stylelint/node_modules/stylelint/lib/rules/number-max-precision/index.mjs +209 -0
  204. package/packages/config-stylelint/node_modules/stylelint/lib/rules/property-allowed-list/index.mjs +58 -0
  205. package/packages/config-stylelint/node_modules/stylelint/lib/rules/property-disallowed-list/index.mjs +58 -0
  206. package/packages/config-stylelint/node_modules/stylelint/lib/rules/property-no-deprecated/index.mjs +143 -0
  207. package/packages/config-stylelint/node_modules/stylelint/lib/rules/property-no-unknown/index.mjs +126 -0
  208. package/packages/config-stylelint/node_modules/stylelint/lib/rules/property-no-vendor-prefix/index.mjs +100 -0
  209. package/packages/config-stylelint/node_modules/stylelint/lib/rules/rule-empty-line-before/index.mjs +156 -0
  210. package/packages/config-stylelint/node_modules/stylelint/lib/rules/rule-nesting-at-rule-required-list/index.mjs +85 -0
  211. package/packages/config-stylelint/node_modules/stylelint/lib/rules/rule-selector-property-disallowed-list/index.mjs +119 -0
  212. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-anb-no-unmatchable/index.mjs +121 -0
  213. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-attribute-name-disallowed-list/index.mjs +69 -0
  214. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-attribute-operator-allowed-list/index.mjs +70 -0
  215. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-attribute-operator-disallowed-list/index.mjs +70 -0
  216. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-attribute-quotes/index.mjs +107 -0
  217. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-class-pattern/index.mjs +71 -0
  218. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-combinator-allowed-list/index.mjs +81 -0
  219. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-combinator-disallowed-list/index.mjs +81 -0
  220. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-disallowed-list/index.mjs +115 -0
  221. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-id-pattern/index.mjs +66 -0
  222. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-max-attribute/index.mjs +92 -0
  223. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-max-class/index.mjs +75 -0
  224. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-max-combinators/index.mjs +77 -0
  225. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-max-compound-selectors/index.mjs +123 -0
  226. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-max-id/index.mjs +107 -0
  227. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-max-pseudo-class/index.mjs +85 -0
  228. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-max-specificity/index.mjs +146 -0
  229. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-max-type/index.mjs +219 -0
  230. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-max-universal/index.mjs +95 -0
  231. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-nested-pattern/index.mjs +95 -0
  232. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-no-qualifying-type/index.mjs +323 -0
  233. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-no-vendor-prefix/index.mjs +92 -0
  234. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-not-notation/index.mjs +217 -0
  235. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-pseudo-class-allowed-list/index.mjs +84 -0
  236. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-pseudo-class-disallowed-list/index.mjs +84 -0
  237. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-pseudo-class-no-unknown/index.mjs +179 -0
  238. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-pseudo-element-allowed-list/index.mjs +75 -0
  239. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-pseudo-element-colon-notation/index.mjs +93 -0
  240. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-pseudo-element-disallowed-list/index.mjs +74 -0
  241. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-pseudo-element-no-unknown/index.mjs +91 -0
  242. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-type-case/index.mjs +118 -0
  243. package/packages/config-stylelint/node_modules/stylelint/lib/rules/selector-type-no-unknown/index.mjs +148 -0
  244. package/packages/config-stylelint/node_modules/stylelint/lib/rules/shorthand-property-no-redundant-values/index.mjs +359 -0
  245. package/packages/config-stylelint/node_modules/stylelint/lib/rules/string-no-newline/index.mjs +120 -0
  246. package/packages/config-stylelint/node_modules/stylelint/lib/rules/syntax-string-no-invalid/index.mjs +80 -0
  247. package/packages/config-stylelint/node_modules/stylelint/lib/rules/time-min-milliseconds/index.mjs +167 -0
  248. package/packages/config-stylelint/node_modules/stylelint/lib/rules/unit-allowed-list/index.mjs +116 -0
  249. package/packages/config-stylelint/node_modules/stylelint/lib/rules/unit-disallowed-list/index.mjs +211 -0
  250. package/packages/config-stylelint/node_modules/stylelint/lib/rules/unit-no-unknown/index.mjs +207 -0
  251. package/packages/config-stylelint/node_modules/stylelint/lib/rules/value-keyword-case/index.mjs +253 -0
  252. package/packages/config-stylelint/node_modules/stylelint/lib/rules/value-no-vendor-prefix/index.mjs +92 -0
  253. package/packages/config-stylelint/node_modules/stylelint/lib/standalone.mjs +381 -0
  254. package/packages/config-stylelint/node_modules/stylelint/lib/timing.mjs +134 -0
  255. package/packages/config-stylelint/node_modules/stylelint/lib/unscopedDisables.mjs +66 -0
  256. package/packages/config-stylelint/node_modules/stylelint/lib/utils/FileCache.mjs +115 -0
  257. package/packages/config-stylelint/node_modules/stylelint/lib/utils/addEmptyLineBefore.mjs +21 -0
  258. package/packages/config-stylelint/node_modules/stylelint/lib/utils/addSemicolonForEditInfo.mjs +35 -0
  259. package/packages/config-stylelint/node_modules/stylelint/lib/utils/appendRuleName.mjs +13 -0
  260. package/packages/config-stylelint/node_modules/stylelint/lib/utils/arrayEqual.mjs +14 -0
  261. package/packages/config-stylelint/node_modules/stylelint/lib/utils/beforeBlockString.mjs +28 -0
  262. package/packages/config-stylelint/node_modules/stylelint/lib/utils/blockString.mjs +19 -0
  263. package/packages/config-stylelint/node_modules/stylelint/lib/utils/blurInterpolation.mjs +8 -0
  264. package/packages/config-stylelint/node_modules/stylelint/lib/utils/cachedImport.mjs +68 -0
  265. package/packages/config-stylelint/node_modules/stylelint/lib/utils/checkAgainstRule.mjs +71 -0
  266. package/packages/config-stylelint/node_modules/stylelint/lib/utils/checkInvalidCLIOptions.mjs +105 -0
  267. package/packages/config-stylelint/node_modules/stylelint/lib/utils/configurationComment.mjs +74 -0
  268. package/packages/config-stylelint/node_modules/stylelint/lib/utils/containsString.mjs +52 -0
  269. package/packages/config-stylelint/node_modules/stylelint/lib/utils/createMapWithSet.mjs +19 -0
  270. package/packages/config-stylelint/node_modules/stylelint/lib/utils/dynamicImport.mjs +13 -0
  271. package/packages/config-stylelint/node_modules/stylelint/lib/utils/eachDeclarationBlock.mjs +59 -0
  272. package/packages/config-stylelint/node_modules/stylelint/lib/utils/eachNodeUpToRoot.mjs +22 -0
  273. package/packages/config-stylelint/node_modules/stylelint/lib/utils/emitWarning.mjs +83 -0
  274. package/packages/config-stylelint/node_modules/stylelint/lib/utils/errors.mjs +55 -0
  275. package/packages/config-stylelint/node_modules/stylelint/lib/utils/filterFilePaths.mjs +17 -0
  276. package/packages/config-stylelint/node_modules/stylelint/lib/utils/findAnimationName.mjs +74 -0
  277. package/packages/config-stylelint/node_modules/stylelint/lib/utils/findAtRuleContext.mjs +27 -0
  278. package/packages/config-stylelint/node_modules/stylelint/lib/utils/findFontFamily.mjs +148 -0
  279. package/packages/config-stylelint/node_modules/stylelint/lib/utils/findMediaFeatureNames.mjs +151 -0
  280. package/packages/config-stylelint/node_modules/stylelint/lib/utils/findNodeUpToRoot.mjs +25 -0
  281. package/packages/config-stylelint/node_modules/stylelint/lib/utils/fixEmptyLinesBefore.mjs +26 -0
  282. package/packages/config-stylelint/node_modules/stylelint/lib/utils/functionArgumentsSearch.mjs +64 -0
  283. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getAtRuleParams.mjs +7 -0
  284. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getDeclarationValue.mjs +9 -0
  285. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getDimension.mjs +62 -0
  286. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getFileIgnorer.mjs +41 -0
  287. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getFormatter.mjs +43 -0
  288. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getFormatterOptionsText.mjs +12 -0
  289. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getImportantPosition.mjs +15 -0
  290. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getLexer.mjs +39 -0
  291. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getModulePath.mjs +35 -0
  292. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getNextNonSharedLineCommentNode.mjs +34 -0
  293. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getPreviousNonSharedLineCommentNode.mjs +36 -0
  294. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getRelativePath.mjs +12 -0
  295. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getRuleSelector.mjs +9 -0
  296. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getSchemeFromUrl.mjs +36 -0
  297. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getSelectorSourceIndex.mjs +12 -0
  298. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getStrippedSelectorSource.mjs +47 -0
  299. package/packages/config-stylelint/node_modules/stylelint/lib/utils/getStylelintRule.mjs +22 -0
  300. package/packages/config-stylelint/node_modules/stylelint/lib/utils/hasBlock.mjs +9 -0
  301. package/packages/config-stylelint/node_modules/stylelint/lib/utils/hasEmptyLine.mjs +13 -0
  302. package/packages/config-stylelint/node_modules/stylelint/lib/utils/hasInterpolation.mjs +24 -0
  303. package/packages/config-stylelint/node_modules/stylelint/lib/utils/hasLessInterpolation.mjs +11 -0
  304. package/packages/config-stylelint/node_modules/stylelint/lib/utils/hasPsvInterpolation.mjs +11 -0
  305. package/packages/config-stylelint/node_modules/stylelint/lib/utils/hasScssInterpolation.mjs +11 -0
  306. package/packages/config-stylelint/node_modules/stylelint/lib/utils/hasTplInterpolation.mjs +11 -0
  307. package/packages/config-stylelint/node_modules/stylelint/lib/utils/hash.mjs +10 -0
  308. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isAfterBlock.mjs +15 -0
  309. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isAfterComment.mjs +15 -0
  310. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isAfterSingleLineComment.mjs +19 -0
  311. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isAfterStandardPropertyDeclaration.mjs +19 -0
  312. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isAutoprefixable.mjs +364 -0
  313. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isBlocklessAtRuleAfterBlocklessAtRule.mjs +21 -0
  314. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isBlocklessAtRuleAfterSameNameBlocklessAtRule.mjs +21 -0
  315. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isContextFunctionalPseudoClass.mjs +24 -0
  316. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isCounterIncrementCustomIdentValue.mjs +19 -0
  317. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isCounterResetCustomIdentValue.mjs +19 -0
  318. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isCustomElement.mjs +34 -0
  319. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isCustomFunction.mjs +9 -0
  320. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isCustomMediaQuery.mjs +8 -0
  321. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isCustomProperty.mjs +8 -0
  322. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isCustomSelector.mjs +9 -0
  323. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isDescriptorDeclaration.mjs +22 -0
  324. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isFirstNested.mjs +83 -0
  325. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isFirstNodeOfRoot.mjs +17 -0
  326. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isHexColor.mjs +9 -0
  327. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isInDocument.mjs +32 -0
  328. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isKeyframeRule.mjs +17 -0
  329. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isKeyframeSelector.mjs +29 -0
  330. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isMathFunction.mjs +11 -0
  331. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isNonNegativeInteger.mjs +6 -0
  332. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isNumbery.mjs +9 -0
  333. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isOnlyWhitespace.mjs +17 -0
  334. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isPathNotFoundError.mjs +9 -0
  335. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isScssVariable.mjs +19 -0
  336. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isSharedLineComment.mjs +53 -0
  337. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isSingleLineString.mjs +10 -0
  338. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isStandardSyntaxAtRule.mjs +32 -0
  339. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isStandardSyntaxColorFunction.mjs +24 -0
  340. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isStandardSyntaxCombinator.mjs +32 -0
  341. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isStandardSyntaxComment.mjs +13 -0
  342. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isStandardSyntaxDeclaration.mjs +57 -0
  343. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isStandardSyntaxFunction.mjs +28 -0
  344. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isStandardSyntaxHexColor.mjs +14 -0
  345. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isStandardSyntaxKeyframesName.mjs +15 -0
  346. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isStandardSyntaxProperty.mjs +32 -0
  347. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isStandardSyntaxRule.mjs +24 -0
  348. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isStandardSyntaxSelector.mjs +56 -0
  349. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isStandardSyntaxTypeSelector.mjs +56 -0
  350. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isStandardSyntaxUrl.mjs +49 -0
  351. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isStandardSyntaxValue.mjs +51 -0
  352. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isUnicodeRangeDescriptor.mjs +24 -0
  353. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isUnicodeSupported.mjs +26 -0
  354. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isUrlFunction.mjs +9 -0
  355. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isValidFontSize.mjs +38 -0
  356. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isValidHex.mjs +11 -0
  357. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isValidIdentifier.mjs +39 -0
  358. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isVarFunction.mjs +9 -0
  359. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isVariable.mjs +9 -0
  360. package/packages/config-stylelint/node_modules/stylelint/lib/utils/isWhitespace.mjs +9 -0
  361. package/packages/config-stylelint/node_modules/stylelint/lib/utils/matchesStringOrRegExp.mjs +97 -0
  362. package/packages/config-stylelint/node_modules/stylelint/lib/utils/mergeSyntaxDefinitions.mjs +137 -0
  363. package/packages/config-stylelint/node_modules/stylelint/lib/utils/narrowFixRange.mjs +68 -0
  364. package/packages/config-stylelint/node_modules/stylelint/lib/utils/nodeContextLookup.mjs +41 -0
  365. package/packages/config-stylelint/node_modules/stylelint/lib/utils/nodeFieldIndices.mjs +119 -0
  366. package/packages/config-stylelint/node_modules/stylelint/lib/utils/normalizeFilePath.mjs +26 -0
  367. package/packages/config-stylelint/node_modules/stylelint/lib/utils/normalizeFixMode.mjs +22 -0
  368. package/packages/config-stylelint/node_modules/stylelint/lib/utils/normalizeSelector.mjs +166 -0
  369. package/packages/config-stylelint/node_modules/stylelint/lib/utils/optionsMatches.mjs +20 -0
  370. package/packages/config-stylelint/node_modules/stylelint/lib/utils/parseCustomMediaQuery.mjs +15 -0
  371. package/packages/config-stylelint/node_modules/stylelint/lib/utils/parseMediaQuery.mjs +15 -0
  372. package/packages/config-stylelint/node_modules/stylelint/lib/utils/parseSelector.mjs +19 -0
  373. package/packages/config-stylelint/node_modules/stylelint/lib/utils/pathExists.mjs +16 -0
  374. package/packages/config-stylelint/node_modules/stylelint/lib/utils/pluralize.mjs +10 -0
  375. package/packages/config-stylelint/node_modules/stylelint/lib/utils/putIfAbsent.mjs +20 -0
  376. package/packages/config-stylelint/node_modules/stylelint/lib/utils/rangesOverlap.mjs +19 -0
  377. package/packages/config-stylelint/node_modules/stylelint/lib/utils/rawNodeString.mjs +29 -0
  378. package/packages/config-stylelint/node_modules/stylelint/lib/utils/regexes.mjs +135 -0
  379. package/packages/config-stylelint/node_modules/stylelint/lib/utils/removeEmptyLinesBefore.mjs +13 -0
  380. package/packages/config-stylelint/node_modules/stylelint/lib/utils/report.mjs +321 -0
  381. package/packages/config-stylelint/node_modules/stylelint/lib/utils/reportCommentProblem.mjs +39 -0
  382. package/packages/config-stylelint/node_modules/stylelint/lib/utils/resolveFilePath.mjs +38 -0
  383. package/packages/config-stylelint/node_modules/stylelint/lib/utils/resolveNestedSelectorsForRule.mjs +108 -0
  384. package/packages/config-stylelint/node_modules/stylelint/lib/utils/resolveOptionValue.mjs +30 -0
  385. package/packages/config-stylelint/node_modules/stylelint/lib/utils/resolveSilent.mjs +144 -0
  386. package/packages/config-stylelint/node_modules/stylelint/lib/utils/ruleMessages.mjs +18 -0
  387. package/packages/config-stylelint/node_modules/stylelint/lib/utils/setAtRuleParams.mjs +18 -0
  388. package/packages/config-stylelint/node_modules/stylelint/lib/utils/setDeclarationValue.mjs +18 -0
  389. package/packages/config-stylelint/node_modules/stylelint/lib/utils/suppressionsService.mjs +317 -0
  390. package/packages/config-stylelint/node_modules/stylelint/lib/utils/toPath.mjs +23 -0
  391. package/packages/config-stylelint/node_modules/stylelint/lib/utils/typeGuards.mjs +90 -0
  392. package/packages/config-stylelint/node_modules/stylelint/lib/utils/uniteSets.mjs +9 -0
  393. package/packages/config-stylelint/node_modules/stylelint/lib/utils/validateObjectWithArrayProps.mjs +29 -0
  394. package/packages/config-stylelint/node_modules/stylelint/lib/utils/validateObjectWithProps.mjs +28 -0
  395. package/packages/config-stylelint/node_modules/stylelint/lib/utils/validateOptions.mjs +176 -0
  396. package/packages/config-stylelint/node_modules/stylelint/lib/utils/validateTypes.mjs +148 -0
  397. package/packages/config-stylelint/node_modules/stylelint/lib/utils/vendor.mjs +43 -0
  398. package/packages/config-stylelint/node_modules/stylelint/lib/validateDisableSettings.mjs +67 -0
  399. package/packages/config-stylelint/node_modules/stylelint/lib/writeOutputFile.mjs +15 -0
  400. package/packages/config-stylelint/node_modules/stylelint/package.json +212 -0
  401. package/packages/config-stylelint/node_modules/stylelint/types/stylelint/index.d.ts +1590 -0
  402. package/packages/config-stylelint/node_modules/unicorn-magic/default.d.ts +13 -0
  403. package/packages/config-stylelint/node_modules/unicorn-magic/default.js +14 -0
  404. package/packages/config-stylelint/node_modules/unicorn-magic/license +9 -0
  405. package/packages/config-stylelint/node_modules/unicorn-magic/node.d.ts +125 -0
  406. package/packages/config-stylelint/node_modules/unicorn-magic/node.js +49 -0
  407. package/packages/config-stylelint/node_modules/unicorn-magic/package.json +68 -0
  408. package/packages/config-stylelint/node_modules/unicorn-magic/readme.md +31 -0
  409. package/packages/config-stylelint/package.json +2 -2
@@ -0,0 +1,1590 @@
1
+ import type * as PostCSS from 'postcss';
2
+ import type { Options as GlobbyOptions } from 'globby';
3
+ import type { cosmiconfig, TransformSync as CosmiconfigTransformSync } from 'cosmiconfig';
4
+ import type { Lexer as CSSTreeLexer } from 'css-tree';
5
+
6
+ type ConfigExtends = string | string[];
7
+
8
+ type ConfigPlugins = string | stylelint.Plugin | (string | stylelint.Plugin)[];
9
+
10
+ type ConfigIgnoreFiles = string | string[];
11
+
12
+ type ConfigRules = {
13
+ [ruleName: string]: stylelint.ConfigRuleSettings<any, Object>;
14
+ };
15
+
16
+ type ConfigOverride = Omit<stylelint.Config, 'overrides'> & {
17
+ files: string | string[];
18
+ name?: string;
19
+ };
20
+
21
+ type ConfigProcessors = string[];
22
+
23
+ type DisableSettings = stylelint.ConfigRuleSettings<boolean, stylelint.DisableOptions>;
24
+
25
+ // A meta-type that returns a union over all properties of `T` whose values
26
+ // have type `U`.
27
+ // see sindresorhus/type-fest#630
28
+ type PropertyNamesOfType<T, U> = {
29
+ [K in keyof T]-?: T[K] extends U ? K : never;
30
+ }[keyof T];
31
+
32
+ type FileCache = {
33
+ calcHashOfConfig: (config: stylelint.Config) => void;
34
+ hasFileChanged: (absoluteFilepath: string) => boolean;
35
+ reconcile: () => void;
36
+ destroy: () => void;
37
+ removeEntry: (absoluteFilepath: string) => void;
38
+ };
39
+
40
+ type RuleFuncArgs = (string | RegExp | number | boolean | (string | RegExp)[])[];
41
+
42
+ // Note: With strict function types enabled, function signatures are checked contravariantly.
43
+ // This means that it would not be possible for rule authors to narrow the message function
44
+ // parameters to e.g. just `string`. Declaring the type for rule message functions through
45
+ // method declarations tricks TypeScript into bivariant signature checking. More details can
46
+ // be found here: https://stackoverflow.com/questions/52667959/what-is-the-purpose-of-bivariancehack-in-typescript-types.
47
+ // and in the original discussion: https://github.com/stylelint/stylelint/pull/6147#issuecomment-1155337016.
48
+ type RuleMessageFunc = {
49
+ bivariance(...args: RuleFuncArgs): string;
50
+ }['bivariance'];
51
+
52
+ type RuleSeverityFunc = {
53
+ bivariance(...args: RuleFuncArgs): stylelint.Severity | null;
54
+ }['bivariance'];
55
+
56
+ type RuleOptionsPossibleFunc = (value: unknown) => boolean;
57
+
58
+ type DisableReportEntry = {
59
+ source?: string;
60
+ ranges: stylelint.DisableReportRange[];
61
+ };
62
+
63
+ declare namespace stylelint {
64
+ /**
65
+ * Rule severity.
66
+ */
67
+ export type Severity = 'warning' | 'error';
68
+
69
+ /**
70
+ * A Stylelint plugin.
71
+ */
72
+ export type Plugin =
73
+ | { default?: { ruleName: string; rule: Rule } }
74
+ | { ruleName: string; rule: Rule };
75
+
76
+ /** @internal */
77
+ export type ConfigRuleSettings<T, O extends Object> =
78
+ | null
79
+ | undefined
80
+ | NonNullable<T>
81
+ | [NonNullable<T>]
82
+ | [NonNullable<T>, O];
83
+
84
+ /** @internal */
85
+ export type DisableOptions = {
86
+ except?: Array<StringOrRegex>;
87
+ severity?: Severity;
88
+ };
89
+
90
+ type LanguageOptions = {
91
+ syntax?: {
92
+ atRules?: Record<
93
+ string,
94
+ {
95
+ comment?: string;
96
+ prelude?: string;
97
+ descriptors?: Record<string, string>;
98
+ }
99
+ >;
100
+ cssWideKeywords?: string[];
101
+ properties?: Record<string, string>;
102
+ types?: Record<string, string>;
103
+ };
104
+ };
105
+
106
+ /**
107
+ * Configuration.
108
+ */
109
+ export type Config = {
110
+ /**
111
+ * Allows to extend an existing configuration. Configurations can bundle plugins, custom syntaxes,
112
+ * options, and configure rules. They can also extend other configurations
113
+ *
114
+ * @see [extends](https://stylelint.io/user-guide/configure/#extends)
115
+ */
116
+ extends?: ConfigExtends;
117
+ /**
118
+ * Custom rules or sets of custom rules built to support methodologies, toolsets,
119
+ * non-standard CSS features, or very specific use cases
120
+ *
121
+ * @see [plugins](https://stylelint.io/user-guide/configure/#plugins)
122
+ */
123
+ plugins?: ConfigPlugins;
124
+ pluginFunctions?: {
125
+ [pluginName: string]: Rule;
126
+ };
127
+ /**
128
+ * A glob or array of globs to ignore specific files
129
+ *
130
+ * @default 'node_modules'
131
+ *
132
+ * @see [ignoreFiles](https://stylelint.io/user-guide/configure/#ignorefiles)
133
+ */
134
+ ignoreFiles?: ConfigIgnoreFiles;
135
+ ignorePatterns?: string;
136
+ /**
137
+ * An object containing the configured rules
138
+ *
139
+ * @see [rules](https://stylelint.io/user-guide/configure/#rules)
140
+ */
141
+ rules?: ConfigRules;
142
+ /**
143
+ * Only register problems for rules with an "error"-level severity (ignore "warning"-level)
144
+ *
145
+ * @see [quiet](https://stylelint.io/user-guide/options/#quiet)
146
+ */
147
+ quiet?: boolean;
148
+ /**
149
+ * A string to specify the name of a formatter or a path to a custom formatter function
150
+ *
151
+ * @see [formatter](https://stylelint.io/user-guide/configure#formatter)
152
+ */
153
+ formatter?: FormatterType | Formatter;
154
+ /**
155
+ * A string to set the default severity level for all rules that do not have a severity
156
+ * specified in their secondary options
157
+ *
158
+ * @see [defaultSeverity](https://stylelint.io/user-guide/configure#defaultseverity)
159
+ */
160
+ defaultSeverity?: Severity;
161
+ /**
162
+ * A boolean value indicating if 'stylelint-disable' comments will be ignored
163
+ *
164
+ * @see [ignoreDisables](https://stylelint.io/user-guide/configure#ignoredisables)
165
+ */
166
+ ignoreDisables?: boolean;
167
+ /**
168
+ * Report configuration comments that don't match any lints that need to be disabled
169
+ *
170
+ * @see [reportNeedlessDisables](https://stylelint.io/user-guide/configure#reportneedlessdisables)
171
+ */
172
+ reportNeedlessDisables?: DisableSettings;
173
+ /**
174
+ * Report configuration comments that don't match rules that are specified in the configuration object
175
+ *
176
+ * @see [reportInvalidScopeDisables](https://stylelint.io/user-guide/configure#reportinvalidscopedisables)
177
+ */
178
+ reportInvalidScopeDisables?: DisableSettings;
179
+ /**
180
+ * Report configuration comments without a description
181
+ *
182
+ * @see [reportDescriptionlessDisables](https://stylelint.io/user-guide/configure#reportdescriptionlessdisables)
183
+ */
184
+ reportDescriptionlessDisables?: DisableSettings;
185
+ /**
186
+ * Report configuration comments that are not scoped to at least one rule
187
+ *
188
+ * @see [reportUnscopedDisables](https://stylelint.io/user-guide/configure#reportunscopeddisables)
189
+ */
190
+ reportUnscopedDisables?: DisableSettings;
191
+ /**
192
+ * A string to set what configuration comments like 'stylelint-disable' start with.
193
+ * Сan be useful when using multiple instances of Stylelint with different configurations.
194
+ *
195
+ * @see [configurationComment](https://stylelint.io/user-guide/configure#configurationcomment)
196
+ */
197
+ configurationComment?: string;
198
+ /**
199
+ * An array of objects to specify what subset of files to apply a configuration to
200
+ *
201
+ * @see [overrides](https://stylelint.io/user-guide/configure#overrides)
202
+ */
203
+ overrides?: ConfigOverride[];
204
+ /**
205
+ * Allows to specify a custom syntax to use in code
206
+ *
207
+ * @see [customSyntax](https://stylelint.io/user-guide/configure#customsyntax)
208
+ */
209
+ customSyntax?: CustomSyntax;
210
+ /**
211
+ * Functions that allow to hook into Stylelint's pipeline
212
+ *
213
+ * @experimental
214
+ *
215
+ * @see [processors](https://stylelint.io/user-guide/configure#processors)
216
+ */
217
+ processors?: ConfigProcessors;
218
+ languageOptions?: LanguageOptions;
219
+ /** @internal */
220
+ _processorFunctions?: Map<string, ReturnType<Processor>['postprocess']>;
221
+ /**
222
+ * If true, Stylelint does not throw an error when the glob pattern matches no files.
223
+ *
224
+ * Should not be overridden on a per-file basis
225
+ *
226
+ * @see [allowEmptyInput](https://stylelint.io/user-guide/configure#allowemptyinput)
227
+ */
228
+ allowEmptyInput?: boolean;
229
+ /**
230
+ * If true, store the results of processed files so that Stylelint only operates on the changed ones.
231
+ *
232
+ * Should not be overridden on a per-file basis
233
+ *
234
+ * @see [cache](https://stylelint.io/user-guide/configure#cache)
235
+ */
236
+ cache?: boolean;
237
+ /**
238
+ * If true, automatically fix, where possible, problems reported by rules.
239
+ *
240
+ * Should not be overridden on a per-file basis
241
+ *
242
+ * @see [fix](https://stylelint.io/user-guide/configure#fix)
243
+ */
244
+ fix?: boolean;
245
+ computeEditInfo?: boolean;
246
+ /**
247
+ * Force enable/disable the validation of the rules' options
248
+ *
249
+ * @default true
250
+ *
251
+ * @see [validate](https://stylelint.io/user-guide/options/#validate)
252
+ */
253
+ validate?: boolean;
254
+ };
255
+
256
+ /** @internal */
257
+ export type DisablePropertyName = PropertyNamesOfType<Config, DisableSettings>;
258
+
259
+ /** @internal */
260
+ export type CosmiconfigResult =
261
+ | (ReturnType<CosmiconfigTransformSync> & { config: Config })
262
+ | null;
263
+
264
+ /** @internal */
265
+ export type DisabledRange = {
266
+ node: PostCSS.Node;
267
+ start: number;
268
+ strictStart: boolean;
269
+ end?: number;
270
+ strictEnd?: boolean;
271
+ rules?: string[];
272
+ description?: string;
273
+ };
274
+
275
+ /** @internal */
276
+ export type DisabledRangeObject = {
277
+ [ruleName: string]: DisabledRange[];
278
+ };
279
+
280
+ /** @internal */
281
+ export type DisabledWarning = { line: number; rule: string };
282
+
283
+ /** @internal */
284
+ export type StylelintPostcssResult = {
285
+ ruleSeverities: { [ruleName: string]: RuleSeverity };
286
+ customMessages: { [ruleName: string]: RuleMessage };
287
+ customUrls: { [ruleName: string]: string };
288
+ ruleMetadata: { [ruleName: string]: Partial<RuleMeta> };
289
+ rangesOfComputedEditInfos: Array<EditInfo['range']>;
290
+ fixersData: { [ruleName: string]: number };
291
+ quiet?: boolean;
292
+ quietDeprecationWarnings?: boolean;
293
+ disabledRanges: DisabledRangeObject;
294
+ disabledWarnings?: DisabledWarning[];
295
+ ignored?: boolean;
296
+ stylelintError?: boolean;
297
+ stylelintWarning?: boolean;
298
+ config?: Config;
299
+ lexer: CSSTreeLexer;
300
+ };
301
+
302
+ type StylelintWarningType = 'deprecation' | 'invalidOption' | 'parseError';
303
+
304
+ /** @internal */
305
+ export type WarningOptions = PostCSS.WarningOptions & {
306
+ stylelintType?: StylelintWarningType;
307
+ severity?: Severity;
308
+ url?: string;
309
+ rule?: string;
310
+ fix?: EditInfo;
311
+ };
312
+
313
+ /** @internal */
314
+ export type PostcssResult = PostCSS.Result & {
315
+ stylelint: StylelintPostcssResult;
316
+ warn(message: string, options?: WarningOptions): void;
317
+ };
318
+
319
+ /** @internal */
320
+ export type Formatter = (results: LintResult[], returnValue: LinterResult) => string;
321
+
322
+ type Formatters = {
323
+ readonly compact: Promise<Formatter>;
324
+ readonly json: Promise<Formatter>;
325
+ readonly string: Promise<Formatter>;
326
+ readonly tap: Promise<Formatter>;
327
+ readonly unix: Promise<Formatter>;
328
+ readonly verbose: Promise<Formatter>;
329
+ };
330
+
331
+ /** @internal */
332
+ export type FormatterType = keyof Formatters;
333
+
334
+ /** @internal */
335
+ export type CustomSyntax = string | PostCSS.Syntax;
336
+
337
+ /**
338
+ * WARNING: This is an experimental feature. The API may change in the future.
339
+ */
340
+ export type Processor = () => {
341
+ name: string;
342
+ postprocess: (result: LintResult, root?: PostCSS.Root) => void;
343
+ };
344
+
345
+ /** @internal */
346
+ export type RuleMessage = string | RuleMessageFunc;
347
+
348
+ /** @internal */
349
+ export type RuleMessages = { [message: string]: RuleMessage };
350
+
351
+ /** @internal */
352
+ export type RuleOptionsPossible = boolean | number | string | RuleOptionsPossibleFunc;
353
+
354
+ /** @internal */
355
+ export type RuleOptions = {
356
+ actual: unknown;
357
+ possible?:
358
+ | RuleOptionsPossibleFunc
359
+ | RuleOptionsPossible[]
360
+ | Record<string, RuleOptionsPossible[]>;
361
+ optional?: boolean;
362
+ };
363
+
364
+ /** @internal */
365
+ type RuleSeverity = Severity | RuleSeverityFunc;
366
+
367
+ /**
368
+ * A rule context.
369
+ */
370
+ export type RuleContext = {
371
+ configurationComment?: string | undefined;
372
+ fix?: boolean | undefined;
373
+ newline?: string | undefined;
374
+ };
375
+
376
+ /** @internal */
377
+ export type RuleBase<P = any, S = any> = (
378
+ primaryOption: P,
379
+ secondaryOptions: S,
380
+ context: RuleContext,
381
+ ) => (root: PostCSS.Root, result: PostcssResult) => Promise<void> | void;
382
+
383
+ /** @internal */
384
+ export type RuleMeta = {
385
+ url: string;
386
+ deprecated?: boolean;
387
+ fixable?: boolean;
388
+ };
389
+
390
+ /** @internal */
391
+ export type Range = {
392
+ start: Position;
393
+ end: Position;
394
+ };
395
+
396
+ /**
397
+ * A rule.
398
+ */
399
+ export type Rule<P = any, S = any, M = RuleMessages> = RuleBase<P, S> & {
400
+ ruleName: string;
401
+ messages: M;
402
+ primaryOptionArray?: boolean;
403
+ meta?: RuleMeta;
404
+ };
405
+
406
+ type StringOrRegex = string | RegExp;
407
+ type OneOrMany<S> = S | S[];
408
+ type Primary = number | true | OneOrMany<StringOrRegex> | Record<string, any>;
409
+ type Secondary = Record<string, any>;
410
+
411
+ // see sindresorhus/type-fest#821
412
+ type Messages = {
413
+ [key in `expected${string}` | `rejected${string}`]: RuleMessage;
414
+ };
415
+
416
+ type ExpectedMessage<T extends unknown[]> = { expected: (...args: T) => string };
417
+ type RejectedMessage<T extends unknown[]> = { rejected: (...args: T) => string };
418
+ type AutofixMessage = ExpectedMessage<[actual: string, expected: string]>;
419
+ type PatternMessage = ExpectedMessage<[input: string, pattern: StringOrRegex]>;
420
+ type MaximumMessage = ExpectedMessage<[selector: string, maximum: number]>;
421
+
422
+ type CoreRule<
423
+ P extends Primary,
424
+ S extends Secondary = Secondary,
425
+ M extends Messages = Messages,
426
+ > = Rule<P, S, M>;
427
+ type NotationRule<P extends string, S extends object = {}> = CoreRule<
428
+ P,
429
+ S,
430
+ ExpectedMessage<[primary: P]>
431
+ >;
432
+ type PatternRule<S extends object = {}> = CoreRule<StringOrRegex, S, PatternMessage>;
433
+ type MaxRule<S extends object = {}> = CoreRule<number, S, MaximumMessage>;
434
+
435
+ /** @internal */
436
+ export type CoreRules = {
437
+ 'alpha-value-notation': CoreRule<
438
+ 'number' | 'percentage',
439
+ { exceptProperties: OneOrMany<StringOrRegex> },
440
+ AutofixMessage
441
+ >;
442
+ 'annotation-no-unknown': CoreRule<
443
+ true,
444
+ { ignoreAnnotations: OneOrMany<StringOrRegex> },
445
+ RejectedMessage<[annotation: string]>
446
+ >;
447
+ 'at-rule-allowed-list': CoreRule<
448
+ OneOrMany<StringOrRegex>,
449
+ {},
450
+ RejectedMessage<[atRule: string]>
451
+ >;
452
+ 'at-rule-descriptor-no-unknown': CoreRule<
453
+ true,
454
+ {},
455
+ RejectedMessage<[atRule: string, descriptor: string]>
456
+ >;
457
+ 'at-rule-descriptor-value-no-unknown': CoreRule<
458
+ true,
459
+ {},
460
+ RejectedMessage<[descriptor: string, value: string]>
461
+ >;
462
+ 'at-rule-disallowed-list': CoreRule<
463
+ OneOrMany<StringOrRegex>,
464
+ {},
465
+ RejectedMessage<[atRule: string]>
466
+ >;
467
+ 'at-rule-empty-line-before': CoreRule<
468
+ 'always' | 'never',
469
+ {
470
+ except: OneOrMany<
471
+ | 'after-same-name'
472
+ | 'inside-block'
473
+ | 'blockless-after-same-name-blockless'
474
+ | 'blockless-after-blockless'
475
+ | 'first-nested'
476
+ >;
477
+ ignore: OneOrMany<
478
+ | 'after-comment'
479
+ | 'first-nested'
480
+ | 'inside-block'
481
+ | 'blockless-after-same-name-blockless'
482
+ | 'blockless-after-blockless'
483
+ >;
484
+ ignoreAtRules: OneOrMany<StringOrRegex>;
485
+ }
486
+ >;
487
+ 'at-rule-no-deprecated': CoreRule<
488
+ true,
489
+ { ignoreAtRules: OneOrMany<StringOrRegex> },
490
+ RejectedMessage<[atRule: string]>
491
+ >;
492
+ 'at-rule-no-unknown': CoreRule<
493
+ true,
494
+ { ignoreAtRules: OneOrMany<StringOrRegex> },
495
+ RejectedMessage<[atRule: string]>
496
+ >;
497
+ 'at-rule-no-vendor-prefix': CoreRule<
498
+ true,
499
+ { ignoreAtRules: OneOrMany<StringOrRegex> },
500
+ RejectedMessage<[property: string]>
501
+ >;
502
+ 'at-rule-prelude-no-invalid': CoreRule<
503
+ true,
504
+ { ignoreAtRules: OneOrMany<StringOrRegex> },
505
+ RejectedMessage<[atRule: string, prelude: string]>
506
+ >;
507
+ 'at-rule-property-required-list': CoreRule<
508
+ Record<string, OneOrMany<string>>,
509
+ {},
510
+ ExpectedMessage<[atRule: string, property: string] | [atRule: string, descriptor: string]>
511
+ >;
512
+ 'block-no-empty': CoreRule<true, { ignore: OneOrMany<'comments'> }>;
513
+ 'block-no-redundant-nested-style-rules': CoreRule<true>;
514
+ 'color-function-alias-notation': CoreRule<'with-alpha' | 'without-alpha', {}, AutofixMessage>;
515
+ 'color-function-notation': CoreRule<
516
+ 'modern' | 'legacy',
517
+ { ignore: OneOrMany<'with-var-inside'> }
518
+ >;
519
+ 'color-hex-alpha': CoreRule<
520
+ 'always' | 'never',
521
+ {},
522
+ ExpectedMessage<[hex: string]> & RejectedMessage<[hex: string]>
523
+ >;
524
+ 'color-hex-length': CoreRule<'short' | 'long', {}, AutofixMessage>;
525
+ 'color-named': CoreRule<
526
+ 'never' | 'always-where-possible',
527
+ { ignoreProperties: OneOrMany<StringOrRegex>; ignore: OneOrMany<'inside-function'> },
528
+ AutofixMessage & RejectedMessage<[keyword: string]>
529
+ >;
530
+ 'color-no-hex': CoreRule<true, {}, RejectedMessage<[hex: string]>>;
531
+ 'color-no-invalid-hex': CoreRule<true, {}, RejectedMessage<[hex: string]>>;
532
+ 'comment-empty-line-before': CoreRule<
533
+ 'always' | 'never',
534
+ {
535
+ except: OneOrMany<'first-nested'>;
536
+ ignore: OneOrMany<'stylelint-commands' | 'after-comment'>;
537
+ ignoreComments: OneOrMany<StringOrRegex>;
538
+ }
539
+ >;
540
+ 'comment-no-empty': CoreRule<true>;
541
+ 'comment-pattern': CoreRule<StringOrRegex, {}, ExpectedMessage<[pattern: StringOrRegex]>>;
542
+ 'comment-whitespace-inside': CoreRule<'always' | 'never'>;
543
+ 'comment-word-disallowed-list': CoreRule<
544
+ OneOrMany<StringOrRegex>,
545
+ {},
546
+ RejectedMessage<[pattern: StringOrRegex]>
547
+ >;
548
+ 'container-name-pattern': PatternRule;
549
+ 'custom-media-pattern': PatternRule;
550
+ 'custom-property-empty-line-before': CoreRule<
551
+ 'always' | 'never',
552
+ {
553
+ except: OneOrMany<
554
+ 'after-block' | 'after-comment' | 'after-custom-property' | 'first-nested'
555
+ >;
556
+ ignore: OneOrMany<
557
+ 'after-comment' | 'after-custom-property' | 'first-nested' | 'inside-single-line-block'
558
+ >;
559
+ }
560
+ >;
561
+ 'custom-property-no-missing-var-function': CoreRule<
562
+ true,
563
+ {},
564
+ RejectedMessage<[property: string]>
565
+ >;
566
+ 'custom-property-pattern': PatternRule;
567
+ 'display-notation': CoreRule<
568
+ 'short' | 'full',
569
+ {},
570
+ ExpectedMessage<[unexpected: string, expected: string]>
571
+ >;
572
+ 'declaration-block-no-duplicate-custom-properties': CoreRule<
573
+ true,
574
+ { ignoreProperties: OneOrMany<StringOrRegex> },
575
+ RejectedMessage<[property: string]>
576
+ >;
577
+ 'declaration-block-no-duplicate-properties': CoreRule<
578
+ true,
579
+ {
580
+ ignore: OneOrMany<
581
+ | 'consecutive-duplicates'
582
+ | 'consecutive-duplicates-with-different-values'
583
+ | 'consecutive-duplicates-with-different-syntaxes'
584
+ | 'consecutive-duplicates-with-same-prefixless-values'
585
+ >;
586
+ ignoreProperties: OneOrMany<StringOrRegex>;
587
+ },
588
+ RejectedMessage<[property: string]>
589
+ >;
590
+ 'rule-nesting-at-rule-required-list': CoreRule<
591
+ OneOrMany<StringOrRegex>,
592
+ {},
593
+ ExpectedMessage<[patterns: StringOrRegex[]]>
594
+ >;
595
+ 'declaration-block-no-redundant-longhand-properties': CoreRule<
596
+ true,
597
+ {
598
+ ignoreShorthands: OneOrMany<StringOrRegex>;
599
+ ignoreLonghands: OneOrMany<string>;
600
+ },
601
+ ExpectedMessage<[property: string]>
602
+ >;
603
+ 'declaration-block-no-shorthand-property-overrides': CoreRule<
604
+ true,
605
+ {},
606
+ RejectedMessage<[shorthand: string, property: string]>
607
+ >;
608
+ 'declaration-block-single-line-max-declarations': CoreRule<
609
+ number,
610
+ {},
611
+ ExpectedMessage<[maximum: number]>
612
+ >;
613
+ 'declaration-empty-line-before': CoreRule<
614
+ 'always' | 'never',
615
+ {
616
+ except: OneOrMany<'first-nested' | 'after-block' | 'after-comment' | 'after-declaration'>;
617
+ ignore: OneOrMany<
618
+ 'after-comment' | 'after-declaration' | 'first-nested' | 'inside-single-line-block'
619
+ >;
620
+ }
621
+ >;
622
+ 'declaration-no-important': CoreRule<true>;
623
+ 'declaration-property-max-values': CoreRule<
624
+ Record<string, number>,
625
+ {},
626
+ ExpectedMessage<[property: string, maximum: number]>
627
+ >;
628
+ 'declaration-property-unit-allowed-list': CoreRule<
629
+ Record<string, OneOrMany<string>>,
630
+ { ignore: OneOrMany<'inside-function'> },
631
+ RejectedMessage<[property: string, unit: string]>
632
+ >;
633
+ 'declaration-property-unit-disallowed-list': CoreRule<
634
+ Record<string, OneOrMany<string>>,
635
+ {},
636
+ RejectedMessage<[property: string, unit: string]>
637
+ >;
638
+ 'declaration-property-value-allowed-list': CoreRule<
639
+ Record<string, OneOrMany<StringOrRegex>>,
640
+ {},
641
+ RejectedMessage<[property: string, value: string]>
642
+ >;
643
+ 'declaration-property-value-disallowed-list': CoreRule<
644
+ Record<string, OneOrMany<StringOrRegex>>,
645
+ {},
646
+ RejectedMessage<[property: string, value: string]>
647
+ >;
648
+ 'declaration-property-value-keyword-no-deprecated': CoreRule<
649
+ true,
650
+ { ignoreKeywords: OneOrMany<StringOrRegex> },
651
+ AutofixMessage & { rejected: (property: string, keyword: string) => string }
652
+ >;
653
+ 'declaration-property-value-no-unknown': CoreRule<
654
+ true,
655
+ {
656
+ ignoreProperties: Record<string, OneOrMany<StringOrRegex>>;
657
+ propertiesSyntax: Record<string, string>;
658
+ typesSyntax: Record<string, string>;
659
+ },
660
+ RejectedMessage<[property: string, value: string]> & {
661
+ rejectedParseError: (property: string, value: string) => string;
662
+ rejectedMath: (property: string, expression: string) => string;
663
+ }
664
+ >;
665
+ 'font-family-name-quotes': CoreRule<
666
+ 'always-where-required' | 'always-where-recommended' | 'always-unless-keyword',
667
+ {},
668
+ ExpectedMessage<[name: string]> & RejectedMessage<[name: string]>
669
+ >;
670
+ 'font-family-no-duplicate-names': CoreRule<
671
+ true,
672
+ { ignoreFontFamilyNames: OneOrMany<StringOrRegex> },
673
+ RejectedMessage<[name: string]>
674
+ >;
675
+ 'font-family-no-missing-generic-family-keyword': CoreRule<
676
+ true,
677
+ { ignoreFontFamilies: OneOrMany<StringOrRegex> }
678
+ >;
679
+ 'font-weight-notation': CoreRule<
680
+ 'numeric' | 'named-where-possible',
681
+ { ignore: OneOrMany<'relative'> }
682
+ >;
683
+ 'function-allowed-list': CoreRule<
684
+ OneOrMany<StringOrRegex>,
685
+ { exceptWithoutPropertyFallback: OneOrMany<StringOrRegex> },
686
+ RejectedMessage<[name: string]>
687
+ >;
688
+ 'function-calc-no-unspaced-operator': CoreRule<
689
+ true,
690
+ {},
691
+ {
692
+ expectedAfter: (operator: string) => string;
693
+ expectedBefore: (operator: string) => string;
694
+ }
695
+ >;
696
+ 'function-disallowed-list': CoreRule<
697
+ OneOrMany<StringOrRegex>,
698
+ {},
699
+ RejectedMessage<[name: string]>
700
+ >;
701
+ 'function-linear-gradient-no-nonstandard-direction': CoreRule<true>;
702
+ 'function-name-case': CoreRule<
703
+ 'lower' | 'upper',
704
+ { ignoreFunctions: OneOrMany<StringOrRegex> },
705
+ AutofixMessage
706
+ >;
707
+ 'function-no-unknown': CoreRule<
708
+ true,
709
+ { ignoreFunctions: OneOrMany<StringOrRegex> },
710
+ RejectedMessage<[name: string]>
711
+ >;
712
+ 'function-url-no-scheme-relative': CoreRule<true>;
713
+ 'function-url-quotes': CoreRule<'always' | 'never', { except: OneOrMany<'empty'> }>;
714
+ 'function-url-scheme-allowed-list': CoreRule<
715
+ OneOrMany<StringOrRegex>,
716
+ {},
717
+ RejectedMessage<[scheme: string]>
718
+ >;
719
+ 'function-url-scheme-disallowed-list': CoreRule<
720
+ OneOrMany<StringOrRegex>,
721
+ {},
722
+ RejectedMessage<[scheme: string]>
723
+ >;
724
+ 'hue-degree-notation': CoreRule<'angle' | 'number', {}, AutofixMessage>;
725
+ 'import-notation': CoreRule<'string' | 'url', {}, AutofixMessage>;
726
+ 'keyframe-block-no-duplicate-selectors': CoreRule<
727
+ true,
728
+ {},
729
+ RejectedMessage<[selector: string]>
730
+ >;
731
+ 'keyframe-declaration-no-important': CoreRule<true>;
732
+ 'keyframe-selector-notation': CoreRule<
733
+ 'keyword' | 'percentage' | 'percentage-unless-within-keyword-only-block',
734
+ {},
735
+ AutofixMessage
736
+ >;
737
+ 'keyframes-name-pattern': PatternRule;
738
+ 'layer-name-pattern': PatternRule;
739
+ 'length-zero-no-unit': CoreRule<
740
+ true,
741
+ {
742
+ ignore: OneOrMany<'custom-properties'>;
743
+ ignoreFunctions: OneOrMany<StringOrRegex>;
744
+ ignorePreludeOfAtRules: OneOrMany<StringOrRegex>;
745
+ }
746
+ >;
747
+ 'lightness-notation': CoreRule<'percentage' | 'number', {}, AutofixMessage>;
748
+ 'max-nesting-depth': CoreRule<
749
+ number,
750
+ {
751
+ ignore: OneOrMany<'blockless-at-rules' | 'pseudo-classes'>;
752
+ ignoreAtRules: OneOrMany<StringOrRegex>;
753
+ ignoreRules: OneOrMany<StringOrRegex>;
754
+ ignorePseudoClasses: OneOrMany<StringOrRegex>;
755
+ },
756
+ ExpectedMessage<[depth: number]>
757
+ >;
758
+ 'media-feature-name-allowed-list': CoreRule<
759
+ OneOrMany<StringOrRegex>,
760
+ {},
761
+ RejectedMessage<[name: string]>
762
+ >;
763
+ 'media-feature-name-disallowed-list': CoreRule<
764
+ OneOrMany<StringOrRegex>,
765
+ {},
766
+ RejectedMessage<[name: string]>
767
+ >;
768
+ 'media-feature-name-no-unknown': CoreRule<
769
+ true,
770
+ { ignoreMediaFeatureNames: OneOrMany<StringOrRegex> },
771
+ RejectedMessage<[name: string]>
772
+ >;
773
+ 'media-feature-name-no-vendor-prefix': CoreRule<
774
+ true,
775
+ { ignoreMediaFeatureNames: OneOrMany<StringOrRegex> }
776
+ >;
777
+ 'media-feature-name-unit-allowed-list': CoreRule<
778
+ Record<string, OneOrMany<string>>,
779
+ {},
780
+ RejectedMessage<[unit: string, name: string]>
781
+ >;
782
+ 'media-feature-name-value-allowed-list': CoreRule<
783
+ Record<string, OneOrMany<StringOrRegex>>,
784
+ {},
785
+ RejectedMessage<[name: string, value: string]>
786
+ >;
787
+ 'media-feature-name-value-no-unknown': CoreRule<
788
+ true,
789
+ {},
790
+ RejectedMessage<[name: string, value: string]>
791
+ >;
792
+ 'media-feature-range-notation': NotationRule<
793
+ 'prefix' | 'context',
794
+ { except: OneOrMany<'exact-value'> }
795
+ >;
796
+ 'media-query-no-invalid': CoreRule<
797
+ true,
798
+ { ignoreFunctions: OneOrMany<StringOrRegex> },
799
+ RejectedMessage<[query: string, reason: string]>
800
+ >;
801
+ 'media-type-no-deprecated': CoreRule<
802
+ true,
803
+ { ignoreMediaTypes: OneOrMany<StringOrRegex> },
804
+ RejectedMessage<[name: string]>
805
+ >;
806
+ 'named-grid-areas-no-invalid': CoreRule<true>;
807
+ 'nesting-selector-no-missing-scoping-root': CoreRule<
808
+ true,
809
+ { ignoreAtRules: OneOrMany<StringOrRegex> }
810
+ >;
811
+ 'no-descending-specificity': CoreRule<
812
+ true,
813
+ { ignore: OneOrMany<'selectors-within-list'> },
814
+ ExpectedMessage<
815
+ [selector: string, selector: string, line: number, selector: string, selector: string]
816
+ >
817
+ >;
818
+ 'no-duplicate-at-import-rules': CoreRule<true, {}, RejectedMessage<[url: string]>>;
819
+ 'no-duplicate-selectors': CoreRule<
820
+ true,
821
+ {
822
+ disallowInList: boolean;
823
+ ignoreSelectors: OneOrMany<StringOrRegex>;
824
+ },
825
+ RejectedMessage<[selector: string, line: number]>
826
+ >;
827
+ 'no-empty-source': CoreRule<true>;
828
+ 'no-invalid-double-slash-comments': CoreRule<true>;
829
+ 'no-invalid-position-at-import-rule': CoreRule<
830
+ true,
831
+ { ignoreAtRules: OneOrMany<StringOrRegex> }
832
+ >;
833
+ 'no-invalid-position-declaration': CoreRule<true, { ignoreAtRules: OneOrMany<StringOrRegex> }>;
834
+ 'no-irregular-whitespace': CoreRule<true>;
835
+ 'no-unknown-animations': CoreRule<true, {}, RejectedMessage<[name: string]>>;
836
+ 'no-unknown-custom-media': CoreRule<true, {}, RejectedMessage<[name: string]>>;
837
+ 'no-unknown-custom-properties': CoreRule<true, {}, RejectedMessage<[property: string]>>;
838
+ 'number-max-precision': CoreRule<
839
+ number,
840
+ {
841
+ ignoreProperties: OneOrMany<StringOrRegex>;
842
+ ignoreUnits: OneOrMany<StringOrRegex>;
843
+ insideFunctions: Record<string, number>;
844
+ },
845
+ AutofixMessage
846
+ >;
847
+ 'property-allowed-list': CoreRule<
848
+ OneOrMany<StringOrRegex>,
849
+ {},
850
+ RejectedMessage<[property: string]>
851
+ >;
852
+ 'property-disallowed-list': CoreRule<
853
+ OneOrMany<StringOrRegex>,
854
+ {},
855
+ RejectedMessage<[property: string]>
856
+ >;
857
+ 'property-no-deprecated': CoreRule<
858
+ true,
859
+ {
860
+ ignoreProperties: OneOrMany<StringOrRegex>;
861
+ },
862
+ AutofixMessage & RejectedMessage<[property: string]>
863
+ >;
864
+ 'property-no-unknown': CoreRule<
865
+ true,
866
+ {
867
+ checkPrefixed: boolean;
868
+ ignoreAtRules: OneOrMany<StringOrRegex>;
869
+ ignoreProperties: OneOrMany<StringOrRegex>;
870
+ ignoreSelectors: OneOrMany<StringOrRegex>;
871
+ },
872
+ RejectedMessage<[property: string]>
873
+ >;
874
+ 'property-no-vendor-prefix': CoreRule<
875
+ true,
876
+ { ignoreProperties: OneOrMany<StringOrRegex> },
877
+ RejectedMessage<[property: string]>
878
+ >;
879
+ 'rule-empty-line-before': CoreRule<
880
+ 'always' | 'never' | 'always-multi-line' | 'never-multi-line',
881
+ {
882
+ ignore: OneOrMany<'after-comment' | 'first-nested' | 'inside-block'>;
883
+ except: OneOrMany<
884
+ | 'after-rule'
885
+ | 'after-single-line-comment'
886
+ | 'first-nested'
887
+ | 'inside-block-and-after-rule'
888
+ | 'inside-block'
889
+ >;
890
+ }
891
+ >;
892
+ 'rule-selector-property-disallowed-list': CoreRule<
893
+ Record<string, OneOrMany<StringOrRegex>>,
894
+ {
895
+ ignore: OneOrMany<'keyframe-selectors'>;
896
+ },
897
+ RejectedMessage<[selector: string, property: string]>
898
+ >;
899
+ 'selector-anb-no-unmatchable': CoreRule<true, {}, RejectedMessage<[selector: string]>>;
900
+ 'selector-attribute-name-disallowed-list': CoreRule<
901
+ OneOrMany<StringOrRegex>,
902
+ {},
903
+ RejectedMessage<[name: string]>
904
+ >;
905
+ 'selector-attribute-operator-allowed-list': CoreRule<
906
+ OneOrMany<string>,
907
+ {},
908
+ RejectedMessage<[operator: string]>
909
+ >;
910
+ 'selector-attribute-operator-disallowed-list': CoreRule<
911
+ OneOrMany<string>,
912
+ {},
913
+ RejectedMessage<[operator: string]>
914
+ >;
915
+ 'selector-attribute-quotes': CoreRule<
916
+ 'always' | 'never',
917
+ {},
918
+ ExpectedMessage<[value: string]> & RejectedMessage<[value: string]>
919
+ >;
920
+ 'selector-class-pattern': PatternRule<{ resolveNestedSelectors: boolean }>;
921
+ 'selector-combinator-allowed-list': CoreRule<
922
+ OneOrMany<string>,
923
+ {},
924
+ RejectedMessage<[combinator: string]>
925
+ >;
926
+ 'selector-combinator-disallowed-list': CoreRule<
927
+ OneOrMany<string>,
928
+ {},
929
+ RejectedMessage<[combinator: string]>
930
+ >;
931
+ 'selector-disallowed-list': CoreRule<
932
+ OneOrMany<StringOrRegex>,
933
+ { splitList: boolean; ignore: OneOrMany<'inside-block' | 'keyframe-selectors'> },
934
+ RejectedMessage<[selector: string]>
935
+ >;
936
+ 'selector-id-pattern': PatternRule;
937
+ 'selector-max-attribute': MaxRule<{ ignoreAttributes: OneOrMany<StringOrRegex> }>;
938
+ 'selector-max-class': MaxRule;
939
+ 'selector-max-combinators': MaxRule;
940
+ 'selector-max-compound-selectors': MaxRule<{ ignoreSelectors: OneOrMany<StringOrRegex> }>;
941
+ 'selector-max-id': MaxRule<{
942
+ ignoreContextFunctionalPseudoClasses: OneOrMany<StringOrRegex>;
943
+ }>;
944
+ 'selector-max-pseudo-class': MaxRule;
945
+ 'selector-max-specificity': CoreRule<
946
+ string,
947
+ { ignoreSelectors: OneOrMany<StringOrRegex> },
948
+ ExpectedMessage<[selector: string, specificity: string, selector: string]>
949
+ >;
950
+ 'selector-max-type': MaxRule<{
951
+ ignore: OneOrMany<'descendant' | 'child' | 'compounded' | 'next-sibling' | 'custom-elements'>;
952
+ ignoreTypes: OneOrMany<StringOrRegex>;
953
+ }>;
954
+ 'selector-max-universal': MaxRule<{ ignoreAfterCombinators: OneOrMany<string> }>;
955
+ 'selector-nested-pattern': PatternRule<{ splitList: boolean }>;
956
+ 'selector-no-qualifying-type': CoreRule<
957
+ true,
958
+ { ignore: OneOrMany<'attribute' | 'class' | 'id'> },
959
+ RejectedMessage<[selector: string, type: string]>
960
+ >;
961
+ 'selector-no-vendor-prefix': CoreRule<
962
+ true,
963
+ { ignoreSelectors: OneOrMany<StringOrRegex> },
964
+ RejectedMessage<[selector: string]>
965
+ >;
966
+ 'selector-not-notation': NotationRule<'simple' | 'complex'>;
967
+ 'selector-pseudo-class-allowed-list': CoreRule<
968
+ OneOrMany<StringOrRegex>,
969
+ {},
970
+ RejectedMessage<[selector: string]>
971
+ >;
972
+ 'selector-pseudo-class-disallowed-list': CoreRule<
973
+ OneOrMany<StringOrRegex>,
974
+ {},
975
+ RejectedMessage<[selector: string]>
976
+ >;
977
+ 'selector-pseudo-class-no-unknown': CoreRule<
978
+ true,
979
+ { ignorePseudoClasses: OneOrMany<StringOrRegex> },
980
+ RejectedMessage<[selector: string]>
981
+ >;
982
+ 'selector-pseudo-element-allowed-list': CoreRule<
983
+ OneOrMany<StringOrRegex>,
984
+ {},
985
+ RejectedMessage<[selector: string]>
986
+ >;
987
+ 'selector-pseudo-element-colon-notation': NotationRule<'single' | 'double'>;
988
+ 'selector-pseudo-element-disallowed-list': CoreRule<
989
+ OneOrMany<StringOrRegex>,
990
+ {},
991
+ RejectedMessage<[selector: string]>
992
+ >;
993
+ 'selector-pseudo-element-no-unknown': CoreRule<
994
+ true,
995
+ { ignorePseudoElements: OneOrMany<StringOrRegex> },
996
+ RejectedMessage<[selector: string]>
997
+ >;
998
+ 'selector-type-case': CoreRule<
999
+ 'lower' | 'upper',
1000
+ { ignoreTypes: OneOrMany<StringOrRegex> },
1001
+ AutofixMessage
1002
+ >;
1003
+ 'selector-type-no-unknown': CoreRule<
1004
+ true,
1005
+ {
1006
+ ignore: OneOrMany<'custom-elements' | 'default-namespace'>;
1007
+ ignoreNamespaces: OneOrMany<StringOrRegex>;
1008
+ ignoreTypes: OneOrMany<StringOrRegex>;
1009
+ },
1010
+ RejectedMessage<[selector: string]>
1011
+ >;
1012
+ 'shorthand-property-no-redundant-values': CoreRule<
1013
+ true,
1014
+ {
1015
+ ignore: OneOrMany<'four-into-three-edge-values'>;
1016
+ },
1017
+ AutofixMessage
1018
+ >;
1019
+ 'string-no-newline': CoreRule<
1020
+ true,
1021
+ { ignore: OneOrMany<'at-rule-preludes' | 'declaration-values'> }
1022
+ >;
1023
+ 'syntax-string-no-invalid': CoreRule<true, {}, RejectedMessage<[component: string]>>;
1024
+ 'time-min-milliseconds': CoreRule<
1025
+ number,
1026
+ { ignore: OneOrMany<'delay'> },
1027
+ ExpectedMessage<[ms: number]>
1028
+ >;
1029
+ 'unit-allowed-list': CoreRule<
1030
+ OneOrMany<string>,
1031
+ {
1032
+ ignoreFunctions: OneOrMany<StringOrRegex>;
1033
+ ignoreProperties: Record<string, OneOrMany<StringOrRegex>>;
1034
+ },
1035
+ RejectedMessage<[unit: string]>
1036
+ >;
1037
+ 'unit-disallowed-list': CoreRule<
1038
+ OneOrMany<string>,
1039
+ {
1040
+ ignoreFunctions: OneOrMany<StringOrRegex>;
1041
+ ignoreProperties: Record<string, OneOrMany<StringOrRegex>>;
1042
+ ignoreMediaFeatureNames: Record<string, OneOrMany<StringOrRegex>>;
1043
+ },
1044
+ RejectedMessage<[unit: string]>
1045
+ >;
1046
+ 'unit-no-unknown': CoreRule<
1047
+ true,
1048
+ {
1049
+ ignoreUnits: OneOrMany<StringOrRegex>;
1050
+ ignoreFunctions: OneOrMany<StringOrRegex>;
1051
+ },
1052
+ RejectedMessage<[unit: string]>
1053
+ >;
1054
+ 'value-keyword-case': CoreRule<
1055
+ 'lower' | 'upper',
1056
+ {
1057
+ ignoreProperties: OneOrMany<StringOrRegex>;
1058
+ ignoreKeywords: OneOrMany<StringOrRegex>;
1059
+ ignoreFunctions: OneOrMany<StringOrRegex>;
1060
+ camelCaseSvgKeywords: boolean;
1061
+ },
1062
+ AutofixMessage
1063
+ >;
1064
+ 'value-no-vendor-prefix': CoreRule<
1065
+ true,
1066
+ { ignoreValues: OneOrMany<StringOrRegex> },
1067
+ RejectedMessage<[value: string]>
1068
+ >;
1069
+ };
1070
+
1071
+ /** @internal */
1072
+ export type GetPostcssOptions = {
1073
+ code?: string;
1074
+ codeFilename?: string;
1075
+ filePath?: string;
1076
+ customSyntax?: CustomSyntax;
1077
+ };
1078
+
1079
+ /** @internal */
1080
+ export type GetLintSourceOptions = GetPostcssOptions & {
1081
+ existingPostcssResult?: PostCSS.Result;
1082
+ cache?: boolean;
1083
+ };
1084
+
1085
+ /**
1086
+ * Linter options.
1087
+ */
1088
+ export type LinterOptions = {
1089
+ files?: OneOrMany<string>;
1090
+ globbyOptions?: GlobbyOptions;
1091
+ cache?: boolean;
1092
+ cacheLocation?: string;
1093
+ cacheStrategy?: string;
1094
+ code?: string;
1095
+ codeFilename?: string;
1096
+ config?: Config;
1097
+ configFile?: string;
1098
+ configBasedir?: string;
1099
+ /**
1100
+ * The working directory to resolve files from. Defaults to the
1101
+ * current working directory.
1102
+ */
1103
+ cwd?: string;
1104
+ ignoreDisables?: boolean;
1105
+ ignorePath?: OneOrMany<string>;
1106
+ ignorePattern?: string[];
1107
+ reportDescriptionlessDisables?: boolean;
1108
+ reportNeedlessDisables?: boolean;
1109
+ reportInvalidScopeDisables?: boolean;
1110
+ reportUnscopedDisables?: boolean;
1111
+ maxWarnings?: number;
1112
+ customSyntax?: CustomSyntax;
1113
+ /** @internal */
1114
+ _defaultFormatter?: FormatterType;
1115
+ formatter?: FormatterType | Formatter;
1116
+ disableDefaultIgnores?: boolean;
1117
+ fix?: boolean | FixMode;
1118
+ computeEditInfo?: boolean;
1119
+ allowEmptyInput?: boolean;
1120
+ quiet?: boolean;
1121
+ quietDeprecationWarnings?: boolean;
1122
+ validate?: boolean;
1123
+ /** @experimental */
1124
+ suppressAll?: boolean;
1125
+ /** @experimental */
1126
+ suppressLocation?: string;
1127
+ /** @experimental */
1128
+ suppressRule?: string[];
1129
+ };
1130
+
1131
+ /** @internal */
1132
+ export type FixMode = 'lax' | 'strict';
1133
+
1134
+ /**
1135
+ * @internal
1136
+ *
1137
+ * file path -> rule name -> { count: number }
1138
+ */
1139
+ export type SuppressedProblems = Map<string, Map<string, { count: number }>>;
1140
+
1141
+ /**
1142
+ * A CSS syntax error.
1143
+ */
1144
+ export type CssSyntaxError = {
1145
+ file?: string;
1146
+ input: {
1147
+ column: number;
1148
+ file?: string;
1149
+ line: number;
1150
+ source: string;
1151
+ };
1152
+ /**
1153
+ * The line of the inclusive start position of the error.
1154
+ */
1155
+ line: number;
1156
+ /**
1157
+ * The column of the inclusive start position of the error.
1158
+ */
1159
+ column: number;
1160
+ /**
1161
+ * The line of the exclusive end position of the error.
1162
+ */
1163
+ endLine?: number;
1164
+ /**
1165
+ * The column of the exclusive end position of the error.
1166
+ */
1167
+ endColumn?: number;
1168
+ message: string;
1169
+ name: string;
1170
+ reason: string;
1171
+ source: string;
1172
+ };
1173
+
1174
+ export type EditInfo = {
1175
+ /**
1176
+ * The pair of 0-based indices in source code text to remove.
1177
+ */
1178
+ range: [number, number];
1179
+ /**
1180
+ * The text to add.
1181
+ */
1182
+ text: string;
1183
+ };
1184
+
1185
+ /**
1186
+ * A lint warning.
1187
+ */
1188
+ export type Warning = {
1189
+ /**
1190
+ * The line of the inclusive start position of the warning.
1191
+ */
1192
+ line: number;
1193
+ /**
1194
+ * The column of the inclusive start position of the warning.
1195
+ */
1196
+ column: number;
1197
+ /**
1198
+ * The line of the exclusive end position of the warning.
1199
+ */
1200
+ endLine?: number;
1201
+ /**
1202
+ * The column of the exclusive end position of the warning.
1203
+ */
1204
+ endColumn?: number;
1205
+ /**
1206
+ * The `EditInfo` object of autofix. This property is undefined if this message is not fixable.
1207
+ */
1208
+ fix?: EditInfo;
1209
+ rule: string;
1210
+ severity: Severity;
1211
+ text: string;
1212
+ url?: string;
1213
+ stylelintType?: StylelintWarningType;
1214
+ };
1215
+
1216
+ /**
1217
+ * A lint result.
1218
+ */
1219
+ export type LintResult = {
1220
+ source?: string;
1221
+ deprecations: {
1222
+ text: string;
1223
+ reference?: string;
1224
+ }[];
1225
+ invalidOptionWarnings: {
1226
+ text: string;
1227
+ }[];
1228
+ parseErrors: (PostCSS.Warning & {
1229
+ stylelintType: Extract<StylelintWarningType, 'parseError'>;
1230
+ })[];
1231
+ errored?: boolean;
1232
+ warnings: Warning[];
1233
+ ignored?: boolean;
1234
+ /**
1235
+ * Internal use only. Do not use or rely on this property. It may
1236
+ * change at any time.
1237
+ * @internal
1238
+ */
1239
+ _postcssResult?: PostcssResult;
1240
+ };
1241
+
1242
+ /** @internal */
1243
+ export type DisableReportRange = {
1244
+ rule: string;
1245
+ start: number;
1246
+ end?: number;
1247
+ };
1248
+
1249
+ /**
1250
+ * A linter result.
1251
+ */
1252
+ export type LinterResult = {
1253
+ /**
1254
+ * The working directory from which the linter was run when the
1255
+ * results were generated.
1256
+ */
1257
+ cwd: string;
1258
+ results: LintResult[];
1259
+ errored: boolean;
1260
+ /**
1261
+ * A string that contains the formatted problems.
1262
+ */
1263
+ report: string;
1264
+ /**
1265
+ * A string that contains the autofixed code, if the `fix` option is set to `true`
1266
+ * and the `code` option is provided.
1267
+ */
1268
+ code?: string;
1269
+ maxWarningsExceeded?: {
1270
+ maxWarnings: number;
1271
+ foundWarnings: number;
1272
+ };
1273
+ reportedDisables: DisableOptionsReport;
1274
+ descriptionlessDisables?: DisableOptionsReport;
1275
+ needlessDisables?: DisableOptionsReport;
1276
+ invalidScopeDisables?: DisableOptionsReport;
1277
+ /**
1278
+ * Each rule metadata by name.
1279
+ */
1280
+ ruleMetadata: { [ruleName: string]: Partial<RuleMeta> };
1281
+ };
1282
+
1283
+ type Position = {
1284
+ line: number;
1285
+ column: number;
1286
+ };
1287
+
1288
+ export type ProblemLocation =
1289
+ | {
1290
+ /**
1291
+ * The inclusive start position of the problem, relative to the
1292
+ * node's source text. If provided, this will be used instead of
1293
+ * `index`.
1294
+ */
1295
+ start: Position;
1296
+ /**
1297
+ * The exclusive end position of the problem, relative to the
1298
+ * node's source text. If provided, this will be used instead of
1299
+ * `endIndex`.
1300
+ */
1301
+ end: Position;
1302
+ }
1303
+ | {
1304
+ /**
1305
+ * The inclusive start index of the problem, relative to the node's
1306
+ * source text.
1307
+ */
1308
+ index: number;
1309
+ /**
1310
+ * The exclusive end index of the problem, relative to the node's
1311
+ * source text.
1312
+ */
1313
+ endIndex: number;
1314
+ }
1315
+ | {
1316
+ word: string;
1317
+ }
1318
+ | object;
1319
+
1320
+ export type FixCallback = () => void | undefined | never;
1321
+
1322
+ export type FixObject = {
1323
+ apply?: FixCallback;
1324
+ node?: PostCSS.Node;
1325
+ };
1326
+
1327
+ /**
1328
+ * A lint problem.
1329
+ */
1330
+ export type Problem = {
1331
+ ruleName: string;
1332
+ result: PostcssResult;
1333
+ message: RuleMessage;
1334
+ messageArgs?: Parameters<RuleMessageFunc> | undefined;
1335
+ node: PostCSS.Node;
1336
+ /**
1337
+ * Optional severity override for the problem.
1338
+ */
1339
+ severity?: RuleSeverity;
1340
+ fix?: FixCallback | FixObject;
1341
+ } & ProblemLocation;
1342
+
1343
+ /** @internal */
1344
+ export type ShorthandProperties =
1345
+ | 'animation'
1346
+ | 'background'
1347
+ | 'border'
1348
+ | 'border-block'
1349
+ | 'border-block-end'
1350
+ | 'border-block-start'
1351
+ | 'border-inline'
1352
+ | 'border-inline-end'
1353
+ | 'border-inline-start'
1354
+ | 'border-bottom'
1355
+ | 'border-color'
1356
+ | 'border-image'
1357
+ | 'border-inline-end'
1358
+ | 'border-inline-start'
1359
+ | 'border-left'
1360
+ | 'border-radius'
1361
+ | 'border-right'
1362
+ | 'border-style'
1363
+ | 'border-top'
1364
+ | 'border-width'
1365
+ | 'column-rule'
1366
+ | 'columns'
1367
+ | 'flex'
1368
+ | 'flex-flow'
1369
+ | 'font'
1370
+ | 'font-synthesis'
1371
+ | 'font-variant'
1372
+ | 'gap'
1373
+ | 'grid'
1374
+ | 'grid-area'
1375
+ | 'grid-column'
1376
+ | 'grid-gap'
1377
+ | 'grid-row'
1378
+ | 'grid-template'
1379
+ | 'inset'
1380
+ | 'inset-block'
1381
+ | 'inset-inline'
1382
+ | 'list-style'
1383
+ | 'margin'
1384
+ | 'margin-block'
1385
+ | 'margin-inline'
1386
+ | 'mask'
1387
+ | 'outline'
1388
+ | 'overflow'
1389
+ | 'overscroll-behavior'
1390
+ | 'padding'
1391
+ | 'padding-block'
1392
+ | 'padding-inline'
1393
+ | 'place-content'
1394
+ | 'place-items'
1395
+ | 'place-self'
1396
+ | 'scroll-margin'
1397
+ | 'scroll-margin-block'
1398
+ | 'scroll-margin-inline'
1399
+ | 'scroll-padding'
1400
+ | 'scroll-padding-block'
1401
+ | 'scroll-padding-inline'
1402
+ | 'text-decoration'
1403
+ | 'text-emphasis'
1404
+ | 'transition';
1405
+
1406
+ /** @internal */
1407
+ export type LonghandSubPropertiesOfShorthandProperties = ReadonlyMap<
1408
+ ShorthandProperties,
1409
+ ReadonlySet<string>
1410
+ >;
1411
+
1412
+ /**
1413
+ * Utility functions.
1414
+ */
1415
+ export type Utils = {
1416
+ /**
1417
+ * Report a problem.
1418
+ *
1419
+ * This function accounts for `disabledRanges` attached to the result.
1420
+ * That is, if the reported problem is within a disabledRange,
1421
+ * it is ignored. Otherwise, it is attached to the result as a
1422
+ * postcss warning.
1423
+ *
1424
+ * It also accounts for the rule's severity.
1425
+ *
1426
+ * You *must* pass *either* a node or a line number.
1427
+ *
1428
+ * @param problem - A problem
1429
+ */
1430
+ report: (problem: Problem) => void;
1431
+
1432
+ /**
1433
+ * Given an object of problem messages, return another
1434
+ * that provides the same messages postfixed with the rule
1435
+ * that has been violated.
1436
+ *
1437
+ * @param ruleName - A rule name
1438
+ * @param messages - An object whose keys are message identifiers
1439
+ * and values are either message strings or functions that return message strings
1440
+ * @returns New message object, whose messages will be marked with the rule name
1441
+ */
1442
+ ruleMessages: <T extends RuleMessages, R extends { [K in keyof T]: T[K] }>(
1443
+ ruleName: string,
1444
+ messages: T,
1445
+ ) => R;
1446
+
1447
+ /**
1448
+ * Validate a rule's options.
1449
+ *
1450
+ * See existing rules for examples.
1451
+ *
1452
+ * @param result - PostCSS result
1453
+ * @param ruleName - A rule name
1454
+ * @param optionDescriptions - Each optionDescription can have the following properties:
1455
+ * - `actual` (required): the actual passed option value or object.
1456
+ * - `possible` (required): a schema representation of what values are
1457
+ * valid for those options. `possible` should be an object if the
1458
+ * options are an object, with corresponding keys; if the options are not an
1459
+ * object, `possible` isn't, either. All `possible` value representations
1460
+ * should be **arrays of either values or functions**. Values are === checked
1461
+ * against `actual`. Functions are fed `actual` as an argument and their
1462
+ * return value is interpreted: truthy = valid, falsy = invalid.
1463
+ * - `optional` (optional): If this is `true`, `actual` can be undefined.
1464
+ * @returns Whether or not the options are valid (`true` = valid)
1465
+ */
1466
+ validateOptions: (
1467
+ result: PostcssResult,
1468
+ ruleName: string,
1469
+ ...optionDescriptions: RuleOptions[]
1470
+ ) => boolean;
1471
+
1472
+ /**
1473
+ * Useful for third-party code (e.g. plugins) to run a PostCSS Root
1474
+ * against a specific rule and do something with the warnings.
1475
+ */
1476
+ checkAgainstRule: <T, O extends Object>(
1477
+ options: {
1478
+ ruleName: string;
1479
+ ruleSettings: ConfigRuleSettings<T, O>;
1480
+ root: PostCSS.Root;
1481
+ result?: PostcssResult;
1482
+ context?: RuleContext;
1483
+ },
1484
+ callback: (warning: PostCSS.Warning) => void,
1485
+ ) => Promise<void>;
1486
+ };
1487
+
1488
+ /**
1489
+ * Internal use only. Do not use or rely on this type. It may change at
1490
+ * any time.
1491
+ * @internal
1492
+ */
1493
+ export type InternalApi = {
1494
+ _options: LinterOptions & { cwd: string };
1495
+ _extendExplorer: ReturnType<typeof cosmiconfig>;
1496
+ _configExplorer: ReturnType<typeof cosmiconfig>;
1497
+ _specifiedConfigCache: Map<Config, Map<string, CosmiconfigResult>>;
1498
+ _augmentedConfigCache: Map<string, CosmiconfigResult>;
1499
+ _postcssResultCache: Map<string, PostCSS.Result>;
1500
+ _compiledOverridesCache: Map<string, CompiledOverride[]>;
1501
+ _fileCache: FileCache;
1502
+ };
1503
+
1504
+ /**
1505
+ * Pre-compiled override matcher for efficient reuse.
1506
+ * @internal
1507
+ */
1508
+ export type CompiledOverride = {
1509
+ configOverrides: Omit<ConfigOverride, 'files'>;
1510
+ matches: (filePath: string) => boolean;
1511
+ };
1512
+
1513
+ /** @internal */
1514
+ export type DisableOptionsReport = DisableReportEntry[];
1515
+
1516
+ /** @internal */
1517
+ export type PostcssPluginOptions = Omit<LinterOptions, 'customSyntax'> | Config;
1518
+
1519
+ /**
1520
+ * The Stylelint public API.
1521
+ */
1522
+ export type PublicApi = PostCSS.PluginCreator<PostcssPluginOptions> & {
1523
+ /**
1524
+ * Runs Stylelint with the given options and returns a Promise that
1525
+ * resolves to the results.
1526
+ *
1527
+ * @param options - A lint options object
1528
+ * @returns A lint result
1529
+ */
1530
+ lint: (options: LinterOptions) => Promise<LinterResult>;
1531
+
1532
+ /**
1533
+ * Available rules.
1534
+ */
1535
+ rules: { readonly [name in keyof CoreRules]: Promise<CoreRules[name]> };
1536
+
1537
+ /**
1538
+ * Result report formatters by name.
1539
+ */
1540
+ formatters: Formatters;
1541
+
1542
+ /**
1543
+ * Creates a Stylelint plugin.
1544
+ */
1545
+ createPlugin: (ruleName: string, rule: Rule) => Plugin;
1546
+
1547
+ /**
1548
+ * The Stylelint "internal API" is passed among functions
1549
+ * so that methods on a Stylelint instance can invoke
1550
+ * each other while sharing options and caches.
1551
+ *
1552
+ * @internal
1553
+ */
1554
+ _createLinter: (options: LinterOptions) => InternalApi;
1555
+
1556
+ /**
1557
+ * Resolves the effective configuration for a given file. Resolves to
1558
+ * `undefined` if no config is found.
1559
+ *
1560
+ * @param filePath - The path to the file to get the config for.
1561
+ * @param options - The options to use when creating the Stylelint instance.
1562
+ * @returns A resolved config or `undefined`.
1563
+ */
1564
+ resolveConfig: (
1565
+ filePath: string,
1566
+ options?: Pick<LinterOptions, 'cwd' | 'config' | 'configBasedir' | 'configFile'>,
1567
+ ) => Promise<Config | undefined>;
1568
+
1569
+ /**
1570
+ * Utility functions.
1571
+ */
1572
+ utils: Utils;
1573
+
1574
+ /**
1575
+ * Reference objects.
1576
+ */
1577
+ reference: {
1578
+ longhandSubPropertiesOfShorthandProperties: LonghandSubPropertiesOfShorthandProperties;
1579
+ };
1580
+ };
1581
+ }
1582
+
1583
+ declare const stylelint: stylelint.PublicApi & {
1584
+ /**
1585
+ * For CommonJS default import compatibility.
1586
+ */
1587
+ default: stylelint.PublicApi;
1588
+ };
1589
+
1590
+ export = stylelint;