eslint-config-typed 1.0.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 (490) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +6 -0
  3. package/dist/configs/cypress.d.mts +3 -0
  4. package/dist/configs/cypress.d.mts.map +1 -0
  5. package/dist/configs/cypress.mjs +28 -0
  6. package/dist/configs/cypress.mjs.map +1 -0
  7. package/dist/configs/index.d.mts +12 -0
  8. package/dist/configs/index.d.mts.map +1 -0
  9. package/dist/configs/index.mjs +12 -0
  10. package/dist/configs/index.mjs.map +1 -0
  11. package/dist/configs/jest.d.mts +3 -0
  12. package/dist/configs/jest.d.mts.map +1 -0
  13. package/dist/configs/jest.mjs +24 -0
  14. package/dist/configs/jest.mjs.map +1 -0
  15. package/dist/configs/playwright.d.mts +3 -0
  16. package/dist/configs/playwright.d.mts.map +1 -0
  17. package/dist/configs/playwright.mjs +29 -0
  18. package/dist/configs/playwright.mjs.map +1 -0
  19. package/dist/configs/plugins.d.mts +3 -0
  20. package/dist/configs/plugins.d.mts.map +1 -0
  21. package/dist/configs/plugins.mjs +81 -0
  22. package/dist/configs/plugins.mjs.map +1 -0
  23. package/dist/configs/preact.d.mts +3 -0
  24. package/dist/configs/preact.d.mts.map +1 -0
  25. package/dist/configs/preact.mjs +17 -0
  26. package/dist/configs/preact.mjs.map +1 -0
  27. package/dist/configs/react-base.d.mts +3 -0
  28. package/dist/configs/react-base.d.mts.map +1 -0
  29. package/dist/configs/react-base.mjs +38 -0
  30. package/dist/configs/react-base.mjs.map +1 -0
  31. package/dist/configs/react.d.mts +3 -0
  32. package/dist/configs/react.d.mts.map +1 -0
  33. package/dist/configs/react.mjs +16 -0
  34. package/dist/configs/react.mjs.map +1 -0
  35. package/dist/configs/testing-library.d.mts +3 -0
  36. package/dist/configs/testing-library.d.mts.map +1 -0
  37. package/dist/configs/testing-library.mjs +22 -0
  38. package/dist/configs/testing-library.mjs.map +1 -0
  39. package/dist/configs/typescript-without-rules.d.mts +6 -0
  40. package/dist/configs/typescript-without-rules.d.mts.map +1 -0
  41. package/dist/configs/typescript-without-rules.mjs +89 -0
  42. package/dist/configs/typescript-without-rules.mjs.map +1 -0
  43. package/dist/configs/typescript.d.mts +8 -0
  44. package/dist/configs/typescript.d.mts.map +1 -0
  45. package/dist/configs/typescript.mjs +80 -0
  46. package/dist/configs/typescript.mjs.map +1 -0
  47. package/dist/configs/vitest.d.mts +3 -0
  48. package/dist/configs/vitest.d.mts.map +1 -0
  49. package/dist/configs/vitest.mjs +20 -0
  50. package/dist/configs/vitest.mjs.map +1 -0
  51. package/dist/custom-rules/custom.d.mts +3 -0
  52. package/dist/custom-rules/custom.d.mts.map +1 -0
  53. package/dist/custom-rules/custom.mjs +10 -0
  54. package/dist/custom-rules/custom.mjs.map +1 -0
  55. package/dist/custom-rules/index.d.mts +3 -0
  56. package/dist/custom-rules/index.d.mts.map +1 -0
  57. package/dist/custom-rules/index.mjs +3 -0
  58. package/dist/custom-rules/index.mjs.map +1 -0
  59. package/dist/custom-rules/no-restricted-syntax2.d.mts +3 -0
  60. package/dist/custom-rules/no-restricted-syntax2.d.mts.map +1 -0
  61. package/dist/custom-rules/no-restricted-syntax2.mjs +61 -0
  62. package/dist/custom-rules/no-restricted-syntax2.mjs.map +1 -0
  63. package/dist/globals.d.mts +3 -0
  64. package/dist/index.d.mts +6 -0
  65. package/dist/index.d.mts.map +1 -0
  66. package/dist/index.mjs +58 -0
  67. package/dist/index.mjs.map +1 -0
  68. package/dist/plugins/index.d.mts +3 -0
  69. package/dist/plugins/index.d.mts.map +1 -0
  70. package/dist/plugins/index.mjs +23 -0
  71. package/dist/plugins/index.mjs.map +1 -0
  72. package/dist/plugins/total-functions/index.d.mts +3 -0
  73. package/dist/plugins/total-functions/index.d.mts.map +1 -0
  74. package/dist/plugins/total-functions/index.mjs +20 -0
  75. package/dist/plugins/total-functions/index.mjs.map +1 -0
  76. package/dist/plugins/total-functions/plugin.d.mts +3 -0
  77. package/dist/plugins/total-functions/plugin.d.mts.map +1 -0
  78. package/dist/plugins/total-functions/plugin.mjs +26 -0
  79. package/dist/plugins/total-functions/plugin.mjs.map +1 -0
  80. package/dist/plugins/total-functions/rules/common.d.mts +16 -0
  81. package/dist/plugins/total-functions/rules/common.d.mts.map +1 -0
  82. package/dist/plugins/total-functions/rules/common.mjs +49 -0
  83. package/dist/plugins/total-functions/rules/common.mjs.map +1 -0
  84. package/dist/plugins/total-functions/rules/fp-ts.d.mts +9 -0
  85. package/dist/plugins/total-functions/rules/fp-ts.d.mts.map +1 -0
  86. package/dist/plugins/total-functions/rules/fp-ts.mjs +42 -0
  87. package/dist/plugins/total-functions/rules/fp-ts.mjs.map +1 -0
  88. package/dist/plugins/total-functions/rules/index.d.mts +19 -0
  89. package/dist/plugins/total-functions/rules/index.d.mts.map +1 -0
  90. package/dist/plugins/total-functions/rules/index.mjs +19 -0
  91. package/dist/plugins/total-functions/rules/index.mjs.map +1 -0
  92. package/dist/plugins/total-functions/rules/no-enums.d.mts +3 -0
  93. package/dist/plugins/total-functions/rules/no-enums.d.mts.map +1 -0
  94. package/dist/plugins/total-functions/rules/no-enums.mjs +28 -0
  95. package/dist/plugins/total-functions/rules/no-enums.mjs.map +1 -0
  96. package/dist/plugins/total-functions/rules/no-hidden-type-assertions.d.mts +4 -0
  97. package/dist/plugins/total-functions/rules/no-hidden-type-assertions.d.mts.map +1 -0
  98. package/dist/plugins/total-functions/rules/no-hidden-type-assertions.mjs +133 -0
  99. package/dist/plugins/total-functions/rules/no-hidden-type-assertions.mjs.map +1 -0
  100. package/dist/plugins/total-functions/rules/no-nested-fp-ts-effects.d.mts +4 -0
  101. package/dist/plugins/total-functions/rules/no-nested-fp-ts-effects.d.mts.map +1 -0
  102. package/dist/plugins/total-functions/rules/no-nested-fp-ts-effects.mjs +53 -0
  103. package/dist/plugins/total-functions/rules/no-nested-fp-ts-effects.mjs.map +1 -0
  104. package/dist/plugins/total-functions/rules/no-partial-array-reduce.d.mts +4 -0
  105. package/dist/plugins/total-functions/rules/no-partial-array-reduce.d.mts.map +1 -0
  106. package/dist/plugins/total-functions/rules/no-partial-array-reduce.mjs +91 -0
  107. package/dist/plugins/total-functions/rules/no-partial-array-reduce.mjs.map +1 -0
  108. package/dist/plugins/total-functions/rules/no-partial-division.d.mts +4 -0
  109. package/dist/plugins/total-functions/rules/no-partial-division.d.mts.map +1 -0
  110. package/dist/plugins/total-functions/rules/no-partial-division.mjs +78 -0
  111. package/dist/plugins/total-functions/rules/no-partial-division.mjs.map +1 -0
  112. package/dist/plugins/total-functions/rules/no-partial-string-normalize.d.mts +4 -0
  113. package/dist/plugins/total-functions/rules/no-partial-string-normalize.d.mts.map +1 -0
  114. package/dist/plugins/total-functions/rules/no-partial-string-normalize.mjs +94 -0
  115. package/dist/plugins/total-functions/rules/no-partial-string-normalize.mjs.map +1 -0
  116. package/dist/plugins/total-functions/rules/no-partial-url-constructor.d.mts +4 -0
  117. package/dist/plugins/total-functions/rules/no-partial-url-constructor.d.mts.map +1 -0
  118. package/dist/plugins/total-functions/rules/no-partial-url-constructor.mjs +84 -0
  119. package/dist/plugins/total-functions/rules/no-partial-url-constructor.mjs.map +1 -0
  120. package/dist/plugins/total-functions/rules/no-premature-fp-ts-effects.d.mts +4 -0
  121. package/dist/plugins/total-functions/rules/no-premature-fp-ts-effects.d.mts.map +1 -0
  122. package/dist/plugins/total-functions/rules/no-premature-fp-ts-effects.mjs +44 -0
  123. package/dist/plugins/total-functions/rules/no-premature-fp-ts-effects.mjs.map +1 -0
  124. package/dist/plugins/total-functions/rules/no-unsafe-enum-assignment.d.mts +3 -0
  125. package/dist/plugins/total-functions/rules/no-unsafe-enum-assignment.d.mts.map +1 -0
  126. package/dist/plugins/total-functions/rules/no-unsafe-enum-assignment.mjs +20 -0
  127. package/dist/plugins/total-functions/rules/no-unsafe-enum-assignment.mjs.map +1 -0
  128. package/dist/plugins/total-functions/rules/no-unsafe-mutable-readonly-assignment.d.mts +3 -0
  129. package/dist/plugins/total-functions/rules/no-unsafe-mutable-readonly-assignment.d.mts.map +1 -0
  130. package/dist/plugins/total-functions/rules/no-unsafe-mutable-readonly-assignment.mjs +59 -0
  131. package/dist/plugins/total-functions/rules/no-unsafe-mutable-readonly-assignment.mjs.map +1 -0
  132. package/dist/plugins/total-functions/rules/no-unsafe-optional-property-assignment.d.mts +3 -0
  133. package/dist/plugins/total-functions/rules/no-unsafe-optional-property-assignment.d.mts.map +1 -0
  134. package/dist/plugins/total-functions/rules/no-unsafe-optional-property-assignment.mjs +20 -0
  135. package/dist/plugins/total-functions/rules/no-unsafe-optional-property-assignment.mjs.map +1 -0
  136. package/dist/plugins/total-functions/rules/no-unsafe-readonly-mutable-assignment.d.mts +3 -0
  137. package/dist/plugins/total-functions/rules/no-unsafe-readonly-mutable-assignment.d.mts.map +1 -0
  138. package/dist/plugins/total-functions/rules/no-unsafe-readonly-mutable-assignment.mjs +59 -0
  139. package/dist/plugins/total-functions/rules/no-unsafe-readonly-mutable-assignment.mjs.map +1 -0
  140. package/dist/plugins/total-functions/rules/no-unsafe-type-assertion.d.mts +4 -0
  141. package/dist/plugins/total-functions/rules/no-unsafe-type-assertion.d.mts.map +1 -0
  142. package/dist/plugins/total-functions/rules/no-unsafe-type-assertion.mjs +53 -0
  143. package/dist/plugins/total-functions/rules/no-unsafe-type-assertion.mjs.map +1 -0
  144. package/dist/plugins/total-functions/rules/require-strict-mode.d.mts +4 -0
  145. package/dist/plugins/total-functions/rules/require-strict-mode.d.mts.map +1 -0
  146. package/dist/plugins/total-functions/rules/require-strict-mode.mjs +59 -0
  147. package/dist/plugins/total-functions/rules/require-strict-mode.mjs.map +1 -0
  148. package/dist/plugins/total-functions/rules/rules.d.mts +15 -0
  149. package/dist/plugins/total-functions/rules/rules.d.mts.map +1 -0
  150. package/dist/plugins/total-functions/rules/rules.mjs +30 -0
  151. package/dist/plugins/total-functions/rules/rules.mjs.map +1 -0
  152. package/dist/plugins/total-functions/rules/unsafe-assignment-rule.d.mts +5 -0
  153. package/dist/plugins/total-functions/rules/unsafe-assignment-rule.d.mts.map +1 -0
  154. package/dist/plugins/total-functions/rules/unsafe-assignment-rule.mjs +234 -0
  155. package/dist/plugins/total-functions/rules/unsafe-assignment-rule.mjs.map +1 -0
  156. package/dist/plugins/tree-shakable/index.d.mts +3 -0
  157. package/dist/plugins/tree-shakable/index.d.mts.map +1 -0
  158. package/dist/plugins/tree-shakable/index.mjs +4 -0
  159. package/dist/plugins/tree-shakable/index.mjs.map +1 -0
  160. package/dist/plugins/tree-shakable/plugin.d.mts +3 -0
  161. package/dist/plugins/tree-shakable/plugin.d.mts.map +1 -0
  162. package/dist/plugins/tree-shakable/plugin.mjs +10 -0
  163. package/dist/plugins/tree-shakable/plugin.mjs.map +1 -0
  164. package/dist/plugins/tree-shakable/rules/import-star.d.mts +5 -0
  165. package/dist/plugins/tree-shakable/rules/import-star.d.mts.map +1 -0
  166. package/dist/plugins/tree-shakable/rules/import-star.mjs +249 -0
  167. package/dist/plugins/tree-shakable/rules/import-star.mjs.map +1 -0
  168. package/dist/plugins/tree-shakable/rules/index.d.mts +3 -0
  169. package/dist/plugins/tree-shakable/rules/index.d.mts.map +1 -0
  170. package/dist/plugins/tree-shakable/rules/index.mjs +3 -0
  171. package/dist/plugins/tree-shakable/rules/index.mjs.map +1 -0
  172. package/dist/plugins/tree-shakable/rules/rules.d.mts +4 -0
  173. package/dist/plugins/tree-shakable/rules/rules.d.mts.map +1 -0
  174. package/dist/plugins/tree-shakable/rules/rules.mjs +8 -0
  175. package/dist/plugins/tree-shakable/rules/rules.mjs.map +1 -0
  176. package/dist/rules/eslint-array-func-rules.d.mts +3 -0
  177. package/dist/rules/eslint-array-func-rules.d.mts.map +1 -0
  178. package/dist/rules/eslint-array-func-rules.mjs +11 -0
  179. package/dist/rules/eslint-array-func-rules.mjs.map +1 -0
  180. package/dist/rules/eslint-cypress-rules.d.mts +3 -0
  181. package/dist/rules/eslint-cypress-rules.d.mts.map +1 -0
  182. package/dist/rules/eslint-cypress-rules.mjs +15 -0
  183. package/dist/rules/eslint-cypress-rules.mjs.map +1 -0
  184. package/dist/rules/eslint-functional-rules.d.mts +7 -0
  185. package/dist/rules/eslint-functional-rules.d.mts.map +1 -0
  186. package/dist/rules/eslint-functional-rules.mjs +133 -0
  187. package/dist/rules/eslint-functional-rules.mjs.map +1 -0
  188. package/dist/rules/eslint-import-rules.d.mts +3 -0
  189. package/dist/rules/eslint-import-rules.d.mts.map +1 -0
  190. package/dist/rules/eslint-import-rules.mjs +112 -0
  191. package/dist/rules/eslint-import-rules.mjs.map +1 -0
  192. package/dist/rules/eslint-jest-rules.d.mts +3 -0
  193. package/dist/rules/eslint-jest-rules.d.mts.map +1 -0
  194. package/dist/rules/eslint-jest-rules.mjs +82 -0
  195. package/dist/rules/eslint-jest-rules.mjs.map +1 -0
  196. package/dist/rules/eslint-jsx-a11y-rules.d.mts +4 -0
  197. package/dist/rules/eslint-jsx-a11y-rules.d.mts.map +1 -0
  198. package/dist/rules/eslint-jsx-a11y-rules.mjs +167 -0
  199. package/dist/rules/eslint-jsx-a11y-rules.mjs.map +1 -0
  200. package/dist/rules/eslint-playwright-rules.d.mts +3 -0
  201. package/dist/rules/eslint-playwright-rules.d.mts.map +1 -0
  202. package/dist/rules/eslint-playwright-rules.mjs +62 -0
  203. package/dist/rules/eslint-playwright-rules.mjs.map +1 -0
  204. package/dist/rules/eslint-plugin-rules.d.mts +3 -0
  205. package/dist/rules/eslint-plugin-rules.d.mts.map +1 -0
  206. package/dist/rules/eslint-plugin-rules.mjs +36 -0
  207. package/dist/rules/eslint-plugin-rules.mjs.map +1 -0
  208. package/dist/rules/eslint-prefer-arrow-functions-rules.d.mts +3 -0
  209. package/dist/rules/eslint-prefer-arrow-functions-rules.d.mts.map +1 -0
  210. package/dist/rules/eslint-prefer-arrow-functions-rules.mjs +17 -0
  211. package/dist/rules/eslint-prefer-arrow-functions-rules.mjs.map +1 -0
  212. package/dist/rules/eslint-promise-rules.d.mts +3 -0
  213. package/dist/rules/eslint-promise-rules.d.mts.map +1 -0
  214. package/dist/rules/eslint-promise-rules.mjs +25 -0
  215. package/dist/rules/eslint-promise-rules.mjs.map +1 -0
  216. package/dist/rules/eslint-react-hooks-rules.d.mts +3 -0
  217. package/dist/rules/eslint-react-hooks-rules.d.mts.map +1 -0
  218. package/dist/rules/eslint-react-hooks-rules.mjs +7 -0
  219. package/dist/rules/eslint-react-hooks-rules.mjs.map +1 -0
  220. package/dist/rules/eslint-react-perf-rules.d.mts +3 -0
  221. package/dist/rules/eslint-react-perf-rules.d.mts.map +1 -0
  222. package/dist/rules/eslint-react-perf-rules.mjs +9 -0
  223. package/dist/rules/eslint-react-perf-rules.mjs.map +1 -0
  224. package/dist/rules/eslint-react-refresh-rules.d.mts +3 -0
  225. package/dist/rules/eslint-react-refresh-rules.d.mts.map +1 -0
  226. package/dist/rules/eslint-react-refresh-rules.mjs +6 -0
  227. package/dist/rules/eslint-react-refresh-rules.mjs.map +1 -0
  228. package/dist/rules/eslint-react-rules.d.mts +3 -0
  229. package/dist/rules/eslint-react-rules.d.mts.map +1 -0
  230. package/dist/rules/eslint-react-rules.mjs +141 -0
  231. package/dist/rules/eslint-react-rules.mjs.map +1 -0
  232. package/dist/rules/eslint-rules.d.mts +55 -0
  233. package/dist/rules/eslint-rules.d.mts.map +1 -0
  234. package/dist/rules/eslint-rules.mjs +441 -0
  235. package/dist/rules/eslint-rules.mjs.map +1 -0
  236. package/dist/rules/eslint-security-rules.d.mts +3 -0
  237. package/dist/rules/eslint-security-rules.d.mts.map +1 -0
  238. package/dist/rules/eslint-security-rules.mjs +19 -0
  239. package/dist/rules/eslint-security-rules.mjs.map +1 -0
  240. package/dist/rules/eslint-testing-library-rules.d.mts +3 -0
  241. package/dist/rules/eslint-testing-library-rules.d.mts.map +1 -0
  242. package/dist/rules/eslint-testing-library-rules.mjs +35 -0
  243. package/dist/rules/eslint-testing-library-rules.mjs.map +1 -0
  244. package/dist/rules/eslint-total-functions-rules.d.mts +3 -0
  245. package/dist/rules/eslint-total-functions-rules.d.mts.map +1 -0
  246. package/dist/rules/eslint-total-functions-rules.mjs +19 -0
  247. package/dist/rules/eslint-total-functions-rules.mjs.map +1 -0
  248. package/dist/rules/eslint-tree-shakable-rules.d.mts +3 -0
  249. package/dist/rules/eslint-tree-shakable-rules.d.mts.map +1 -0
  250. package/dist/rules/eslint-tree-shakable-rules.mjs +6 -0
  251. package/dist/rules/eslint-tree-shakable-rules.mjs.map +1 -0
  252. package/dist/rules/eslint-unicorn-rules.d.mts +3 -0
  253. package/dist/rules/eslint-unicorn-rules.d.mts.map +1 -0
  254. package/dist/rules/eslint-unicorn-rules.mjs +202 -0
  255. package/dist/rules/eslint-unicorn-rules.mjs.map +1 -0
  256. package/dist/rules/eslint-vitest-rules.d.mts +3 -0
  257. package/dist/rules/eslint-vitest-rules.d.mts.map +1 -0
  258. package/dist/rules/eslint-vitest-rules.mjs +75 -0
  259. package/dist/rules/eslint-vitest-rules.mjs.map +1 -0
  260. package/dist/rules/index.d.mts +23 -0
  261. package/dist/rules/index.d.mts.map +1 -0
  262. package/dist/rules/index.mjs +23 -0
  263. package/dist/rules/index.mjs.map +1 -0
  264. package/dist/rules/typescript-eslint-rules.d.mts +5 -0
  265. package/dist/rules/typescript-eslint-rules.d.mts.map +1 -0
  266. package/dist/rules/typescript-eslint-rules.mjs +379 -0
  267. package/dist/rules/typescript-eslint-rules.mjs.map +1 -0
  268. package/dist/tsconfig.json +1 -0
  269. package/dist/types/flat-config.d.mts +7 -0
  270. package/dist/types/flat-config.d.mts.map +1 -0
  271. package/dist/types/flat-config.mjs +2 -0
  272. package/dist/types/flat-config.mjs.map +1 -0
  273. package/dist/types/index.d.mts +4 -0
  274. package/dist/types/index.d.mts.map +1 -0
  275. package/dist/types/index.mjs +2 -0
  276. package/dist/types/index.mjs.map +1 -0
  277. package/dist/types/rules/eslint-array-func-rules.d.mts +103 -0
  278. package/dist/types/rules/eslint-array-func-rules.d.mts.map +1 -0
  279. package/dist/types/rules/eslint-array-func-rules.mjs +2 -0
  280. package/dist/types/rules/eslint-array-func-rules.mjs.map +1 -0
  281. package/dist/types/rules/eslint-cypress-rules.d.mts +205 -0
  282. package/dist/types/rules/eslint-cypress-rules.d.mts.map +1 -0
  283. package/dist/types/rules/eslint-cypress-rules.mjs +2 -0
  284. package/dist/types/rules/eslint-cypress-rules.mjs.map +1 -0
  285. package/dist/types/rules/eslint-deprecation-rules.d.mts +21 -0
  286. package/dist/types/rules/eslint-deprecation-rules.d.mts.map +1 -0
  287. package/dist/types/rules/eslint-deprecation-rules.mjs +2 -0
  288. package/dist/types/rules/eslint-deprecation-rules.mjs.map +1 -0
  289. package/dist/types/rules/eslint-functional-rules.d.mts +3767 -0
  290. package/dist/types/rules/eslint-functional-rules.d.mts.map +1 -0
  291. package/dist/types/rules/eslint-functional-rules.mjs +2 -0
  292. package/dist/types/rules/eslint-functional-rules.mjs.map +1 -0
  293. package/dist/types/rules/eslint-import-rules.d.mts +2082 -0
  294. package/dist/types/rules/eslint-import-rules.d.mts.map +1 -0
  295. package/dist/types/rules/eslint-import-rules.mjs +2 -0
  296. package/dist/types/rules/eslint-import-rules.mjs.map +1 -0
  297. package/dist/types/rules/eslint-jest-rules.d.mts +1576 -0
  298. package/dist/types/rules/eslint-jest-rules.d.mts.map +1 -0
  299. package/dist/types/rules/eslint-jest-rules.mjs +2 -0
  300. package/dist/types/rules/eslint-jest-rules.mjs.map +1 -0
  301. package/dist/types/rules/eslint-jsx-a11y-rules.d.mts +1679 -0
  302. package/dist/types/rules/eslint-jsx-a11y-rules.d.mts.map +1 -0
  303. package/dist/types/rules/eslint-jsx-a11y-rules.mjs +2 -0
  304. package/dist/types/rules/eslint-jsx-a11y-rules.mjs.map +1 -0
  305. package/dist/types/rules/eslint-playwright-rules.d.mts +1302 -0
  306. package/dist/types/rules/eslint-playwright-rules.d.mts.map +1 -0
  307. package/dist/types/rules/eslint-playwright-rules.mjs +2 -0
  308. package/dist/types/rules/eslint-playwright-rules.mjs.map +1 -0
  309. package/dist/types/rules/eslint-plugin-rules.d.mts +814 -0
  310. package/dist/types/rules/eslint-plugin-rules.d.mts.map +1 -0
  311. package/dist/types/rules/eslint-plugin-rules.mjs +2 -0
  312. package/dist/types/rules/eslint-plugin-rules.mjs.map +1 -0
  313. package/dist/types/rules/eslint-prefer-arrow-functions-rules.d.mts +82 -0
  314. package/dist/types/rules/eslint-prefer-arrow-functions-rules.d.mts.map +1 -0
  315. package/dist/types/rules/eslint-prefer-arrow-functions-rules.mjs +2 -0
  316. package/dist/types/rules/eslint-prefer-arrow-functions-rules.mjs.map +1 -0
  317. package/dist/types/rules/eslint-promise-rules.d.mts +503 -0
  318. package/dist/types/rules/eslint-promise-rules.d.mts.map +1 -0
  319. package/dist/types/rules/eslint-promise-rules.mjs +2 -0
  320. package/dist/types/rules/eslint-promise-rules.mjs.map +1 -0
  321. package/dist/types/rules/eslint-react-hooks-rules.d.mts +70 -0
  322. package/dist/types/rules/eslint-react-hooks-rules.d.mts.map +1 -0
  323. package/dist/types/rules/eslint-react-hooks-rules.mjs +2 -0
  324. package/dist/types/rules/eslint-react-hooks-rules.mjs.map +1 -0
  325. package/dist/types/rules/eslint-react-perf-rules.d.mts +196 -0
  326. package/dist/types/rules/eslint-react-perf-rules.d.mts.map +1 -0
  327. package/dist/types/rules/eslint-react-perf-rules.mjs +2 -0
  328. package/dist/types/rules/eslint-react-perf-rules.mjs.map +1 -0
  329. package/dist/types/rules/eslint-react-refresh-rules.d.mts +51 -0
  330. package/dist/types/rules/eslint-react-refresh-rules.d.mts.map +1 -0
  331. package/dist/types/rules/eslint-react-refresh-rules.mjs +2 -0
  332. package/dist/types/rules/eslint-react-refresh-rules.mjs.map +1 -0
  333. package/dist/types/rules/eslint-react-rules.d.mts +4592 -0
  334. package/dist/types/rules/eslint-react-rules.d.mts.map +1 -0
  335. package/dist/types/rules/eslint-react-rules.mjs +2 -0
  336. package/dist/types/rules/eslint-react-rules.mjs.map +1 -0
  337. package/dist/types/rules/eslint-rules.d.mts +12863 -0
  338. package/dist/types/rules/eslint-rules.d.mts.map +1 -0
  339. package/dist/types/rules/eslint-rules.mjs +2 -0
  340. package/dist/types/rules/eslint-rules.mjs.map +1 -0
  341. package/dist/types/rules/eslint-security-rules.d.mts +253 -0
  342. package/dist/types/rules/eslint-security-rules.d.mts.map +1 -0
  343. package/dist/types/rules/eslint-security-rules.mjs +2 -0
  344. package/dist/types/rules/eslint-security-rules.mjs.map +1 -0
  345. package/dist/types/rules/eslint-strict-dependencies-rules.d.mts +75 -0
  346. package/dist/types/rules/eslint-strict-dependencies-rules.d.mts.map +1 -0
  347. package/dist/types/rules/eslint-strict-dependencies-rules.mjs +2 -0
  348. package/dist/types/rules/eslint-strict-dependencies-rules.mjs.map +1 -0
  349. package/dist/types/rules/eslint-testing-library-rules.d.mts +814 -0
  350. package/dist/types/rules/eslint-testing-library-rules.d.mts.map +1 -0
  351. package/dist/types/rules/eslint-testing-library-rules.mjs +2 -0
  352. package/dist/types/rules/eslint-testing-library-rules.mjs.map +1 -0
  353. package/dist/types/rules/eslint-total-functions-rules.d.mts +197 -0
  354. package/dist/types/rules/eslint-total-functions-rules.d.mts.map +1 -0
  355. package/dist/types/rules/eslint-total-functions-rules.mjs +2 -0
  356. package/dist/types/rules/eslint-total-functions-rules.mjs.map +1 -0
  357. package/dist/types/rules/eslint-tree-shakable-rules.d.mts +19 -0
  358. package/dist/types/rules/eslint-tree-shakable-rules.d.mts.map +1 -0
  359. package/dist/types/rules/eslint-tree-shakable-rules.mjs +2 -0
  360. package/dist/types/rules/eslint-tree-shakable-rules.mjs.map +1 -0
  361. package/dist/types/rules/eslint-unicorn-rules.d.mts +3544 -0
  362. package/dist/types/rules/eslint-unicorn-rules.d.mts.map +1 -0
  363. package/dist/types/rules/eslint-unicorn-rules.mjs +2 -0
  364. package/dist/types/rules/eslint-unicorn-rules.mjs.map +1 -0
  365. package/dist/types/rules/eslint-vitest-rules.d.mts +1461 -0
  366. package/dist/types/rules/eslint-vitest-rules.d.mts.map +1 -0
  367. package/dist/types/rules/eslint-vitest-rules.mjs +2 -0
  368. package/dist/types/rules/eslint-vitest-rules.mjs.map +1 -0
  369. package/dist/types/rules/index.d.mts +25 -0
  370. package/dist/types/rules/index.d.mts.map +1 -0
  371. package/dist/types/rules/index.mjs +2 -0
  372. package/dist/types/rules/index.mjs.map +1 -0
  373. package/dist/types/rules/typescript-eslint-rules.d.mts +9150 -0
  374. package/dist/types/rules/typescript-eslint-rules.d.mts.map +1 -0
  375. package/dist/types/rules/typescript-eslint-rules.mjs +2 -0
  376. package/dist/types/rules/typescript-eslint-rules.mjs.map +1 -0
  377. package/dist/types/types.d.mts +8 -0
  378. package/dist/types/types.d.mts.map +1 -0
  379. package/dist/types/types.mjs +2 -0
  380. package/dist/types/types.mjs.map +1 -0
  381. package/dist/types.d.mts +2 -0
  382. package/package.json +129 -0
  383. package/src/configs/cypress.mts +27 -0
  384. package/src/configs/index.mts +11 -0
  385. package/src/configs/jest.mts +23 -0
  386. package/src/configs/playwright.mts +28 -0
  387. package/src/configs/plugins.mts +123 -0
  388. package/src/configs/preact.mts +17 -0
  389. package/src/configs/react-base.mts +41 -0
  390. package/src/configs/react.mts +17 -0
  391. package/src/configs/testing-library.mts +21 -0
  392. package/src/configs/typescript-without-rules.mts +94 -0
  393. package/src/configs/typescript.mts +91 -0
  394. package/src/configs/vitest.mts +19 -0
  395. package/src/custom-rules/custom.mts +8 -0
  396. package/src/custom-rules/index.mts +2 -0
  397. package/src/custom-rules/no-restricted-syntax2.mts +79 -0
  398. package/src/globals.d.mts +3 -0
  399. package/src/index.mts +5 -0
  400. package/src/plugins/index.mts +2 -0
  401. package/src/plugins/total-functions/index.mts +2 -0
  402. package/src/plugins/total-functions/plugin.mts +8 -0
  403. package/src/plugins/total-functions/rules/common.mts +81 -0
  404. package/src/plugins/total-functions/rules/fp-ts.mts +57 -0
  405. package/src/plugins/total-functions/rules/index.mts +18 -0
  406. package/src/plugins/total-functions/rules/no-enums.mts +26 -0
  407. package/src/plugins/total-functions/rules/no-enums.test.mts +65 -0
  408. package/src/plugins/total-functions/rules/no-hidden-type-assertions.mts +207 -0
  409. package/src/plugins/total-functions/rules/no-hidden-type-assertions.test.mts +287 -0
  410. package/src/plugins/total-functions/rules/no-nested-fp-ts-effects.mts +67 -0
  411. package/src/plugins/total-functions/rules/no-nested-fp-ts-effects.test.mts +150 -0
  412. package/src/plugins/total-functions/rules/no-partial-array-reduce.mts +126 -0
  413. package/src/plugins/total-functions/rules/no-partial-array-reduce.test.mts +270 -0
  414. package/src/plugins/total-functions/rules/no-partial-division.mts +107 -0
  415. package/src/plugins/total-functions/rules/no-partial-division.test.mts +233 -0
  416. package/src/plugins/total-functions/rules/no-partial-string-normalize.mts +133 -0
  417. package/src/plugins/total-functions/rules/no-partial-string-normalize.test.mts +146 -0
  418. package/src/plugins/total-functions/rules/no-partial-url-constructor.mts +100 -0
  419. package/src/plugins/total-functions/rules/no-partial-url-constructor.test.mts +152 -0
  420. package/src/plugins/total-functions/rules/no-premature-fp-ts-effects.mts +51 -0
  421. package/src/plugins/total-functions/rules/no-premature-fp-ts-effects.test.mts +108 -0
  422. package/src/plugins/total-functions/rules/no-unsafe-enum-assignment.mts +19 -0
  423. package/src/plugins/total-functions/rules/no-unsafe-mutable-readonly-assignment.mts +99 -0
  424. package/src/plugins/total-functions/rules/no-unsafe-mutable-readonly-assignment.test.mts +830 -0
  425. package/src/plugins/total-functions/rules/no-unsafe-optional-property-assignment.mts +19 -0
  426. package/src/plugins/total-functions/rules/no-unsafe-readonly-mutable-assignment.mts +99 -0
  427. package/src/plugins/total-functions/rules/no-unsafe-readonly-mutable-assignment.test.mts +626 -0
  428. package/src/plugins/total-functions/rules/no-unsafe-type-assertion.mts +65 -0
  429. package/src/plugins/total-functions/rules/no-unsafe-type-assertion.test.mts +269 -0
  430. package/src/plugins/total-functions/rules/require-strict-mode.mts +65 -0
  431. package/src/plugins/total-functions/rules/require-strict-mode.test.mts +92 -0
  432. package/src/plugins/total-functions/rules/rules.mts +28 -0
  433. package/src/plugins/total-functions/rules/unsafe-assignment-rule.mts +401 -0
  434. package/src/plugins/tree-shakable/index.mts +2 -0
  435. package/src/plugins/tree-shakable/plugin.mts +8 -0
  436. package/src/plugins/tree-shakable/rules/import-star.mts +266 -0
  437. package/src/plugins/tree-shakable/rules/import-star.test.mts +174 -0
  438. package/src/plugins/tree-shakable/rules/index.mts +2 -0
  439. package/src/plugins/tree-shakable/rules/rules.mts +6 -0
  440. package/src/rules/eslint-array-func-rules.mts +10 -0
  441. package/src/rules/eslint-cypress-rules.mts +14 -0
  442. package/src/rules/eslint-functional-rules.mts +148 -0
  443. package/src/rules/eslint-import-rules.mts +124 -0
  444. package/src/rules/eslint-jest-rules.mts +84 -0
  445. package/src/rules/eslint-jsx-a11y-rules.mts +178 -0
  446. package/src/rules/eslint-playwright-rules.mts +63 -0
  447. package/src/rules/eslint-plugin-rules.mts +35 -0
  448. package/src/rules/eslint-prefer-arrow-functions-rules.mts +16 -0
  449. package/src/rules/eslint-promise-rules.mts +26 -0
  450. package/src/rules/eslint-react-hooks-rules.mts +6 -0
  451. package/src/rules/eslint-react-perf-rules.mts +8 -0
  452. package/src/rules/eslint-react-refresh-rules.mts +5 -0
  453. package/src/rules/eslint-react-rules.mts +159 -0
  454. package/src/rules/eslint-rules.mts +462 -0
  455. package/src/rules/eslint-security-rules.mts +18 -0
  456. package/src/rules/eslint-testing-library-rules.mts +35 -0
  457. package/src/rules/eslint-total-functions-rules.mts +22 -0
  458. package/src/rules/eslint-tree-shakable-rules.mts +5 -0
  459. package/src/rules/eslint-unicorn-rules.mts +209 -0
  460. package/src/rules/eslint-vitest-rules.mts +82 -0
  461. package/src/rules/index.mts +22 -0
  462. package/src/rules/typescript-eslint-rules.mts +413 -0
  463. package/src/types/flat-config.mts +13 -0
  464. package/src/types/index.mts +3 -0
  465. package/src/types/rules/eslint-array-func-rules.mts +109 -0
  466. package/src/types/rules/eslint-cypress-rules.mts +221 -0
  467. package/src/types/rules/eslint-deprecation-rules.mts +22 -0
  468. package/src/types/rules/eslint-functional-rules.mts +4071 -0
  469. package/src/types/rules/eslint-import-rules.mts +2251 -0
  470. package/src/types/rules/eslint-jest-rules.mts +1705 -0
  471. package/src/types/rules/eslint-jsx-a11y-rules.mts +1866 -0
  472. package/src/types/rules/eslint-playwright-rules.mts +1402 -0
  473. package/src/types/rules/eslint-plugin-rules.mts +885 -0
  474. package/src/types/rules/eslint-prefer-arrow-functions-rules.mts +89 -0
  475. package/src/types/rules/eslint-promise-rules.mts +547 -0
  476. package/src/types/rules/eslint-react-hooks-rules.mts +78 -0
  477. package/src/types/rules/eslint-react-perf-rules.mts +215 -0
  478. package/src/types/rules/eslint-react-refresh-rules.mts +58 -0
  479. package/src/types/rules/eslint-react-rules.mts +5075 -0
  480. package/src/types/rules/eslint-rules.mts +13614 -0
  481. package/src/types/rules/eslint-security-rules.mts +267 -0
  482. package/src/types/rules/eslint-strict-dependencies-rules.mts +84 -0
  483. package/src/types/rules/eslint-testing-library-rules.mts +887 -0
  484. package/src/types/rules/eslint-total-functions-rules.mts +209 -0
  485. package/src/types/rules/eslint-tree-shakable-rules.mts +20 -0
  486. package/src/types/rules/eslint-unicorn-rules.mts +3796 -0
  487. package/src/types/rules/eslint-vitest-rules.mts +1575 -0
  488. package/src/types/rules/index.mts +24 -0
  489. package/src/types/rules/typescript-eslint-rules.mts +9992 -0
  490. package/src/types/types.mts +7 -0
