xo 0.51.0 → 0.52.2

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 (361) hide show
  1. package/lib/options-manager.js +104 -8
  2. package/node_modules/@typescript-eslint/eslint-plugin/README.md +1 -1
  3. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js +21 -8
  4. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js.map +1 -1
  5. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js +37 -31
  6. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js.map +1 -1
  7. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-dangle.js +10 -10
  8. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-dangle.js.map +1 -1
  9. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-generic-constructors.js +17 -4
  10. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-generic-constructors.js.map +1 -1
  11. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js +14 -8
  12. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js.map +1 -1
  13. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js +133 -43
  14. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js.map +1 -1
  15. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js +12 -1
  16. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js.map +1 -1
  17. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js +9 -2
  18. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js.map +1 -1
  19. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-enum-values.js +1 -1
  20. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-enum-values.js.map +1 -1
  21. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js +0 -1
  22. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js.map +1 -1
  23. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js +2 -1
  24. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js.map +1 -1
  25. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js +8 -2
  26. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js.map +1 -1
  27. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js +4 -0
  28. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js.map +1 -1
  29. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js +8 -3
  30. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js.map +1 -1
  31. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implicit-any-catch.js +1 -1
  32. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implicit-any-catch.js.map +1 -1
  33. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-meaningless-void-operator.js +0 -1
  34. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-meaningless-void-operator.js.map +1 -1
  35. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js +2 -0
  36. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js.map +1 -1
  37. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js +0 -1
  38. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js.map +1 -1
  39. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js +0 -1
  40. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js.map +1 -1
  41. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js +2 -0
  42. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js.map +1 -1
  43. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js +8 -0
  44. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js.map +1 -1
  45. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js +2 -0
  46. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js.map +1 -1
  47. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js +2 -0
  48. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js.map +1 -1
  49. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js +1 -0
  50. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js.map +1 -1
  51. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-constraint.js +3 -1
  52. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-constraint.js.map +1 -1
  53. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-argument.js +1 -1
  54. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-argument.js.map +1 -1
  55. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js +42 -12
  56. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js.map +1 -1
  57. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js +6 -3
  58. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js.map +1 -1
  59. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-empty-export.js +1 -2
  60. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-empty-export.js.map +1 -1
  61. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js +0 -1
  62. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js.map +1 -1
  63. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js +1 -0
  64. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js.map +1 -1
  65. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/padding-line-between-statements.js +5 -5
  66. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/padding-line-between-statements.js.map +1 -1
  67. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/parameter-properties.js +31 -23
  68. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/parameter-properties.js.map +1 -1
  69. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js +5 -1
  70. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js.map +1 -1
  71. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-enum-initializers.js +0 -1
  72. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-enum-initializers.js.map +1 -1
  73. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js +133 -4
  74. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js.map +1 -1
  75. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js +166 -86
  76. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js.map +1 -1
  77. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js +2 -0
  78. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js.map +1 -1
  79. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js +1 -0
  80. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js.map +1 -1
  81. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js +1 -1
  82. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js.map +1 -1
  83. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js +2 -0
  84. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js.map +1 -1
  85. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js +20 -5
  86. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js.map +1 -1
  87. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js +1 -1
  88. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js.map +1 -1
  89. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-union-intersection-members.js +3 -0
  90. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-union-intersection-members.js.map +1 -1
  91. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js +0 -1
  92. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js.map +1 -1
  93. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js +3 -1
  94. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js.map +1 -1
  95. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js +1 -0
  96. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js.map +1 -1
  97. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js +1 -0
  98. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js.map +1 -1
  99. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js +3 -0
  100. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js.map +1 -1
  101. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNodeEqual.js +27 -0
  102. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNodeEqual.js.map +1 -0
  103. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNullLiteral.js +9 -0
  104. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNullLiteral.js.map +1 -0
  105. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isUndefinedIdentifier.js +9 -0
  106. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isUndefinedIdentifier.js.map +1 -0
  107. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/TEMPLATE.md +3 -30
  108. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/adjacent-overload-signatures.md +6 -15
  109. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/array-type.md +6 -21
  110. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/await-thenable.md +6 -15
  111. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-ts-comment.md +8 -26
  112. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-tslint-comment.md +6 -15
  113. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-types.md +74 -95
  114. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/brace-style.md +6 -22
  115. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/camelcase.md +3 -1
  116. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/class-literal-property-style.md +9 -5
  117. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-dangle.md +9 -27
  118. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-spacing.md +6 -22
  119. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-generic-constructors.md +11 -20
  120. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-indexed-object-style.md +19 -21
  121. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-assertions.md +9 -21
  122. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-definitions.md +15 -18
  123. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-exports.md +9 -16
  124. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-imports.md +9 -19
  125. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/default-param-last.md +8 -24
  126. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/dot-notation.md +10 -22
  127. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-function-return-type.md +7 -33
  128. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-member-accessibility.md +7 -26
  129. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-module-boundary-types.md +7 -43
  130. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/func-call-spacing.md +6 -22
  131. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/indent.md +11 -23
  132. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/init-declarations.md +6 -22
  133. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/keyword-spacing.md +6 -22
  134. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/lines-between-class-members.md +8 -24
  135. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-delimiter-style.md +6 -2
  136. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-ordering.md +34 -9
  137. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/method-signature-style.md +6 -2
  138. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/naming-convention.md +6 -2
  139. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-array-constructor.md +6 -22
  140. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-base-to-string.md +7 -11
  141. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-confusing-non-null-assertion.md +6 -15
  142. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-confusing-void-expression.md +6 -38
  143. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-dupe-class-members.md +6 -22
  144. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-duplicate-enum-values.md +10 -19
  145. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-duplicate-imports.md +8 -28
  146. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-dynamic-delete.md +6 -15
  147. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-empty-function.md +6 -29
  148. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-empty-interface.md +6 -2
  149. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-explicit-any.md +6 -18
  150. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-non-null-assertion.md +6 -15
  151. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-parens.md +6 -22
  152. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-semi.md +6 -22
  153. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extraneous-class.md +6 -24
  154. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-floating-promises.md +6 -18
  155. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-for-in-array.md +6 -15
  156. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-implicit-any-catch.md +11 -20
  157. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-implied-eval.md +6 -18
  158. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-inferrable-types.md +11 -27
  159. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-this.md +6 -26
  160. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-void-type.md +6 -14
  161. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loop-func.md +6 -22
  162. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loss-of-precision.md +6 -19
  163. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-magic-numbers.md +6 -24
  164. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-meaningless-void-operator.md +6 -2
  165. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-misused-new.md +6 -15
  166. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-misused-promises.md +6 -2
  167. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-namespace.md +10 -13
  168. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-nullish-coalescing.md +6 -15
  169. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md +6 -15
  170. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-assertion.md +6 -15
  171. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-parameter-properties.md +11 -2
  172. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-redeclare.md +6 -19
  173. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-redundant-type-constituents.md +6 -15
  174. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-require-imports.md +6 -15
  175. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-restricted-imports.md +6 -13
  176. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-shadow.md +6 -19
  177. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-this-alias.md +6 -18
  178. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-throw-literal.md +25 -29
  179. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-type-alias.md +6 -14
  180. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md +6 -22
  181. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-condition.md +6 -16
  182. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-qualifier.md +6 -15
  183. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-arguments.md +6 -15
  184. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-assertion.md +8 -4
  185. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-constraint.md +6 -15
  186. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-argument.md +6 -15
  187. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-assignment.md +6 -15
  188. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-call.md +6 -15
  189. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-member-access.md +6 -15
  190. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-return.md +6 -15
  191. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-expressions.md +6 -22
  192. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-vars.md +6 -22
  193. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-use-before-define.md +6 -23
  194. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-constructor.md +7 -23
  195. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-empty-export.md +6 -15
  196. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-var-requires.md +6 -15
  197. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/non-nullable-type-assertion-style.md +6 -15
  198. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/object-curly-spacing.md +6 -22
  199. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/padding-line-between-statements.md +10 -31
  200. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/parameter-properties.md +6 -2
  201. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-as-const.md +6 -15
  202. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-enum-initializers.md +6 -15
  203. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-for-of.md +6 -15
  204. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-function-type.md +6 -15
  205. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-includes.md +6 -15
  206. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-literal-enum-member.md +6 -2
  207. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-namespace-keyword.md +6 -15
  208. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-nullish-coalescing.md +48 -2
  209. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-optional-chain.md +16 -15
  210. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly-parameter-types.md +6 -15
  211. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly.md +6 -4
  212. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-reduce-type-parameter.md +6 -15
  213. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-regexp-exec.md +6 -15
  214. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-return-this-type.md +6 -15
  215. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-string-starts-ends-with.md +6 -16
  216. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-ts-expect-error.md +6 -15
  217. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/promise-function-async.md +6 -31
  218. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/quotes.md +6 -22
  219. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-array-sort-compare.md +6 -18
  220. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-await.md +6 -20
  221. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/restrict-plus-operands.md +6 -24
  222. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/restrict-template-expressions.md +6 -27
  223. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/return-await.md +6 -12
  224. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/semi.md +6 -22
  225. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/sort-type-union-intersection-members.md +6 -45
  226. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-before-blocks.md +10 -22
  227. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-before-function-paren.md +6 -22
  228. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-infix-ops.md +7 -23
  229. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/strict-boolean-expressions.md +6 -25
  230. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/switch-exhaustiveness-check.md +6 -15
  231. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/triple-slash-reference.md +9 -19
  232. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/type-annotation-spacing.md +8 -14
  233. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/typedef.md +11 -27
  234. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/unbound-method.md +7 -23
  235. package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/unified-signatures.md +12 -18
  236. package/node_modules/@typescript-eslint/eslint-plugin/package.json +5 -5
  237. package/node_modules/@typescript-eslint/parser/README.md +1 -1
  238. package/node_modules/@typescript-eslint/parser/package.json +5 -5
  239. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.d.ts +2 -0
  240. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.d.ts.map +1 -1
  241. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.js +6 -0
  242. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.js.map +1 -1
  243. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.d.ts +1 -0
  244. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.d.ts.map +1 -1
  245. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.js +4 -0
  246. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.js.map +1 -1
  247. package/node_modules/@typescript-eslint/scope-manager/dist/scope/ClassStaticBlockScope.d.ts +1 -1
  248. package/node_modules/@typescript-eslint/scope-manager/dist/scope/ClassStaticBlockScope.d.ts.map +1 -1
  249. package/node_modules/@typescript-eslint/scope-manager/package.json +5 -5
  250. package/node_modules/@typescript-eslint/type-utils/package.json +4 -4
  251. package/node_modules/@typescript-eslint/types/dist/generated/ast-spec.d.ts +1 -1
  252. package/node_modules/@typescript-eslint/types/dist/generated/ast-spec.d.ts.map +1 -1
  253. package/node_modules/@typescript-eslint/types/dist/parser-options.d.ts +1 -0
  254. package/node_modules/@typescript-eslint/types/dist/parser-options.d.ts.map +1 -1
  255. package/node_modules/@typescript-eslint/types/package.json +2 -2
  256. package/node_modules/@typescript-eslint/typescript-estree/dist/convert.js +2 -2
  257. package/node_modules/@typescript-eslint/typescript-estree/dist/convert.js.map +1 -1
  258. package/node_modules/@typescript-eslint/typescript-estree/package.json +5 -5
  259. package/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.d.ts.map +1 -1
  260. package/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.js +2 -1
  261. package/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.js.map +1 -1
  262. package/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.d.ts.map +1 -1
  263. package/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.js +3 -4
  264. package/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.js.map +1 -1
  265. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts +4 -0
  266. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts.map +1 -1
  267. package/node_modules/@typescript-eslint/utils/package.json +5 -5
  268. package/node_modules/@typescript-eslint/visitor-keys/package.json +3 -3
  269. package/node_modules/eslint-config-xo-typescript/index.js +27 -11
  270. package/node_modules/eslint-config-xo-typescript/package.json +5 -4
  271. package/package.json +10 -10
  272. package/node_modules/@typescript-eslint/parser/_ts3.4/dist/index.d.ts +0 -4
  273. package/node_modules/@typescript-eslint/parser/_ts3.4/dist/parser.d.ts +0 -20
  274. package/node_modules/@typescript-eslint/type-utils/_ts3.4/dist/containsAllTypesByName.d.ts +0 -8
  275. package/node_modules/@typescript-eslint/type-utils/_ts3.4/dist/getConstrainedTypeAtLocation.d.ts +0 -6
  276. package/node_modules/@typescript-eslint/type-utils/_ts3.4/dist/getContextualType.d.ts +0 -8
  277. package/node_modules/@typescript-eslint/type-utils/_ts3.4/dist/getDeclaration.d.ts +0 -6
  278. package/node_modules/@typescript-eslint/type-utils/_ts3.4/dist/getSourceFileOfNode.d.ts +0 -6
  279. package/node_modules/@typescript-eslint/type-utils/_ts3.4/dist/getTokenAtPosition.d.ts +0 -3
  280. package/node_modules/@typescript-eslint/type-utils/_ts3.4/dist/getTypeArguments.d.ts +0 -3
  281. package/node_modules/@typescript-eslint/type-utils/_ts3.4/dist/getTypeName.d.ts +0 -8
  282. package/node_modules/@typescript-eslint/type-utils/_ts3.4/dist/index.d.ts +0 -15
  283. package/node_modules/@typescript-eslint/type-utils/_ts3.4/dist/isTypeReadonly.d.ts +0 -20
  284. package/node_modules/@typescript-eslint/type-utils/_ts3.4/dist/isUnsafeAssignment.d.ts +0 -17
  285. package/node_modules/@typescript-eslint/type-utils/_ts3.4/dist/predicates.d.ts +0 -52
  286. package/node_modules/@typescript-eslint/type-utils/_ts3.4/dist/propertyTypes.d.ts +0 -4
  287. package/node_modules/@typescript-eslint/type-utils/_ts3.4/dist/requiresQuoting.d.ts +0 -4
  288. package/node_modules/@typescript-eslint/type-utils/_ts3.4/dist/typeFlagUtils.d.ts +0 -11
  289. package/node_modules/@typescript-eslint/types/_ts3.4/dist/generated/ast-spec.d.ts +0 -1732
  290. package/node_modules/@typescript-eslint/types/_ts3.4/dist/index.d.ts +0 -5
  291. package/node_modules/@typescript-eslint/types/_ts3.4/dist/lib.d.ts +0 -3
  292. package/node_modules/@typescript-eslint/types/_ts3.4/dist/parser-options.d.ts +0 -35
  293. package/node_modules/@typescript-eslint/types/_ts3.4/dist/ts-estree.d.ts +0 -9
  294. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/ast-converter.d.ts +0 -9
  295. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/convert-comments.d.ts +0 -11
  296. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/convert.d.ts +0 -157
  297. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/create-program/WatchCompilerHostOfConfigFile.d.ts +0 -13
  298. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/create-program/createDefaultProgram.d.ts +0 -12
  299. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/create-program/createIsolatedProgram.d.ts +0 -9
  300. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/create-program/createProjectProgram.d.ts +0 -11
  301. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/create-program/createSourceFile.d.ts +0 -5
  302. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/create-program/createWatchProgram.d.ts +0 -19
  303. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/create-program/getScriptKind.d.ts +0 -5
  304. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/create-program/shared.d.ts +0 -22
  305. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/create-program/useProvidedPrograms.d.ts +0 -13
  306. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/index.d.ts +0 -10
  307. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/jsx/xhtml-entities.d.ts +0 -2
  308. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/node-utils.d.ts +0 -230
  309. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/parser-options.d.ts +0 -188
  310. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/parser.d.ts +0 -25
  311. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/semantic-or-syntactic-errors.d.ts +0 -13
  312. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/simple-traverse.d.ts +0 -9
  313. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/ts-estree/estree-to-ts-node-types.d.ts +0 -175
  314. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/ts-estree/index.d.ts +0 -4
  315. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/ts-estree/ts-nodes.d.ts +0 -18
  316. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/version-check.d.ts +0 -3
  317. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ast-utils/eslint-utils/PatternMatcher.d.ts +0 -48
  318. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts +0 -76
  319. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ast-utils/eslint-utils/astUtilities.d.ts +0 -76
  320. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ast-utils/eslint-utils/index.d.ts +0 -6
  321. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ast-utils/eslint-utils/predicates.d.ts +0 -32
  322. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts +0 -18
  323. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ast-utils/helpers.d.ts +0 -47
  324. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ast-utils/index.d.ts +0 -5
  325. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ast-utils/misc.d.ts +0 -8
  326. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ast-utils/predicates.d.ts +0 -180
  327. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/eslint-utils/InferTypesFromRule.d.ts +0 -11
  328. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/eslint-utils/RuleCreator.d.ts +0 -35
  329. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/eslint-utils/RuleTester.d.ts +0 -18
  330. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/eslint-utils/applyDefault.d.ts +0 -10
  331. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/eslint-utils/batchedSingleLineTests.d.ts +0 -24
  332. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/eslint-utils/deepMerge.d.ts +0 -17
  333. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/eslint-utils/getParserServices.d.ts +0 -8
  334. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/eslint-utils/index.d.ts +0 -9
  335. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/eslint-utils/nullThrows.d.ts +0 -14
  336. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/index.d.ts +0 -8
  337. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/json-schema.d.ts +0 -2
  338. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint/AST.d.ts +0 -9
  339. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint/CLIEngine.d.ts +0 -137
  340. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint/ESLint.d.ts +0 -376
  341. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint/Linter.d.ts +0 -326
  342. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint/ParserOptions.d.ts +0 -2
  343. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint/Rule.d.ts +0 -389
  344. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint/RuleTester.d.ts +0 -154
  345. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint/Scope.d.ts +0 -44
  346. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint/SourceCode.d.ts +0 -342
  347. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint/index.d.ts +0 -10
  348. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint-scope/Definition.d.ts +0 -19
  349. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint-scope/Options.d.ts +0 -15
  350. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint-scope/PatternVisitor.d.ts +0 -25
  351. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint-scope/Reference.d.ts +0 -28
  352. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint-scope/Referencer.d.ts +0 -55
  353. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint-scope/Scope.d.ts +0 -103
  354. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint-scope/ScopeManager.d.ts +0 -50
  355. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint-scope/Variable.d.ts +0 -17
  356. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint-scope/analyze.d.ts +0 -16
  357. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-eslint-scope/index.d.ts +0 -11
  358. package/node_modules/@typescript-eslint/utils/_ts3.4/dist/ts-estree.d.ts +0 -3
  359. package/node_modules/@typescript-eslint/visitor-keys/_ts3.4/dist/get-keys.d.ts +0 -4
  360. package/node_modules/@typescript-eslint/visitor-keys/_ts3.4/dist/index.d.ts +0 -3
  361. package/node_modules/@typescript-eslint/visitor-keys/_ts3.4/dist/visitor-keys.d.ts +0 -6
@@ -1,6 +1,10 @@
1
- # `no-unsafe-assignment`
1
+ ---
2
+ description: 'Disallow assigning a value with type `any` to variables and properties.'
3
+ ---
2
4
 
3
- Disallows assigning a value with type `any` to variables and properties.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/no-unsafe-assignment** for documentation.
4
8
 
5
9
  Despite your best intentions, the `any` type can sometimes leak into your codebase.
6
10
  Assigning an `any` typed value to a variable can be hard to pick up on, particularly if it leaks in from an external library. Operations on the variable will not be checked at all by TypeScript, so it creates a potential safety hole, and source of bugs in your codebase.
@@ -74,19 +78,6 @@ const x: unknown[] = y as any[];
74
78
  const x: Set<unknown> = y as Set<any>;
75
79
  ```
76
80
 
77
- ## Options
78
-
79
- ```jsonc
80
- // .eslintrc.json
81
- {
82
- "rules": {
83
- "@typescript-eslint/no-unsafe-assignment": "error"
84
- }
85
- }
86
- ```
87
-
88
- This rule is not configurable.
89
-
90
81
  ## Related To
91
82
 
92
83
  - [`no-explicit-any`](./no-explicit-any.md)
@@ -1,6 +1,10 @@
1
- # `no-unsafe-call`
1
+ ---
2
+ description: 'Disallow calling a value with type `any`.'
3
+ ---
2
4
 
3
- Disallows calling a value with type `any`.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/no-unsafe-call** for documentation.
4
8
 
5
9
  Despite your best intentions, the `any` type can sometimes leak into your codebase.
6
10
  The arguments to, and return value of calling an `any` typed variable are not checked at all by TypeScript, so it creates a potential safety hole, and source of bugs in your codebase.
@@ -48,19 +52,6 @@ new Map();
48
52
  String.raw`foo`;
49
53
  ```