@@ -0,0 +1,1866 @@
1
+ /* cSpell:disable */
2
+ import { type Linter } from 'eslint';
3
+
4
+ type SpreadOptionsIfIsArray<T extends readonly [Linter.RuleSeverity, unknown]> =
5
+ T[1] extends readonly unknown[] ? readonly [Linter.RuleSeverity, ...T[1]] : T;
6
+
7
+ /**
8
+ * Enforce emojis are wrapped in `<span>` and provide screen reader access.
9
+ *
10
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/accessible-emoji.md
11
+ *
12
+ * ```md
13
+ * | key | value |
14
+ * | :--------- | :---- |
15
+ * | deprecated | true |
16
+ * ```
17
+ */
18
+ namespace AccessibleEmoji {
19
+ /**
20
+ * ### schema
21
+ *
22
+ * ```json
23
+ * [
24
+ * {
25
+ * "type": "object",
26
+ * "properties": {}
27
+ * }
28
+ * ]
29
+ * ```
30
+ */
31
+ export type RuleEntry = 0;
32
+ }
33
+
34
+ /**
35
+ * Enforce all elements that require alternative text have meaningful
36
+ * information to relay back to end user.
37
+ *
38
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/alt-text.md
39
+ *
40
+ * ```md
41
+ * | key | value |
42
+ * | :--------- | :---- |
43
+ * | deprecated | false |
44
+ * ```
45
+ */
46
+ namespace AltText {
47
+ /**
48
+ * ### schema
49
+ *
50
+ * ```json
51
+ * [
52
+ * {
53
+ * "type": "object",
54
+ * "properties": {
55
+ * "elements": {
56
+ * "type": "array",
57
+ * "items": {
58
+ * "type": "string"
59
+ * },
60
+ * "uniqueItems": true,
61
+ * "additionalItems": false
62
+ * },
63
+ * "img": {
64
+ * "type": "array",
65
+ * "items": {
66
+ * "type": "string"
67
+ * },
68
+ * "uniqueItems": true,
69
+ * "additionalItems": false
70
+ * },
71
+ * "object": {
72
+ * "type": "array",
73
+ * "items": {
74
+ * "type": "string"
75
+ * },
76
+ * "uniqueItems": true,
77
+ * "additionalItems": false
78
+ * },
79
+ * "area": {
80
+ * "type": "array",
81
+ * "items": {
82
+ * "type": "string"
83
+ * },
84
+ * "uniqueItems": true,
85
+ * "additionalItems": false
86
+ * },
87
+ * "input[type=\"image\"]": {
88
+ * "type": "array",
89
+ * "items": {
90
+ * "type": "string"
91
+ * },
92
+ * "uniqueItems": true,
93
+ * "additionalItems": false
94
+ * }
95
+ * }
96
+ * }
97
+ * ]
98
+ * ```
99
+ */
100
+ export type Options = {
101
+ readonly elements?: readonly string[];
102
+ readonly img?: readonly string[];
103
+ readonly object?: readonly string[];
104
+ readonly area?: readonly string[];
105
+ readonly 'input[type="image"]'?: readonly string[];
106
+ readonly [k: string]: unknown;
107
+ };
108
+
109
+ export type RuleEntry =
110
+ | Linter.StringSeverity
111
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
112
+ }
113
+
114
+ /**
115
+ * Enforce `<a>` text to not exactly match "click here", "here", "link", or "a
116
+ * link".
117
+ *
118
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-ambiguous-text.md
119
+ *
120
+ * ```md
121
+ * | key | value |
122
+ * | :--------- | :---- |
123
+ * | deprecated | false |
124
+ * ```
125
+ */
126
+ namespace AnchorAmbiguousText {
127
+ /**
128
+ * ### schema
129
+ *
130
+ * ```json
131
+ * [
132
+ * {
133
+ * "type": "object",
134
+ * "properties": {
135
+ * "words": {
136
+ * "type": "array",
137
+ * "items": {
138
+ * "type": "string"
139
+ * },
140
+ * "uniqueItems": true,
141
+ * "additionalItems": false
142
+ * }
143
+ * }
144
+ * }
145
+ * ]
146
+ * ```
147
+ */
148
+ export type Options = {
149
+ readonly words?: readonly string[];
150
+ readonly [k: string]: unknown;
151
+ };
152
+
153
+ export type RuleEntry =
154
+ | Linter.StringSeverity
155
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
156
+ }
157
+
158
+ /**
159
+ * Enforce all anchors to contain accessible content.
160
+ *
161
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-has-content.md
162
+ *
163
+ * ```md
164
+ * | key | value |
165
+ * | :--------- | :---- |
166
+ * | deprecated | false |
167
+ * ```
168
+ */
169
+ namespace AnchorHasContent {
170
+ /**
171
+ * ### schema
172
+ *
173
+ * ```json
174
+ * [
175
+ * {
176
+ * "type": "object",
177
+ * "properties": {
178
+ * "components": {
179
+ * "type": "array",
180
+ * "items": {
181
+ * "type": "string"
182
+ * },
183
+ * "uniqueItems": true,
184
+ * "additionalItems": false
185
+ * }
186
+ * }
187
+ * }
188
+ * ]
189
+ * ```
190
+ */
191
+ export type Options = {
192
+ readonly components?: readonly string[];
193
+ readonly [k: string]: unknown;
194
+ };
195
+
196
+ export type RuleEntry =
197
+ | Linter.StringSeverity
198
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
199
+ }
200
+
201
+ /**
202
+ * Enforce all anchors are valid, navigable elements.
203
+ *
204
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-is-valid.md
205
+ *
206
+ * ```md
207
+ * | key | value |
208
+ * | :--------- | :---- |
209
+ * | deprecated | false |
210
+ * ```
211
+ */
212
+ namespace AnchorIsValid {
213
+ /**
214
+ * ### schema
215
+ *
216
+ * ```json
217
+ * [
218
+ * {
219
+ * "type": "object",
220
+ * "properties": {
221
+ * "components": {
222
+ * "type": "array",
223
+ * "items": {
224
+ * "type": "string"
225
+ * },
226
+ * "uniqueItems": true,
227
+ * "additionalItems": false
228
+ * },
229
+ * "specialLink": {
230
+ * "type": "array",
231
+ * "items": {
232
+ * "type": "string"
233
+ * },
234
+ * "uniqueItems": true,
235
+ * "additionalItems": false
236
+ * },
237
+ * "aspects": {
238
+ * "type": "array",
239
+ * "items": {
240
+ * "type": "string",
241
+ * "enum": [
242
+ * "noHref",
243
+ * "invalidHref",
244
+ * "preferButton"
245
+ * ]
246
+ * },
247
+ * "uniqueItems": true,
248
+ * "additionalItems": false,
249
+ * "minItems": 1
250
+ * }
251
+ * }
252
+ * }
253
+ * ]
254
+ * ```
255
+ */
256
+ export type Options = {
257
+ readonly components?: readonly string[];
258
+ readonly specialLink?: readonly string[];
259
+ /** @minItems 1 */
260
+ readonly aspects?: readonly [
261
+ 'invalidHref' | 'noHref' | 'preferButton',
262
+ ...(readonly ('invalidHref' | 'noHref' | 'preferButton')[]),
263
+ ];
264
+ readonly [k: string]: unknown;
265
+ };
266
+
267
+ export type RuleEntry =
268
+ | Linter.StringSeverity
269
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
270
+ }
271
+
272
+ /**
273
+ * Enforce elements with aria-activedescendant are tabbable.
274
+ *
275
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-activedescendant-has-tabindex.md
276
+ *
277
+ * ```md
278
+ * | key | value |
279
+ * | :--------- | :---- |
280
+ * | deprecated | false |
281
+ * ```
282
+ */
283
+ namespace AriaActivedescendantHasTabindex {
284
+ /**
285
+ * ### schema
286
+ *
287
+ * ```json
288
+ * [
289
+ * {
290
+ * "type": "object",
291
+ * "properties": {}
292
+ * }
293
+ * ]
294
+ * ```
295
+ */
296
+ export type Options = UnknownRecord;
297
+
298
+ export type RuleEntry =
299
+ | Linter.StringSeverity
300
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
301
+ }
302
+
303
+ /**
304
+ * Enforce all `aria-*` props are valid.
305
+ *
306
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-props.md
307
+ *
308
+ * ```md
309
+ * | key | value |
310
+ * | :--------- | :---- |
311
+ * | deprecated | false |
312
+ * ```
313
+ */
314
+ namespace AriaProps {
315
+ /**
316
+ * ### schema
317
+ *
318
+ * ```json
319
+ * [
320
+ * {
321
+ * "type": "object",
322
+ * "properties": {}
323
+ * }
324
+ * ]
325
+ * ```
326
+ */
327
+ export type Options = UnknownRecord;
328
+
329
+ export type RuleEntry =
330
+ | Linter.StringSeverity
331
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
332
+ }
333
+
334
+ /**
335
+ * Enforce ARIA state and property values are valid.
336
+ *
337
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-proptypes.md
338
+ *
339
+ * ```md
340
+ * | key | value |
341
+ * | :--------- | :---- |
342
+ * | deprecated | false |
343
+ * ```
344
+ */
345
+ namespace AriaProptypes {
346
+ /**
347
+ * ### schema
348
+ *
349
+ * ```json
350
+ * [
351
+ * {
352
+ * "type": "object",
353
+ * "properties": {}
354
+ * }
355
+ * ]
356
+ * ```
357
+ */
358
+ export type Options = UnknownRecord;
359
+
360
+ export type RuleEntry =
361
+ | Linter.StringSeverity
362
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
363
+ }
364
+
365
+ /**
366
+ * Enforce that elements with ARIA roles must use a valid, non-abstract ARIA
367
+ * role.
368
+ *
369
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-role.md
370
+ *
371
+ * ```md
372
+ * | key | value |
373
+ * | :--------- | :---- |
374
+ * | deprecated | false |
375
+ * ```
376
+ */
377
+ namespace AriaRole {
378
+ /**
379
+ * ### schema
380
+ *
381
+ * ```json
382
+ * [
383
+ * {
384
+ * "type": "object",
385
+ * "properties": {
386
+ * "allowedInvalidRoles": {
387
+ * "items": {
388
+ * "type": "string"
389
+ * },
390
+ * "type": "array",
391
+ * "uniqueItems": true
392
+ * },
393
+ * "ignoreNonDOM": {
394
+ * "type": "boolean",
395
+ * "default": false
396
+ * }
397
+ * }
398
+ * }
399
+ * ]
400
+ * ```
401
+ */
402
+ export type Options = {
403
+ readonly allowedInvalidRoles?: readonly string[];
404
+ readonly ignoreNonDOM?: boolean;
405
+ readonly [k: string]: unknown;
406
+ };
407
+
408
+ export type RuleEntry =
409
+ | Linter.StringSeverity
410
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
411
+ }
412
+
413
+ /**
414
+ * Enforce that elements that do not support ARIA roles, states, and properties
415
+ * do not have those attributes.
416
+ *
417
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-unsupported-elements.md
418
+ *
419
+ * ```md
420
+ * | key | value |
421
+ * | :--------- | :---- |
422
+ * | deprecated | false |
423
+ * ```
424
+ */
425
+ namespace AriaUnsupportedElements {
426
+ /**
427
+ * ### schema
428
+ *
429
+ * ```json
430
+ * [
431
+ * {
432
+ * "type": "object",
433
+ * "properties": {}
434
+ * }
435
+ * ]
436
+ * ```
437
+ */
438
+ export type Options = UnknownRecord;
439
+
440
+ export type RuleEntry =
441
+ | Linter.StringSeverity
442
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
443
+ }
444
+
445
+ /**
446
+ * Enforce that autocomplete attributes are used correctly.
447
+ *
448
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/autocomplete-valid.md
449
+ *
450
+ * ```md
451
+ * | key | value |
452
+ * | :--------- | :---- |
453
+ * | deprecated | false |
454
+ * ```
455
+ */
456
+ namespace AutocompleteValid {
457
+ /**
458
+ * ### schema
459
+ *
460
+ * ```json
461
+ * [
462
+ * {
463
+ * "type": "object",
464
+ * "properties": {
465
+ * "inputComponents": {
466
+ * "type": "array",
467
+ * "items": {
468
+ * "type": "string"
469
+ * },
470
+ * "uniqueItems": true,
471
+ * "additionalItems": false
472
+ * }
473
+ * }
474
+ * }
475
+ * ]
476
+ * ```
477
+ */
478
+ export type Options = {
479
+ readonly inputComponents?: readonly string[];
480
+ readonly [k: string]: unknown;
481
+ };
482
+
483
+ export type RuleEntry =
484
+ | Linter.StringSeverity
485
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
486
+ }
487
+
488
+ /**
489
+ * Enforce a clickable non-interactive element has at least one keyboard event
490
+ * listener.
491
+ *
492
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/click-events-have-key-events.md
493
+ *
494
+ * ```md
495
+ * | key | value |
496
+ * | :--------- | :---- |
497
+ * | deprecated | false |
498
+ * ```
499
+ */
500
+ namespace ClickEventsHaveKeyEvents {
501
+ /**
502
+ * ### schema
503
+ *
504
+ * ```json
505
+ * [
506
+ * {
507
+ * "type": "object",
508
+ * "properties": {}
509
+ * }
510
+ * ]
511
+ * ```
512
+ */
513
+ export type Options = UnknownRecord;
514
+
515
+ export type RuleEntry =
516
+ | Linter.StringSeverity
517
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
518
+ }
519
+
520
+ /**
521
+ * Enforce that a control (an interactive element) has a text label.
522
+ *
523
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/control-has-associated-label.md
524
+ *
525
+ * ```md
526
+ * | key | value |
527
+ * | :--------- | :---- |
528
+ * | deprecated | false |
529
+ * ```
530
+ */
531
+ namespace ControlHasAssociatedLabel {
532
+ /**
533
+ * ### schema
534
+ *
535
+ * ```json
536
+ * [
537
+ * {
538
+ * "type": "object",
539
+ * "properties": {
540
+ * "labelAttributes": {
541
+ * "type": "array",
542
+ * "items": {
543
+ * "type": "string"
544
+ * },
545
+ * "uniqueItems": true,
546
+ * "additionalItems": false
547
+ * },
548
+ * "controlComponents": {
549
+ * "type": "array",
550
+ * "items": {
551
+ * "type": "string"
552
+ * },
553
+ * "uniqueItems": true,
554
+ * "additionalItems": false
555
+ * },
556
+ * "ignoreElements": {
557
+ * "type": "array",
558
+ * "items": {
559
+ * "type": "string"
560
+ * },
561
+ * "uniqueItems": true,
562
+ * "additionalItems": false
563
+ * },
564
+ * "ignoreRoles": {
565
+ * "type": "array",
566
+ * "items": {
567
+ * "type": "string"
568
+ * },
569
+ * "uniqueItems": true,
570
+ * "additionalItems": false
571
+ * },
572
+ * "depth": {
573
+ * "description": "JSX tree depth limit to check for accessible label",
574
+ * "type": "integer",
575
+ * "minimum": 0
576
+ * }
577
+ * }
578
+ * }
579
+ * ]
580
+ * ```
581
+ */
582
+ export type Options = {
583
+ readonly labelAttributes?: readonly string[];
584
+ readonly controlComponents?: readonly string[];
585
+ readonly ignoreElements?: readonly string[];
586
+ readonly ignoreRoles?: readonly string[];
587
+ /** JSX tree depth limit to check for accessible label */
588
+ readonly depth?: number;
589
+ readonly [k: string]: unknown;
590
+ };
591
+
592
+ export type RuleEntry =
593
+ | Linter.StringSeverity
594
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
595
+ }
596
+
597
+ /**
598
+ * Enforce heading (`h1`, `h2`, etc) elements contain accessible content.
599
+ *
600
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/heading-has-content.md
601
+ *
602
+ * ```md
603
+ * | key | value |
604
+ * | :--------- | :---- |
605
+ * | deprecated | false |
606
+ * ```
607
+ */
608
+ namespace HeadingHasContent {
609
+ /**
610
+ * ### schema
611
+ *
612
+ * ```json
613
+ * [
614
+ * {
615
+ * "type": "object",
616
+ * "properties": {
617
+ * "components": {
618
+ * "type": "array",
619
+ * "items": {
620
+ * "type": "string"
621
+ * },
622
+ * "uniqueItems": true,
623
+ * "additionalItems": false
624
+ * }
625
+ * }
626
+ * }
627
+ * ]
628
+ * ```
629
+ */
630
+ export type Options = {
631
+ readonly components?: readonly string[];
632
+ readonly [k: string]: unknown;
633
+ };
634
+
635
+ export type RuleEntry =
636
+ | Linter.StringSeverity
637
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
638
+ }
639
+
640
+ /**
641
+ * Enforce `<html>` element has `lang` prop.
642
+ *
643
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/html-has-lang.md
644
+ *
645
+ * ```md
646
+ * | key | value |
647
+ * | :--------- | :---- |
648
+ * | deprecated | false |
649
+ * ```
650
+ */
651
+ namespace HtmlHasLang {
652
+ /**
653
+ * ### schema
654
+ *
655
+ * ```json
656
+ * [
657
+ * {
658
+ * "type": "object",
659
+ * "properties": {}
660
+ * }
661
+ * ]
662
+ * ```
663
+ */
664
+ export type Options = UnknownRecord;
665
+
666
+ export type RuleEntry =
667
+ | Linter.StringSeverity
668
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
669
+ }
670
+
671
+ /**
672
+ * Enforce iframe elements have a title attribute.
673
+ *
674
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/iframe-has-title.md
675
+ *
676
+ * ```md
677
+ * | key | value |
678
+ * | :--------- | :---- |
679
+ * | deprecated | false |
680
+ * ```
681
+ */
682
+ namespace IframeHasTitle {
683
+ /**
684
+ * ### schema
685
+ *
686
+ * ```json
687
+ * [
688
+ * {
689
+ * "type": "object",
690
+ * "properties": {}
691
+ * }
692
+ * ]
693
+ * ```
694
+ */
695
+ export type Options = UnknownRecord;
696
+
697
+ export type RuleEntry =
698
+ | Linter.StringSeverity
699
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
700
+ }
701
+
702
+ /**
703
+ * Enforce `<img>` alt prop does not contain the word "image", "picture", or
704
+ * "photo".
705
+ *
706
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/img-redundant-alt.md
707
+ *
708
+ * ```md
709
+ * | key | value |
710
+ * | :--------- | :---- |
711
+ * | deprecated | false |
712
+ * ```
713
+ */
714
+ namespace ImgRedundantAlt {
715
+ /**
716
+ * ### schema
717
+ *
718
+ * ```json
719
+ * [
720
+ * {
721
+ * "type": "object",
722
+ * "properties": {
723
+ * "components": {
724
+ * "type": "array",
725
+ * "items": {
726
+ * "type": "string"
727
+ * },
728
+ * "uniqueItems": true,
729
+ * "additionalItems": false
730
+ * },
731
+ * "words": {
732
+ * "type": "array",
733
+ * "items": {
734
+ * "type": "string"
735
+ * },
736
+ * "uniqueItems": true,
737
+ * "additionalItems": false
738
+ * }
739
+ * }
740
+ * }
741
+ * ]
742
+ * ```
743
+ */
744
+ export type Options = {
745
+ readonly components?: readonly string[];
746
+ readonly words?: readonly string[];
747
+ readonly [k: string]: unknown;
748
+ };
749
+
750
+ export type RuleEntry =
751
+ | Linter.StringSeverity
752
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
753
+ }
754
+
755
+ /**
756
+ * Enforce that elements with interactive handlers like `onClick` must be
757
+ * focusable.
758
+ *
759
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/interactive-supports-focus.md
760
+ *
761
+ * ```md
762
+ * | key | value |
763
+ * | :--------- | :---- |
764
+ * | deprecated | false |
765
+ * ```
766
+ */
767
+ namespace InteractiveSupportsFocus {
768
+ /**
769
+ * ### schema
770
+ *
771
+ * ```json
772
+ * [
773
+ * {
774
+ * "type": "object",
775
+ * "properties": {
776
+ * "tabbable": {
777
+ * "type": "array",
778
+ * "items": {
779
+ * "type": "string",
780
+ * "enum": [
781
+ * "button",
782
+ * "checkbox",
783
+ * "columnheader",
784
+ * "combobox",
785
+ * "grid",
786
+ * "gridcell",
787
+ * "link",
788
+ * "listbox",
789
+ * "menu",
790
+ * "menubar",
791
+ * "menuitem",
792
+ * "menuitemcheckbox",
793
+ * "menuitemradio",
794
+ * "option",
795
+ * "progressbar",
796
+ * "radio",
797
+ * "radiogroup",
798
+ * "row",
799
+ * "rowheader",
800
+ * "scrollbar",
801
+ * "searchbox",
802
+ * "slider",
803
+ * "spinbutton",
804
+ * "switch",
805
+ * "tab",
806
+ * "tablist",
807
+ * "textbox",
808
+ * "tree",
809
+ * "treegrid",
810
+ * "treeitem",
811
+ * "doc-backlink",
812
+ * "doc-biblioref",
813
+ * "doc-glossref",
814
+ * "doc-noteref"
815
+ * ]
816
+ * },
817
+ * "uniqueItems": true,
818
+ * "additionalItems": false,
819
+ * "minItems": 0
820
+ * }
821
+ * }
822
+ * }
823
+ * ]
824
+ * ```
825
+ */
826
+ export type Options = {
827
+ /** @minItems 0 */
828
+ readonly tabbable?: readonly (
829
+ | 'button'
830
+ | 'checkbox'
831
+ | 'columnheader'
832
+ | 'combobox'
833
+ | 'doc-backlink'
834
+ | 'doc-biblioref'
835
+ | 'doc-glossref'
836
+ | 'doc-noteref'
837
+ | 'grid'
838
+ | 'gridcell'
839
+ | 'link'
840
+ | 'listbox'
841
+ | 'menu'
842
+ | 'menubar'
843
+ | 'menuitem'
844
+ | 'menuitemcheckbox'
845
+ | 'menuitemradio'
846
+ | 'option'
847
+ | 'progressbar'
848
+ | 'radio'
849
+ | 'radiogroup'
850
+ | 'row'
851
+ | 'rowheader'
852
+ | 'scrollbar'
853
+ | 'searchbox'
854
+ | 'slider'
855
+ | 'spinbutton'
856
+ | 'switch'
857
+ | 'tab'
858
+ | 'tablist'
859
+ | 'textbox'
860
+ | 'tree'
861
+ | 'treegrid'
862
+ | 'treeitem'
863
+ )[];
864
+ readonly [k: string]: unknown;
865
+ };
866
+
867
+ export type RuleEntry =
868
+ | Linter.StringSeverity
869
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
870
+ }
871
+
872
+ /**
873
+ * Enforce that a `label` tag has a text label and an associated control.
874
+ *
875
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/label-has-associated-control.md
876
+ *
877
+ * ```md
878
+ * | key | value |
879
+ * | :--------- | :---- |
880
+ * | deprecated | false |
881
+ * ```
882
+ */
883
+ namespace LabelHasAssociatedControl {
884
+ /**
885
+ * ### schema
886
+ *
887
+ * ```json
888
+ * [
889
+ * {
890
+ * "type": "object",
891
+ * "properties": {
892
+ * "labelComponents": {
893
+ * "type": "array",
894
+ * "items": {
895
+ * "type": "string"
896
+ * },
897
+ * "uniqueItems": true,
898
+ * "additionalItems": false
899
+ * },
900
+ * "labelAttributes": {
901
+ * "type": "array",
902
+ * "items": {
903
+ * "type": "string"
904
+ * },
905
+ * "uniqueItems": true,
906
+ * "additionalItems": false
907
+ * },
908
+ * "controlComponents": {
909
+ * "type": "array",
910
+ * "items": {
911
+ * "type": "string"
912
+ * },
913
+ * "uniqueItems": true,
914
+ * "additionalItems": false
915
+ * },
916
+ * "assert": {
917
+ * "description": "Assert that the label has htmlFor, a nested label, both or either",
918
+ * "type": "string",
919
+ * "enum": [
920
+ * "htmlFor",
921
+ * "nesting",
922
+ * "both",
923
+ * "either"
924
+ * ]
925
+ * },
926
+ * "depth": {
927
+ * "description": "JSX tree depth limit to check for accessible label",
928
+ * "type": "integer",
929
+ * "minimum": 0
930
+ * }
931
+ * }
932
+ * }
933
+ * ]
934
+ * ```
935
+ */
936
+ export type Options = {
937
+ readonly labelComponents?: readonly string[];
938
+ readonly labelAttributes?: readonly string[];
939
+ readonly controlComponents?: readonly string[];
940
+ /** Assert that the label has htmlFor, a nested label, both or either */
941
+ readonly assert?: 'both' | 'either' | 'htmlFor' | 'nesting';
942
+ /** JSX tree depth limit to check for accessible label */
943
+ readonly depth?: number;
944
+ readonly [k: string]: unknown;
945
+ };
946
+
947
+ export type RuleEntry =
948
+ | Linter.StringSeverity
949
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
950
+ }
951
+
952
+ /**
953
+ * Enforce that `<label>` elements have the `htmlFor` prop.
954
+ *
955
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/label-has-for.md
956
+ *
957
+ * ```md
958
+ * | key | value |
959
+ * | :--------- | :---- |
960
+ * | deprecated | true |
961
+ * ```
962
+ */
963
+ namespace LabelHasFor {
964
+ /**
965
+ * ### schema
966
+ *
967
+ * ```json
968
+ * [
969
+ * {
970
+ * "type": "object",
971
+ * "properties": {
972
+ * "components": {
973
+ * "type": "array",
974
+ * "items": {
975
+ * "type": "string"
976
+ * },
977
+ * "uniqueItems": true,
978
+ * "additionalItems": false
979
+ * },
980
+ * "required": {
981
+ * "oneOf": [
982
+ * {
983
+ * "type": "string",
984
+ * "enum": [
985
+ * "nesting",
986
+ * "id"
987
+ * ]
988
+ * },
989
+ * {
990
+ * "type": "object",
991
+ * "properties": {
992
+ * "some": {
993
+ * "type": "array",
994
+ * "items": {
995
+ * "type": "string",
996
+ * "enum": [
997
+ * "nesting",
998
+ * "id"
999
+ * ]
1000
+ * },
1001
+ * "uniqueItems": true,
1002
+ * "additionalItems": false,
1003
+ * "minItems": 0
1004
+ * }
1005
+ * },
1006
+ * "required": [
1007
+ * "some"
1008
+ * ]
1009
+ * },
1010
+ * {
1011
+ * "type": "object",
1012
+ * "properties": {
1013
+ * "every": {
1014
+ * "type": "array",
1015
+ * "items": {
1016
+ * "type": "string",
1017
+ * "enum": [
1018
+ * "nesting",
1019
+ * "id"
1020
+ * ]
1021
+ * },
1022
+ * "uniqueItems": true,
1023
+ * "additionalItems": false,
1024
+ * "minItems": 0
1025
+ * }
1026
+ * },
1027
+ * "required": [
1028
+ * "every"
1029
+ * ]
1030
+ * }
1031
+ * ]
1032
+ * },
1033
+ * "allowChildren": {
1034
+ * "type": "boolean"
1035
+ * }
1036
+ * }
1037
+ * }
1038
+ * ]
1039
+ * ```
1040
+ */
1041
+ export type RuleEntry = 0;
1042
+ }
1043
+
1044
+ /**
1045
+ * Enforce lang attribute has a valid value.
1046
+ *
1047
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/lang.md
1048
+ *
1049
+ * ```md
1050
+ * | key | value |
1051
+ * | :--------- | :---- |
1052
+ * | deprecated | false |
1053
+ * ```
1054
+ */
1055
+ namespace Lang {
1056
+ /**
1057
+ * ### schema
1058
+ *
1059
+ * ```json
1060
+ * [
1061
+ * {
1062
+ * "type": "object",
1063
+ * "properties": {}
1064
+ * }
1065
+ * ]
1066
+ * ```
1067
+ */
1068
+ export type Options = UnknownRecord;
1069
+
1070
+ export type RuleEntry =
1071
+ | Linter.StringSeverity
1072
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1073
+ }
1074
+
1075
+ /**
1076
+ * Enforces that `<audio>` and `<video>` elements must have a `<track>` for
1077
+ * captions.
1078
+ *
1079
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/media-has-caption.md
1080
+ *
1081
+ * ```md
1082
+ * | key | value |
1083
+ * | :--------- | :---- |
1084
+ * | deprecated | false |
1085
+ * ```
1086
+ */
1087
+ namespace MediaHasCaption {
1088
+ /**
1089
+ * ### schema
1090
+ *
1091
+ * ```json
1092
+ * [
1093
+ * {
1094
+ * "type": "object",
1095
+ * "properties": {
1096
+ * "audio": {
1097
+ * "type": "array",
1098
+ * "items": {
1099
+ * "type": "string"
1100
+ * },
1101
+ * "uniqueItems": true,
1102
+ * "additionalItems": false
1103
+ * },
1104
+ * "video": {
1105
+ * "type": "array",
1106
+ * "items": {
1107
+ * "type": "string"
1108
+ * },
1109
+ * "uniqueItems": true,
1110
+ * "additionalItems": false
1111
+ * },
1112
+ * "track": {
1113
+ * "type": "array",
1114
+ * "items": {
1115
+ * "type": "string"
1116
+ * },
1117
+ * "uniqueItems": true,
1118
+ * "additionalItems": false
1119
+ * }
1120
+ * }
1121
+ * }
1122
+ * ]
1123
+ * ```
1124
+ */
1125
+ export type Options = {
1126
+ readonly audio?: readonly string[];
1127
+ readonly video?: readonly string[];
1128
+ readonly track?: readonly string[];
1129
+ readonly [k: string]: unknown;
1130
+ };
1131
+
1132
+ export type RuleEntry =
1133
+ | Linter.StringSeverity
1134
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1135
+ }
1136
+
1137
+ /**
1138
+ * Enforce that `onMouseOver`/`onMouseOut` are accompanied by `onFocus`/`onBlur`
1139
+ * for keyboard-only users.
1140
+ *
1141
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/mouse-events-have-key-events.md
1142
+ *
1143
+ * ```md
1144
+ * | key | value |
1145
+ * | :--------- | :---- |
1146
+ * | deprecated | false |
1147
+ * ```
1148
+ */
1149
+ namespace MouseEventsHaveKeyEvents {
1150
+ /**
1151
+ * ### schema
1152
+ *
1153
+ * ```json
1154
+ * [
1155
+ * {
1156
+ * "type": "object",
1157
+ * "properties": {
1158
+ * "hoverInHandlers": {
1159
+ * "type": "array",
1160
+ * "items": {
1161
+ * "type": "string"
1162
+ * },
1163
+ * "uniqueItems": true,
1164
+ * "additionalItems": false,
1165
+ * "description": "An array of events that need to be accompanied by `onFocus`"
1166
+ * },
1167
+ * "hoverOutHandlers": {
1168
+ * "type": "array",
1169
+ * "items": {
1170
+ * "type": "string"
1171
+ * },
1172
+ * "uniqueItems": true,
1173
+ * "additionalItems": false,
1174
+ * "description": "An array of events that need to be accompanied by `onBlur`"
1175
+ * }
1176
+ * }
1177
+ * }
1178
+ * ]
1179
+ * ```
1180
+ */
1181
+ export type Options = {
1182
+ /** An array of events that need to be accompanied by `onFocus` */
1183
+ readonly hoverInHandlers?: readonly string[];
1184
+ /** An array of events that need to be accompanied by `onBlur` */
1185
+ readonly hoverOutHandlers?: readonly string[];
1186
+ readonly [k: string]: unknown;
1187
+ };
1188
+
1189
+ export type RuleEntry =
1190
+ | Linter.StringSeverity
1191
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1192
+ }
1193
+
1194
+ /**
1195
+ * Enforce that the `accessKey` prop is not used on any element to avoid
1196
+ * complications with keyboard commands used by a screen reader.
1197
+ *
1198
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-access-key.md
1199
+ *
1200
+ * ```md
1201
+ * | key | value |
1202
+ * | :--------- | :---- |
1203
+ * | deprecated | false |
1204
+ * ```
1205
+ */
1206
+ namespace NoAccessKey {
1207
+ /**
1208
+ * ### schema
1209
+ *
1210
+ * ```json
1211
+ * [
1212
+ * {
1213
+ * "type": "object",
1214
+ * "properties": {}
1215
+ * }
1216
+ * ]
1217
+ * ```
1218
+ */
1219
+ export type Options = UnknownRecord;
1220
+
1221
+ export type RuleEntry =
1222
+ | Linter.StringSeverity
1223
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1224
+ }
1225
+
1226
+ /**
1227
+ * Disallow `aria-hidden="true"` from being set on focusable elements.
1228
+ *
1229
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-aria-hidden-on-focusable.md
1230
+ *
1231
+ * ```md
1232
+ * | key | value |
1233
+ * | :--------- | :---- |
1234
+ * | deprecated | false |
1235
+ * ```
1236
+ */
1237
+ namespace NoAriaHiddenOnFocusable {
1238
+ /**
1239
+ * ### schema
1240
+ *
1241
+ * ```json
1242
+ * [
1243
+ * {
1244
+ * "type": "object",
1245
+ * "properties": {}
1246
+ * }
1247
+ * ]
1248
+ * ```
1249
+ */
1250
+ export type Options = UnknownRecord;
1251
+
1252
+ export type RuleEntry =
1253
+ | Linter.StringSeverity
1254
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1255
+ }
1256
+
1257
+ /**
1258
+ * Enforce autoFocus prop is not used.
1259
+ *
1260
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-autofocus.md
1261
+ *
1262
+ * ```md
1263
+ * | key | value |
1264
+ * | :--------- | :---- |
1265
+ * | deprecated | false |
1266
+ * ```
1267
+ */
1268
+ namespace NoAutofocus {
1269
+ /**
1270
+ * ### schema
1271
+ *
1272
+ * ```json
1273
+ * [
1274
+ * {
1275
+ * "type": "object",
1276
+ * "properties": {
1277
+ * "ignoreNonDOM": {
1278
+ * "type": "boolean",
1279
+ * "default": false
1280
+ * }
1281
+ * }
1282
+ * }
1283
+ * ]
1284
+ * ```
1285
+ */
1286
+ export type Options = {
1287
+ readonly ignoreNonDOM?: boolean;
1288
+ readonly [k: string]: unknown;
1289
+ };
1290
+
1291
+ export type RuleEntry =
1292
+ | Linter.StringSeverity
1293
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1294
+ }
1295
+
1296
+ /**
1297
+ * Enforce distracting elements are not used.
1298
+ *
1299
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-distracting-elements.md
1300
+ *
1301
+ * ```md
1302
+ * | key | value |
1303
+ * | :--------- | :---- |
1304
+ * | deprecated | false |
1305
+ * ```
1306
+ */
1307
+ namespace NoDistractingElements {
1308
+ /**
1309
+ * ### schema
1310
+ *
1311
+ * ```json
1312
+ * [
1313
+ * {
1314
+ * "type": "object",
1315
+ * "properties": {
1316
+ * "elements": {
1317
+ * "type": "array",
1318
+ * "items": {
1319
+ * "type": "string",
1320
+ * "enum": [
1321
+ * "marquee",
1322
+ * "blink"
1323
+ * ]
1324
+ * },
1325
+ * "uniqueItems": true,
1326
+ * "additionalItems": false,
1327
+ * "minItems": 0
1328
+ * }
1329
+ * }
1330
+ * }
1331
+ * ]
1332
+ * ```
1333
+ */
1334
+ export type Options = {
1335
+ /** @minItems 0 */
1336
+ readonly elements?: readonly ('blink' | 'marquee')[];
1337
+ readonly [k: string]: unknown;
1338
+ };
1339
+
1340
+ export type RuleEntry =
1341
+ | Linter.StringSeverity
1342
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1343
+ }
1344
+
1345
+ /**
1346
+ * Interactive elements should not be assigned non-interactive roles.
1347
+ *
1348
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-interactive-element-to-noninteractive-role.md
1349
+ *
1350
+ * ```md
1351
+ * | key | value |
1352
+ * | :--------- | :---- |
1353
+ * | deprecated | false |
1354
+ * ```
1355
+ */
1356
+ namespace NoInteractiveElementToNoninteractiveRole {
1357
+ /**
1358
+ * ### schema
1359
+ *
1360
+ * ```json
1361
+ * [
1362
+ * {
1363
+ * "type": "object",
1364
+ * "additionalProperties": {
1365
+ * "type": "array",
1366
+ * "items": {
1367
+ * "type": "string"
1368
+ * },
1369
+ * "uniqueItems": true
1370
+ * }
1371
+ * }
1372
+ * ]
1373
+ * ```
1374
+ */
1375
+ export type Options = Readonly<Record<string, readonly string[]>>;
1376
+
1377
+ export type RuleEntry =
1378
+ | Linter.StringSeverity
1379
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1380
+ }
1381
+
1382
+ /**
1383
+ * Non-interactive elements should not be assigned mouse or keyboard event
1384
+ * listeners.
1385
+ *
1386
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-element-interactions.md
1387
+ *
1388
+ * ```md
1389
+ * | key | value |
1390
+ * | :--------- | :---- |
1391
+ * | deprecated | false |
1392
+ * ```
1393
+ */
1394
+ namespace NoNoninteractiveElementInteractions {
1395
+ /**
1396
+ * ### schema
1397
+ *
1398
+ * ```json
1399
+ * [
1400
+ * {
1401
+ * "type": "object",
1402
+ * "properties": {
1403
+ * "handlers": {
1404
+ * "type": "array",
1405
+ * "items": {
1406
+ * "type": "string"
1407
+ * },
1408
+ * "uniqueItems": true,
1409
+ * "additionalItems": false
1410
+ * }
1411
+ * }
1412
+ * }
1413
+ * ]
1414
+ * ```
1415
+ */
1416
+ export type Options = {
1417
+ readonly handlers?: readonly string[];
1418
+ readonly [k: string]: unknown;
1419
+ };
1420
+
1421
+ export type RuleEntry =
1422
+ | Linter.StringSeverity
1423
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1424
+ }
1425
+
1426
+ /**
1427
+ * Non-interactive elements should not be assigned interactive roles.
1428
+ *
1429
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-element-to-interactive-role.md
1430
+ *
1431
+ * ```md
1432
+ * | key | value |
1433
+ * | :--------- | :---- |
1434
+ * | deprecated | false |
1435
+ * ```
1436
+ */
1437
+ namespace NoNoninteractiveElementToInteractiveRole {
1438
+ /**
1439
+ * ### schema
1440
+ *
1441
+ * ```json
1442
+ * [
1443
+ * {
1444
+ * "type": "object",
1445
+ * "additionalProperties": {
1446
+ * "type": "array",
1447
+ * "items": {
1448
+ * "type": "string"
1449
+ * },
1450
+ * "uniqueItems": true
1451
+ * }
1452
+ * }
1453
+ * ]
1454
+ * ```
1455
+ */
1456
+ export type Options = Readonly<Record<string, readonly string[]>>;
1457
+
1458
+ export type RuleEntry =
1459
+ | Linter.StringSeverity
1460
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1461
+ }
1462
+
1463
+ /**
1464
+ * `tabIndex` should only be declared on interactive elements.
1465
+ *
1466
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-tabindex.md
1467
+ *
1468
+ * ```md
1469
+ * | key | value |
1470
+ * | :--------- | :---- |
1471
+ * | deprecated | false |
1472
+ * ```
1473
+ */
1474
+ namespace NoNoninteractiveTabindex {
1475
+ /**
1476
+ * ### schema
1477
+ *
1478
+ * ```json
1479
+ * [
1480
+ * {
1481
+ * "type": "object",
1482
+ * "properties": {
1483
+ * "roles": {
1484
+ * "type": "array",
1485
+ * "items": {
1486
+ * "type": "string"
1487
+ * },
1488
+ * "uniqueItems": true,
1489
+ * "additionalItems": false,
1490
+ * "description": "An array of ARIA roles"
1491
+ * },
1492
+ * "tags": {
1493
+ * "type": "array",
1494
+ * "items": {
1495
+ * "type": "string"
1496
+ * },
1497
+ * "uniqueItems": true,
1498
+ * "additionalItems": false,
1499
+ * "description": "An array of HTML tag names"
1500
+ * }
1501
+ * }
1502
+ * }
1503
+ * ]
1504
+ * ```
1505
+ */
1506
+ export type Options = {
1507
+ /** An array of ARIA roles */
1508
+ readonly roles?: readonly string[];
1509
+ /** An array of HTML tag names */
1510
+ readonly tags?: readonly string[];
1511
+ readonly [k: string]: unknown;
1512
+ };
1513
+
1514
+ export type RuleEntry =
1515
+ | Linter.StringSeverity
1516
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1517
+ }
1518
+
1519
+ /**
1520
+ * Enforce usage of `onBlur` over `onChange` on select menus for accessibility.
1521
+ *
1522
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-onchange.md
1523
+ *
1524
+ * ```md
1525
+ * | key | value |
1526
+ * | :--------- | :---- |
1527
+ * | deprecated | true |
1528
+ * ```
1529
+ */
1530
+ namespace NoOnchange {
1531
+ /**
1532
+ * ### schema
1533
+ *
1534
+ * ```json
1535
+ * [
1536
+ * {
1537
+ * "type": "object",
1538
+ * "properties": {}
1539
+ * }
1540
+ * ]
1541
+ * ```
1542
+ */
1543
+ export type RuleEntry = 0;
1544
+ }
1545
+
1546
+ /**
1547
+ * Enforce explicit role property is not the same as implicit/default role
1548
+ * property on element.
1549
+ *
1550
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-redundant-roles.md
1551
+ *
1552
+ * ```md
1553
+ * | key | value |
1554
+ * | :--------- | :---- |
1555
+ * | deprecated | false |
1556
+ * ```
1557
+ */
1558
+ namespace NoRedundantRoles {
1559
+ /**
1560
+ * ### schema
1561
+ *
1562
+ * ```json
1563
+ * [
1564
+ * {
1565
+ * "type": "object",
1566
+ * "additionalProperties": {
1567
+ * "type": "array",
1568
+ * "items": {
1569
+ * "type": "string"
1570
+ * },
1571
+ * "uniqueItems": true
1572
+ * }
1573
+ * }
1574
+ * ]
1575
+ * ```
1576
+ */
1577
+ export type Options = Readonly<Record<string, readonly string[]>>;
1578
+
1579
+ export type RuleEntry =
1580
+ | Linter.StringSeverity
1581
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1582
+ }
1583
+
1584
+ /**
1585
+ * Enforce that non-interactive, visible elements (such as `<div>`) that have
1586
+ * click handlers use the role attribute.
1587
+ *
1588
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-static-element-interactions.md
1589
+ *
1590
+ * ```md
1591
+ * | key | value |
1592
+ * | :--------- | :---- |
1593
+ * | deprecated | false |
1594
+ * ```
1595
+ */
1596
+ namespace NoStaticElementInteractions {
1597
+ /**
1598
+ * ### schema
1599
+ *
1600
+ * ```json
1601
+ * [
1602
+ * {
1603
+ * "type": "object",
1604
+ * "properties": {
1605
+ * "handlers": {
1606
+ * "type": "array",
1607
+ * "items": {
1608
+ * "type": "string"
1609
+ * },
1610
+ * "uniqueItems": true,
1611
+ * "additionalItems": false
1612
+ * }
1613
+ * }
1614
+ * }
1615
+ * ]
1616
+ * ```
1617
+ */
1618
+ export type Options = {
1619
+ readonly handlers?: readonly string[];
1620
+ readonly [k: string]: unknown;
1621
+ };
1622
+
1623
+ export type RuleEntry =
1624
+ | Linter.StringSeverity
1625
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1626
+ }
1627
+
1628
+ /**
1629
+ * Enforces using semantic DOM elements over the ARIA `role` property.
1630
+ *
1631
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/prefer-tag-over-role.md
1632
+ *
1633
+ * ```md
1634
+ * | key | value |
1635
+ * | :--------- | :---- |
1636
+ * | deprecated | false |
1637
+ * ```
1638
+ */
1639
+ namespace PreferTagOverRole {
1640
+ /**
1641
+ * ### schema
1642
+ *
1643
+ * ```json
1644
+ * [
1645
+ * {
1646
+ * "type": "object",
1647
+ * "properties": {}
1648
+ * }
1649
+ * ]
1650
+ * ```
1651
+ */
1652
+ export type Options = UnknownRecord;
1653
+
1654
+ export type RuleEntry =
1655
+ | Linter.StringSeverity
1656
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1657
+ }
1658
+
1659
+ /**
1660
+ * Enforce that elements with ARIA roles must have all required attributes for
1661
+ * that role.
1662
+ *
1663
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/role-has-required-aria-props.md
1664
+ *
1665
+ * ```md
1666
+ * | key | value |
1667
+ * | :--------- | :---- |
1668
+ * | deprecated | false |
1669
+ * ```
1670
+ */
1671
+ namespace RoleHasRequiredAriaProps {
1672
+ /**
1673
+ * ### schema
1674
+ *
1675
+ * ```json
1676
+ * [
1677
+ * {
1678
+ * "type": "object",
1679
+ * "properties": {}
1680
+ * }
1681
+ * ]
1682
+ * ```
1683
+ */
1684
+ export type Options = UnknownRecord;
1685
+
1686
+ export type RuleEntry =
1687
+ | Linter.StringSeverity
1688
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1689
+ }
1690
+
1691
+ /**
1692
+ * Enforce that elements with explicit or implicit roles defined contain only
1693
+ * `aria-*` properties supported by that `role`.
1694
+ *
1695
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/role-supports-aria-props.md
1696
+ *
1697
+ * ```md
1698
+ * | key | value |
1699
+ * | :--------- | :---- |
1700
+ * | deprecated | false |
1701
+ * ```
1702
+ */
1703
+ namespace RoleSupportsAriaProps {
1704
+ /**
1705
+ * ### schema
1706
+ *
1707
+ * ```json
1708
+ * [
1709
+ * {
1710
+ * "type": "object",
1711
+ * "properties": {}
1712
+ * }
1713
+ * ]
1714
+ * ```
1715
+ */
1716
+ export type Options = UnknownRecord;
1717
+
1718
+ export type RuleEntry =
1719
+ | Linter.StringSeverity
1720
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1721
+ }
1722
+
1723
+ /**
1724
+ * Enforce `scope` prop is only used on `<th>` elements.
1725
+ *
1726
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/scope.md
1727
+ *
1728
+ * ```md
1729
+ * | key | value |
1730
+ * | :--------- | :---- |
1731
+ * | deprecated | false |
1732
+ * ```
1733
+ */
1734
+ namespace Scope {
1735
+ /**
1736
+ * ### schema
1737
+ *
1738
+ * ```json
1739
+ * [
1740
+ * {
1741
+ * "type": "object",
1742
+ * "properties": {}
1743
+ * }
1744
+ * ]
1745
+ * ```
1746
+ */
1747
+ export type Options = UnknownRecord;
1748
+
1749
+ export type RuleEntry =
1750
+ | Linter.StringSeverity
1751
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1752
+ }
1753
+
1754
+ /**
1755
+ * Enforce `tabIndex` value is not greater than zero.
1756
+ *
1757
+ * @link https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/tabindex-no-positive.md
1758
+ *
1759
+ * ```md
1760
+ * | key | value |
1761
+ * | :--------- | :---- |
1762
+ * | deprecated | false |
1763
+ * ```
1764
+ */
1765
+ namespace TabindexNoPositive {
1766
+ /**
1767
+ * ### schema
1768
+ *
1769
+ * ```json
1770
+ * [
1771
+ * {
1772
+ * "type": "object",
1773
+ * "properties": {}
1774
+ * }
1775
+ * ]
1776
+ * ```
1777
+ */
1778
+ export type Options = UnknownRecord;
1779
+
1780
+ export type RuleEntry =
1781
+ | Linter.StringSeverity
1782
+ | SpreadOptionsIfIsArray<readonly [Linter.RuleSeverity, Options]>;
1783
+ }
1784
+
1785
+ export type EslintJsxA11yRules = {
1786
+ readonly 'jsx-a11y/alt-text': AltText.RuleEntry;
1787
+ readonly 'jsx-a11y/anchor-ambiguous-text': AnchorAmbiguousText.RuleEntry;
1788
+ readonly 'jsx-a11y/anchor-has-content': AnchorHasContent.RuleEntry;
1789
+ readonly 'jsx-a11y/anchor-is-valid': AnchorIsValid.RuleEntry;
1790
+ readonly 'jsx-a11y/aria-activedescendant-has-tabindex': AriaActivedescendantHasTabindex.RuleEntry;
1791
+ readonly 'jsx-a11y/aria-props': AriaProps.RuleEntry;
1792
+ readonly 'jsx-a11y/aria-proptypes': AriaProptypes.RuleEntry;
1793
+ readonly 'jsx-a11y/aria-role': AriaRole.RuleEntry;
1794
+ readonly 'jsx-a11y/aria-unsupported-elements': AriaUnsupportedElements.RuleEntry;
1795
+ readonly 'jsx-a11y/autocomplete-valid': AutocompleteValid.RuleEntry;
1796
+ readonly 'jsx-a11y/click-events-have-key-events': ClickEventsHaveKeyEvents.RuleEntry;
1797
+ readonly 'jsx-a11y/control-has-associated-label': ControlHasAssociatedLabel.RuleEntry;
1798
+ readonly 'jsx-a11y/heading-has-content': HeadingHasContent.RuleEntry;
1799
+ readonly 'jsx-a11y/html-has-lang': HtmlHasLang.RuleEntry;
1800
+ readonly 'jsx-a11y/iframe-has-title': IframeHasTitle.RuleEntry;
1801
+ readonly 'jsx-a11y/img-redundant-alt': ImgRedundantAlt.RuleEntry;
1802
+ readonly 'jsx-a11y/interactive-supports-focus': InteractiveSupportsFocus.RuleEntry;
1803
+ readonly 'jsx-a11y/label-has-associated-control': LabelHasAssociatedControl.RuleEntry;
1804
+ readonly 'jsx-a11y/lang': Lang.RuleEntry;
1805
+ readonly 'jsx-a11y/media-has-caption': MediaHasCaption.RuleEntry;
1806
+ readonly 'jsx-a11y/mouse-events-have-key-events': MouseEventsHaveKeyEvents.RuleEntry;
1807
+ readonly 'jsx-a11y/no-access-key': NoAccessKey.RuleEntry;
1808
+ readonly 'jsx-a11y/no-aria-hidden-on-focusable': NoAriaHiddenOnFocusable.RuleEntry;
1809
+ readonly 'jsx-a11y/no-autofocus': NoAutofocus.RuleEntry;
1810
+ readonly 'jsx-a11y/no-distracting-elements': NoDistractingElements.RuleEntry;
1811
+ readonly 'jsx-a11y/no-interactive-element-to-noninteractive-role': NoInteractiveElementToNoninteractiveRole.RuleEntry;
1812
+ readonly 'jsx-a11y/no-noninteractive-element-interactions': NoNoninteractiveElementInteractions.RuleEntry;
1813
+ readonly 'jsx-a11y/no-noninteractive-element-to-interactive-role': NoNoninteractiveElementToInteractiveRole.RuleEntry;
1814
+ readonly 'jsx-a11y/no-noninteractive-tabindex': NoNoninteractiveTabindex.RuleEntry;
1815
+ readonly 'jsx-a11y/no-redundant-roles': NoRedundantRoles.RuleEntry;
1816
+ readonly 'jsx-a11y/no-static-element-interactions': NoStaticElementInteractions.RuleEntry;
1817
+ readonly 'jsx-a11y/prefer-tag-over-role': PreferTagOverRole.RuleEntry;
1818
+ readonly 'jsx-a11y/role-has-required-aria-props': RoleHasRequiredAriaProps.RuleEntry;
1819
+ readonly 'jsx-a11y/role-supports-aria-props': RoleSupportsAriaProps.RuleEntry;
1820
+ readonly 'jsx-a11y/scope': Scope.RuleEntry;
1821
+ readonly 'jsx-a11y/tabindex-no-positive': TabindexNoPositive.RuleEntry;
1822
+
1823
+ // deprecated
1824
+ readonly 'jsx-a11y/accessible-emoji': AccessibleEmoji.RuleEntry;
1825
+ readonly 'jsx-a11y/label-has-for': LabelHasFor.RuleEntry;
1826
+ readonly 'jsx-a11y/no-onchange': NoOnchange.RuleEntry;
1827
+ };
1828
+
1829
+ export type EslintJsxA11yRulesOption = {
1830
+ readonly 'jsx-a11y/alt-text': AltText.Options;
1831
+ readonly 'jsx-a11y/anchor-ambiguous-text': AnchorAmbiguousText.Options;
1832
+ readonly 'jsx-a11y/anchor-has-content': AnchorHasContent.Options;
1833
+ readonly 'jsx-a11y/anchor-is-valid': AnchorIsValid.Options;
1834
+ readonly 'jsx-a11y/aria-activedescendant-has-tabindex': AriaActivedescendantHasTabindex.Options;
1835
+ readonly 'jsx-a11y/aria-props': AriaProps.Options;
1836
+ readonly 'jsx-a11y/aria-proptypes': AriaProptypes.Options;
1837
+ readonly 'jsx-a11y/aria-role': AriaRole.Options;
1838
+ readonly 'jsx-a11y/aria-unsupported-elements': AriaUnsupportedElements.Options;
1839
+ readonly 'jsx-a11y/autocomplete-valid': AutocompleteValid.Options;
1840
+ readonly 'jsx-a11y/click-events-have-key-events': ClickEventsHaveKeyEvents.Options;
1841
+ readonly 'jsx-a11y/control-has-associated-label': ControlHasAssociatedLabel.Options;
1842
+ readonly 'jsx-a11y/heading-has-content': HeadingHasContent.Options;
1843
+ readonly 'jsx-a11y/html-has-lang': HtmlHasLang.Options;
1844
+ readonly 'jsx-a11y/iframe-has-title': IframeHasTitle.Options;
1845
+ readonly 'jsx-a11y/img-redundant-alt': ImgRedundantAlt.Options;
1846
+ readonly 'jsx-a11y/interactive-supports-focus': InteractiveSupportsFocus.Options;
1847
+ readonly 'jsx-a11y/label-has-associated-control': LabelHasAssociatedControl.Options;
1848
+ readonly 'jsx-a11y/lang': Lang.Options;
1849
+ readonly 'jsx-a11y/media-has-caption': MediaHasCaption.Options;
1850
+ readonly 'jsx-a11y/mouse-events-have-key-events': MouseEventsHaveKeyEvents.Options;
1851
+ readonly 'jsx-a11y/no-access-key': NoAccessKey.Options;
1852
+ readonly 'jsx-a11y/no-aria-hidden-on-focusable': NoAriaHiddenOnFocusable.Options;
1853
+ readonly 'jsx-a11y/no-autofocus': NoAutofocus.Options;
1854
+ readonly 'jsx-a11y/no-distracting-elements': NoDistractingElements.Options;
1855
+ readonly 'jsx-a11y/no-interactive-element-to-noninteractive-role': NoInteractiveElementToNoninteractiveRole.Options;
1856
+ readonly 'jsx-a11y/no-noninteractive-element-interactions': NoNoninteractiveElementInteractions.Options;
1857
+ readonly 'jsx-a11y/no-noninteractive-element-to-interactive-role': NoNoninteractiveElementToInteractiveRole.Options;
1858
+ readonly 'jsx-a11y/no-noninteractive-tabindex': NoNoninteractiveTabindex.Options;
1859
+ readonly 'jsx-a11y/no-redundant-roles': NoRedundantRoles.Options;
1860
+ readonly 'jsx-a11y/no-static-element-interactions': NoStaticElementInteractions.Options;
1861
+ readonly 'jsx-a11y/prefer-tag-over-role': PreferTagOverRole.Options;
1862
+ readonly 'jsx-a11y/role-has-required-aria-props': RoleHasRequiredAriaProps.Options;
1863
+ readonly 'jsx-a11y/role-supports-aria-props': RoleSupportsAriaProps.Options;
1864
+ readonly 'jsx-a11y/scope': Scope.Options;
1865
+ readonly 'jsx-a11y/tabindex-no-positive': TabindexNoPositive.Options;
1866
+ };