50
54
 
51
- ## Options
52
-
53
- ```jsonc
54
- // .eslintrc.json
55
- {
56
- "rules": {
57
- "@typescript-eslint/no-unsafe-call": "error"
58
- }
59
- }
60
- ```
61
-
62
- This rule is not configurable.
63
-
64
55
  ## Related To
65
56
 
66
57
  - [`no-explicit-any`](./no-explicit-any.md)
@@ -1,6 +1,10 @@
1
- # `no-unsafe-member-access`
1
+ ---
2
+ description: 'Disallow member access on a value with type `any`.'
3
+ ---
2
4
 
3
- Disallows member access on a value with type `any`.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/no-unsafe-member-access** for documentation.
4
8
 
5
9
  Despite your best intentions, the `any` type can sometimes leak into your codebase.
6
10
  Member access on `any` typed variables is not checked at all by TypeScript, so it creates a potential safety hole, and source of bugs in your codebase.
@@ -54,19 +58,6 @@ arr[idx];
54
58
  arr[idx++];
55
59
  ```
56
60
 
57
- ## Options
58
-
59
- ```jsonc
60
- // .eslintrc.json
61
- {
62
- "rules": {
63
- "@typescript-eslint/no-unsafe-member-access": "error"
64
- }
65
- }
66
- ```
67
-
68
- This rule is not configurable.
69
-
70
61
  ## Related To
71
62
 
72
63
  - [`no-explicit-any`](./no-explicit-any.md)
@@ -1,6 +1,10 @@
1
- # `no-unsafe-return`
1
+ ---
2
+ description: 'Disallow returning a value with type `any` from a function.'
3
+ ---
2
4
 
3
- Disallows returning a value with type `any` from a function.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/no-unsafe-return** for documentation.
4
8
 
5
9
  Despite your best intentions, the `any` type can sometimes leak into your codebase.
6
10
  Returned `any` typed values are not checked at all by TypeScript, so it creates a potential safety hole, and source of bugs in your codebase.
@@ -91,19 +95,6 @@ function foo2(): unknown[] {
91
95
  }
92
96
  ```
93
97
 
94
- ## Options
95
-
96
- ```jsonc
97
- // .eslintrc.json
98
- {
99
- "rules": {
100
- "@typescript-eslint/no-unsafe-return": "error"
101
- }
102
- }
103
- ```
104
-
105
- This rule is not configurable.
106
-
107
98
  ## Related To
108
99
 
109
100
  - [`no-explicit-any`](./no-explicit-any.md)
@@ -1,28 +1,12 @@
1
- # `no-unused-expressions`
1
+ ---
2
+ description: 'Disallow unused expressions.'
3
+ ---
2
4
 
3
- Disallows unused expressions.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/no-unused-expressions** for documentation.
4
8
 
5
9
  ## Rule Details
6
10
 
7
11
  This rule extends the base [`eslint/no-unused-expressions`](https://eslint.org/docs/rules/no-unused-expressions) rule.
8
12
  It adds support for optional call expressions `x?.()`, and directive in module declarations.
9
-
10
- ## How to Use
11
-
12
- ```jsonc
13
- {
14
- // note you must disable the base rule as it can report incorrect errors
15
- "no-unused-expressions": "off",
16
- "@typescript-eslint/no-unused-expressions": ["error"]
17
- }
18
- ```
19
-
20
- ## Options
21
-
22
- See [`eslint/no-unused-expressions` options](https://eslint.org/docs/rules/no-unused-expressions#options).
23
-
24
- <sup>
25
-
26
- Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-unused-expressions.md)
27
-
28
- </sup>
@@ -1,28 +1,12 @@
1
- # `no-unused-vars`
1
+ ---
2
+ description: 'Disallow unused variables.'
3
+ ---
2
4
 
3
- Disallows unused variables.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/no-unused-vars** for documentation.
4
8
 
5
9
  ## Rule Details
6
10
 
7
11
  This rule extends the base [`eslint/no-unused-vars`](https://eslint.org/docs/rules/no-unused-vars) rule.
8
12
  It adds support for TypeScript features, such as types.
9
-
10
- ## How to Use
11
-
12
- ```jsonc
13
- {
14
- // note you must disable the base rule as it can report incorrect errors
15
- "no-unused-vars": "off",
16
- "@typescript-eslint/no-unused-vars": ["error"]
17
- }
18
- ```
19
-
20
- ## Options
21
-
22
- See [`eslint/no-unused-vars` options](https://eslint.org/docs/rules/no-unused-vars#options).
23
-
24
- <sup>
25
-
26
- Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-unused-vars.md)
27
-
28
- </sup>
@@ -1,25 +1,18 @@
1
- # `no-use-before-define`
1
+ ---
2
+ description: 'Disallow the use of variables before they are defined.'
3
+ ---
2
4
 
3
- Disallows the use of variables before they are defined.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/no-use-before-define** for documentation.
4
8
 
5
9
  ## Rule Details
6
10
 
7
11
  This rule extends the base [`eslint/no-use-before-define`](https://eslint.org/docs/rules/no-use-before-define) rule.
8
12
  It adds support for `type`, `interface` and `enum` declarations.
9
13
 
10
- ## How to Use
11
-
12
- ```jsonc
13
- {
14
- // note you must disable the base rule as it can report incorrect errors
15
- "no-use-before-define": "off",
16
- "@typescript-eslint/no-use-before-define": ["error"]
17
- }
18
- ```
19
-
20
14
  ## Options
21
15
 
22
- See [`eslint/no-use-before-define` options](https://eslint.org/docs/rules/no-use-before-define#options).
23
16
  This rule adds the following options:
24
17
 
25
18
  ```ts
@@ -102,13 +95,3 @@ type StringOrNumber = string | number;
102
95
  let var2: Enum;
103
96
  enum Enum {}
104
97
  ```
105
-
106
- ### Other Options
107
-
108
- See [`eslint/no-use-before-define` options](https://eslint.org/docs/rules/no-use-before-define#options).
109
-
110
- <sup>
111
-
112
- Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-use-before-define.md)
113
-
114
- </sup>
@@ -1,6 +1,10 @@
1
- # `no-useless-constructor`
1
+ ---
2
+ description: 'Disallow unnecessary constructors.'
3
+ ---
2
4
 
3
- Disallows unnecessary constructors.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/no-useless-constructor** for documentation.
4
8
 
5
9
  ## Rule Details
6
10
 
@@ -11,27 +15,7 @@ It adds support for:
11
15
  - `public` constructors when there is no superclass,
12
16
  - constructors with only parameter properties.
13
17
 
14
- ## How to Use
15
-
16
- ```jsonc
17
- {
18
- // note you must disable the base rule as it can report incorrect errors
19
- "no-useless-constructor": "off",
20
- "@typescript-eslint/no-useless-constructor": ["error"]
21
- }
22
- ```
23
-
24
- ## Options
25
-
26
- See [`eslint/no-useless-constructor` options](https://eslint.org/docs/rules/no-useless-constructor#options).
27
-
28
- <sup>
29
-
30
- Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-useless-constructor.md)
31
-
32
- </sup>
33
-
34
- ## Caveat
18
+ ### Caveat
35
19
 
36
20
  This lint rule will report on constructors whose sole purpose is to change visibility of a parent constructor.
37
21
  See [discussion on this rule's lack of type information](https://github.com/typescript-eslint/typescript-eslint/issues/3820#issuecomment-917821240) for context.
@@ -1,6 +1,10 @@
1
- # `no-useless-empty-export`
1
+ ---
2
+ description: "Disallow empty exports that don't change anything in a module file."
3
+ ---
2
4
 
3
- Disallows empty exports that don't change anything in a module file.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/no-useless-empty-export** for documentation.
4
8
 
5
9
  ## Rule Details
6
10
 
@@ -37,16 +41,3 @@ export const value = 'Hello, world!';
37
41
  ```ts
38
42
  import 'some-other-module';
39
43
  ```
40
-
41
- ## Options
42
-
43
- ```jsonc
44
- // .eslintrc.json
45
- {
46
- "rules": {
47
- "@typescript-eslint/no-useless-empty-export": "warn"
48
- }
49
- }
50
- ```
51
-
52
- This rule is not configurable.
@@ -1,6 +1,10 @@
1
- # `no-var-requires`
1
+ ---
2
+ description: 'Disallow `require` statements except in import statements.'
3
+ ---
2
4
 
3
- Disallows `require` statements except in import statements.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/no-var-requires** for documentation.
4
8
 
5
9
  In other words, the use of forms such as `var foo = require("foo")` are banned. Instead use ES6 style imports or `import foo = require("foo")` imports.
6
10
 
@@ -26,19 +30,6 @@ require('foo');
26
30
  import foo from 'foo';
27
31
  ```
28
32
 
29
- ## Options
30
-
31
- ```jsonc
32
- // .eslintrc.json
33
- {
34
- "rules": {
35
- "@typescript-eslint/no-var-requires": "error"
36
- }
37
- }
38
- ```
39
-
40
- This rule is not configurable.
41
-
42
33
  ## When Not To Use It
43
34
 
44
35
  If you don't care about TypeScript module syntax, then you will not need this rule.
@@ -1,6 +1,10 @@
1
- # `non-nullable-type-assertion-style`
1
+ ---
2
+ description: 'Enforce non-null assertions over explicit type casts.'
3
+ ---
2
4
 
3
- Enforces non-null assertions over explicit type casts.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/non-nullable-type-assertion-style** for documentation.
4
8
 
5
9
  This rule detects when an `as` cast is doing the same job as a `!` would, and suggests fixing the code to be an `!`.
6
10
 
@@ -28,19 +32,6 @@ const definitely = maybe!;
28
32
  const alsoDefinitely = maybe!;
29
33
  ```
30
34
 
31
- ## Options
32
-
33
- ```jsonc
34
- // .eslintrc.json
35
- {
36
- "rules": {
37
- "@typescript-eslint/non-nullable-type-assertion-style": "warn"
38
- }
39
- }
40
- ```
41
-
42
- This rule is not configurable.
43
-
44
35
  ## When Not To Use It
45
36
 
46
37
  If you don't mind having unnecessarily verbose type casts, you can avoid this rule.
@@ -1,28 +1,12 @@
1
- # `object-curly-spacing`
1
+ ---
2
+ description: 'Enforce consistent spacing inside braces.'
3
+ ---
2
4
 
3
- Enforces consistent spacing inside braces.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/object-curly-spacing** for documentation.
4
8
 
5
9
  ## Rule Details
6
10
 
7
11
  This rule extends the base [`eslint/object-curly-spacing`](https://eslint.org/docs/rules/object-curly-spacing) rule.
8
12
  It adds support for TypeScript's object types.
9
-
10
- ## How to Use
11
-
12
- ```jsonc
13
- {
14
- // note you must disable the base rule as it can report incorrect errors
15
- "object-curly-spacing": "off",
16
- "@typescript-eslint/object-curly-spacing": ["error"]
17
- }
18
- ```
19
-
20
- ## Options
21
-
22
- See [`eslint/object-curly-spacing` options](https://eslint.org/docs/rules/object-curly-spacing#options).
23
-
24
- <sup>
25
-
26
- Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/object-curly-spacing.md)
27
-
28
- </sup>
@@ -1,34 +1,25 @@
1
- # `padding-line-between-statements`
1
+ ---
2
+ description: 'Require or disallow padding lines between statements.'
3
+ ---
2
4
 
3
- Requires or disallows padding lines between statements.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/padding-line-between-statements** for documentation.
4
8
 
5
9
  ## Rule Details
6
10
 
7
11
  This rule extends the base [`eslint/padding-line-between-statements`](https://eslint.org/docs/rules/padding-line-between-statements) rule.
12
+ It adds support for TypeScript constructs such as `interface` and `type`.
8
13
 
9
- **It adds support for TypeScript constructs such as `interface` and `type`.**
14
+ ## Options
10
15
 
11
- ## How to Use
16
+ In addition to options provided by ESLint, `interface` and `type` can be used as statement types.
12
17
 
13
- ```jsonc
14
- {
15
- // note you must disable the base rule as it can report incorrect errors
16
- "padding-line-between-statements": "off",
17
- "@typescript-eslint/padding-line-between-statements": [
18
- "error",
19
- {
20
- "blankLine": "always",
21
- "prev": "var",
22
- "next": "return"
23
- }
24
- ]
25
- }
26
- ```
18
+ For example, to add blank lines before interfaces and type definitions:
27
19
 
28
20
  ```jsonc
29
21
  {
30
22
  // Example - Add blank lines before interface and type definitions.
31
- // note you must disable the base rule as it can report incorrect errors
32
23
  "padding-line-between-statements": "off",
33
24
  "@typescript-eslint/padding-line-between-statements": [
34
25
  "error",
@@ -41,16 +32,4 @@ This rule extends the base [`eslint/padding-line-between-statements`](https://es
41
32
  }
42
33
  ```
43
34
 
44
- ## Options
45
-
46
- See [`eslint/padding-line-between-statements` options](https://eslint.org/docs/rules/padding-line-between-statements#options).
47
-
48
- In addition to options provided by ESLint, `interface` and `type` can be used as statement types.
49
-
50
35
  **Note:** ESLint `cjs-export` and `cjs-import` statement types are renamed to `exports` and `require` respectively.
51
-
52
- <sup>
53
-
54
- Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/padding-line-between-statements.md)
55
-
56
- </sup>
@@ -1,6 +1,10 @@
1
- # `parameter-properties`
1
+ ---
2
+ description: 'Require or disallow parameter properties in class constructors.'
3
+ ---
2
4
 
3
- Requires or disallows parameter properties in class constructors.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/parameter-properties** for documentation.
4
8
 
5
9
  Parameter properties can be confusing to those new to TypeScript as they are less explicit than other ways
6
10
  of declaring and initializing class members.
@@ -1,6 +1,10 @@
1
- # `prefer-as-const`
1
+ ---
2
+ description: 'Enforce the use of `as const` over literal type.'
3
+ ---
2
4
 
3
- Enforces the use of `as const` over literal type.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/prefer-as-const** for documentation.
4
8
 
5
9
  This rule recommends usage of `const` assertion when type primitive value is equal to type.
6
10
 
@@ -31,19 +35,6 @@ let foo = { bar: 'baz' };
31
35
 
32
36
  <!--/tabs-->
33
37
 
34
- ## Options
35
-
36
- ```jsonc
37
- // .eslintrc.json
38
- {
39
- "rules": {
40
- "@typescript-eslint/prefer-as-const": "error"
41
- }
42
- }
43
- ```
44
-
45
- This rule is not configurable.
46
-
47
38
  ## When Not To Use It
48
39
 
49
40
  If you are using TypeScript < 3.4
@@ -1,6 +1,10 @@
1
- # `prefer-enum-initializers`
1
+ ---
2
+ description: 'Require each enum member value to be explicitly initialized.'
3
+ ---
2
4
 
3
- Requires each enum member value to be explicitly initialized.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/prefer-enum-initializers** for documentation.
4
8
 
5
9
  This rule recommends having each `enum`s member value explicitly initialized.
6
10
 
@@ -71,19 +75,6 @@ enum Color {
71
75
  }
72
76
  ```
73
77
 
74
- ## Options
75
-
76
- ```jsonc
77
- // .eslintrc.json
78
- {
79
- "rules": {
80
- "@typescript-eslint/prefer-enum-initializers": "warn"
81
- }
82
- }
83
- ```
84
-
85
- This rule is not configurable.
86
-
87
78
  ## When Not To Use It
88
79
 
89
80
  If you don't care about `enum`s having implicit values you can safely disable this rule.
@@ -1,6 +1,10 @@
1
- # `prefer-for-of`
1
+ ---
2
+ description: 'Enforce the use of `for-of` loop over the standard `for` loop where possible.'
3
+ ---
2
4
 
3
- Enforces the use of `for-of` loop over the standard `for` loop where possible.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/prefer-for-of** for documentation.
4
8
 
5
9
  This rule recommends a for-of loop when the loop index is only used to read from an array that is being iterated.
6
10
 
@@ -38,19 +42,6 @@ for (let i = 0; i < arr.length; i++) {
38
42
  }
39
43
  ```
40
44
 
41
- ## Options
42
-
43
- ```jsonc
44
- // .eslintrc.json
45
- {
46
- "rules": {
47
- "@typescript-eslint/prefer-for-of": "warn"
48
- }
49
- }
50
- ```
51
-
52
- This rule is not configurable.
53
-
54
45
  ## When Not To Use It
55
46
 
56
47
  If you transpile for browsers that do not support for-of loops, you may wish to use traditional for loops that produce more compact code.
@@ -1,6 +1,10 @@
1
- # `prefer-function-type`
1
+ ---
2
+ description: 'Enforce using function types instead of interfaces with call signatures.'
3
+ ---
2
4
 
3
- Enforces using function types instead of interfaces with call signatures.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/prefer-function-type** for documentation.
4
8
 
5
9
  ## Rule Details
6
10
 
@@ -78,19 +82,6 @@ interface Overloaded {
78
82
  type Intersection = ((data: string) => number) & ((id: number) => string);
79
83
  ```
80
84
 
81
- ## Options
82
-
83
- ```jsonc
84
- // .eslintrc.json
85
- {
86
- "rules": {
87
- "@typescript-eslint/prefer-function-type": "warn"
88
- }
89
- }
90
- ```
91
-
92
- This rule is not configurable.
93
-
94
85
  ## When Not To Use It
95
86
 
96
87
  If you specifically want to use an interface or type literal with a single call signature for stylistic reasons, you can disable this rule.
@@ -1,6 +1,10 @@
1
- # `prefer-includes`
1
+ ---
2
+ description: 'Enforce `includes` method over `indexOf` method.'
3
+ ---
2
4
 
3
- Enforces `includes` method over `indexOf` method.
5
+ > 🛑 This file is source code, not the primary documentation location! 🛑
6
+ >
7
+ > See **https://typescript-eslint.io/rules/prefer-includes** for documentation.
4
8
 
5
9
  Until ES5, we were using `String#indexOf` method to check whether a string contains an arbitrary substring or not.
6
10
  Until ES2015, we were using `Array#indexOf` method to check whether an array contains an arbitrary value or not.
@@ -70,19 +74,6 @@ userDefined.includes(value);
70
74
  mismatchExample.indexOf(value) >= 0;
71
75
  ```
72
76
 
73
- ## Options
74
-
75
- ```jsonc
76
- // .eslintrc.json
77
- {
78
- "rules": {
79
- "@typescript-eslint/prefer-includes": "warn"
80
- }
81
- }
82
- ```
83
-
84
- This rule is not configurable.
85
-
86
77
  ## When Not To Use It
87
78
 
88
79
  If you don't want to suggest `includes`, you can safely turn this rule off.