@kazupon/eslint-config 0.26.1 → 0.28.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.
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { FlatConfigComposer } from 'eslint-flat-config-utils';
2
2
  import { Awaitable } from '@kazupon/jts-utils/types';
3
3
  import { Linter, ESLint } from 'eslint';
4
+ import { StylisticCustomizeOptions } from '@stylistic/eslint-plugin';
4
5
 
5
6
  /**
6
7
  * define eslint configurations
@@ -109,8 +110,9 @@ interface CssRules {
109
110
  'css/prefer-logical-properties'?: Linter.RuleEntry<CssPreferLogicalProperties>;
110
111
  /**
111
112
  * Enforce the use of baseline features
113
+ * @see https://github.com/eslint/css/blob/main/docs/rules/use-baseline.md
112
114
  */
113
- 'css/require-baseline'?: Linter.RuleEntry<CssRequireBaseline>;
115
+ 'css/use-baseline'?: Linter.RuleEntry<CssUseBaseline>;
114
116
  /**
115
117
  * Require use of layers
116
118
  * @see https://github.com/eslint/css/blob/main/docs/rules/use-layers.md
@@ -123,7 +125,7 @@ type CssPreferLogicalProperties = [] | [
123
125
  allowUnits?: string[];
124
126
  }
125
127
  ];
126
- type CssRequireBaseline = [] | [
128
+ type CssUseBaseline = [] | [
127
129
  {
128
130
  available?: (("widely" | "newly") | number);
129
131
  }
@@ -6948,6 +6950,1726 @@ type RegexpUnicodeProperty = [] | [
6948
6950
  }
6949
6951
  ];
6950
6952
 
6953
+ interface StylisticRules {
6954
+ /**
6955
+ * Enforce linebreaks after opening and before closing array brackets
6956
+ * @see https://eslint.style/rules/js/array-bracket-newline
6957
+ */
6958
+ '@stylistic/array-bracket-newline'?: Linter.RuleEntry<StylisticArrayBracketNewline>;
6959
+ /**
6960
+ * Enforce consistent spacing inside array brackets
6961
+ * @see https://eslint.style/rules/js/array-bracket-spacing
6962
+ */
6963
+ '@stylistic/array-bracket-spacing'?: Linter.RuleEntry<StylisticArrayBracketSpacing>;
6964
+ /**
6965
+ * Enforce line breaks after each array element
6966
+ * @see https://eslint.style/rules/js/array-element-newline
6967
+ */
6968
+ '@stylistic/array-element-newline'?: Linter.RuleEntry<StylisticArrayElementNewline>;
6969
+ /**
6970
+ * Require parentheses around arrow function arguments
6971
+ * @see https://eslint.style/rules/js/arrow-parens
6972
+ */
6973
+ '@stylistic/arrow-parens'?: Linter.RuleEntry<StylisticArrowParens>;
6974
+ /**
6975
+ * Enforce consistent spacing before and after the arrow in arrow functions
6976
+ * @see https://eslint.style/rules/js/arrow-spacing
6977
+ */
6978
+ '@stylistic/arrow-spacing'?: Linter.RuleEntry<StylisticArrowSpacing>;
6979
+ /**
6980
+ * Disallow or enforce spaces inside of blocks after opening block and before closing block
6981
+ * @see https://eslint.style/rules/ts/block-spacing
6982
+ */
6983
+ '@stylistic/block-spacing'?: Linter.RuleEntry<StylisticBlockSpacing>;
6984
+ /**
6985
+ * Enforce consistent brace style for blocks
6986
+ * @see https://eslint.style/rules/ts/brace-style
6987
+ */
6988
+ '@stylistic/brace-style'?: Linter.RuleEntry<StylisticBraceStyle>;
6989
+ /**
6990
+ * Require or disallow trailing commas
6991
+ * @see https://eslint.style/rules/ts/comma-dangle
6992
+ */
6993
+ '@stylistic/comma-dangle'?: Linter.RuleEntry<StylisticCommaDangle>;
6994
+ /**
6995
+ * Enforce consistent spacing before and after commas
6996
+ * @see https://eslint.style/rules/ts/comma-spacing
6997
+ */
6998
+ '@stylistic/comma-spacing'?: Linter.RuleEntry<StylisticCommaSpacing>;
6999
+ /**
7000
+ * Enforce consistent comma style
7001
+ * @see https://eslint.style/rules/js/comma-style
7002
+ */
7003
+ '@stylistic/comma-style'?: Linter.RuleEntry<StylisticCommaStyle>;
7004
+ /**
7005
+ * Enforce consistent spacing inside computed property brackets
7006
+ * @see https://eslint.style/rules/js/computed-property-spacing
7007
+ */
7008
+ '@stylistic/computed-property-spacing'?: Linter.RuleEntry<StylisticComputedPropertySpacing>;
7009
+ /**
7010
+ * Enforce consistent line breaks after opening and before closing braces
7011
+ * @see https://eslint.style/rules/plus/curly-newline
7012
+ */
7013
+ '@stylistic/curly-newline'?: Linter.RuleEntry<StylisticCurlyNewline>;
7014
+ /**
7015
+ * Enforce consistent newlines before and after dots
7016
+ * @see https://eslint.style/rules/js/dot-location
7017
+ */
7018
+ '@stylistic/dot-location'?: Linter.RuleEntry<StylisticDotLocation>;
7019
+ /**
7020
+ * Require or disallow newline at the end of files
7021
+ * @see https://eslint.style/rules/js/eol-last
7022
+ */
7023
+ '@stylistic/eol-last'?: Linter.RuleEntry<StylisticEolLast>;
7024
+ /**
7025
+ * Require or disallow spacing between function identifiers and their invocations
7026
+ * @see https://eslint.style/rules/ts/function-call-spacing
7027
+ */
7028
+ '@stylistic/func-call-spacing'?: Linter.RuleEntry<StylisticFuncCallSpacing>;
7029
+ /**
7030
+ * Enforce line breaks between arguments of a function call
7031
+ * @see https://eslint.style/rules/js/function-call-argument-newline
7032
+ */
7033
+ '@stylistic/function-call-argument-newline'?: Linter.RuleEntry<StylisticFunctionCallArgumentNewline>;
7034
+ /**
7035
+ * Require or disallow spacing between function identifiers and their invocations
7036
+ * @see https://eslint.style/rules/ts/function-call-spacing
7037
+ */
7038
+ '@stylistic/function-call-spacing'?: Linter.RuleEntry<StylisticFunctionCallSpacing>;
7039
+ /**
7040
+ * Enforce consistent line breaks inside function parentheses
7041
+ * @see https://eslint.style/rules/js/function-paren-newline
7042
+ */
7043
+ '@stylistic/function-paren-newline'?: Linter.RuleEntry<StylisticFunctionParenNewline>;
7044
+ /**
7045
+ * Enforce consistent spacing around `*` operators in generator functions
7046
+ * @see https://eslint.style/rules/js/generator-star-spacing
7047
+ */
7048
+ '@stylistic/generator-star-spacing'?: Linter.RuleEntry<StylisticGeneratorStarSpacing>;
7049
+ /**
7050
+ * Enforce the location of arrow function bodies
7051
+ * @see https://eslint.style/rules/js/implicit-arrow-linebreak
7052
+ */
7053
+ '@stylistic/implicit-arrow-linebreak'?: Linter.RuleEntry<StylisticImplicitArrowLinebreak>;
7054
+ /**
7055
+ * Enforce consistent indentation
7056
+ * @see https://eslint.style/rules/ts/indent
7057
+ */
7058
+ '@stylistic/indent'?: Linter.RuleEntry<StylisticIndent>;
7059
+ /**
7060
+ * Indentation for binary operators
7061
+ * @see https://eslint.style/rules/plus/indent-binary-ops
7062
+ */
7063
+ '@stylistic/indent-binary-ops'?: Linter.RuleEntry<StylisticIndentBinaryOps>;
7064
+ /**
7065
+ * Enforce or disallow spaces inside of curly braces in JSX attributes and expressions
7066
+ * @see https://eslint.style/rules/jsx/jsx-child-element-spacing
7067
+ */
7068
+ '@stylistic/jsx-child-element-spacing'?: Linter.RuleEntry<[]>;
7069
+ /**
7070
+ * Enforce closing bracket location in JSX
7071
+ * @see https://eslint.style/rules/jsx/jsx-closing-bracket-location
7072
+ */
7073
+ '@stylistic/jsx-closing-bracket-location'?: Linter.RuleEntry<StylisticJsxClosingBracketLocation>;
7074
+ /**
7075
+ * Enforce closing tag location for multiline JSX
7076
+ * @see https://eslint.style/rules/jsx/jsx-closing-tag-location
7077
+ */
7078
+ '@stylistic/jsx-closing-tag-location'?: Linter.RuleEntry<StylisticJsxClosingTagLocation>;
7079
+ /**
7080
+ * Disallow unnecessary JSX expressions when literals alone are sufficient or enforce JSX expressions on literals in JSX children or attributes
7081
+ * @see https://eslint.style/rules/jsx/jsx-curly-brace-presence
7082
+ */
7083
+ '@stylistic/jsx-curly-brace-presence'?: Linter.RuleEntry<StylisticJsxCurlyBracePresence>;
7084
+ /**
7085
+ * Enforce consistent linebreaks in curly braces in JSX attributes and expressions
7086
+ * @see https://eslint.style/rules/jsx/jsx-curly-newline
7087
+ */
7088
+ '@stylistic/jsx-curly-newline'?: Linter.RuleEntry<StylisticJsxCurlyNewline>;
7089
+ /**
7090
+ * Enforce or disallow spaces inside of curly braces in JSX attributes and expressions
7091
+ * @see https://eslint.style/rules/jsx/jsx-curly-spacing
7092
+ */
7093
+ '@stylistic/jsx-curly-spacing'?: Linter.RuleEntry<StylisticJsxCurlySpacing>;
7094
+ /**
7095
+ * Enforce or disallow spaces around equal signs in JSX attributes
7096
+ * @see https://eslint.style/rules/jsx/jsx-equals-spacing
7097
+ */
7098
+ '@stylistic/jsx-equals-spacing'?: Linter.RuleEntry<StylisticJsxEqualsSpacing>;
7099
+ /**
7100
+ * Enforce proper position of the first property in JSX
7101
+ * @see https://eslint.style/rules/jsx/jsx-first-prop-new-line
7102
+ */
7103
+ '@stylistic/jsx-first-prop-new-line'?: Linter.RuleEntry<StylisticJsxFirstPropNewLine>;
7104
+ /**
7105
+ * Enforce line breaks before and after JSX elements when they are used as arguments to a function.
7106
+ * @see https://eslint.style/rules/jsx/jsx-function-call-newline
7107
+ */
7108
+ '@stylistic/jsx-function-call-newline'?: Linter.RuleEntry<StylisticJsxFunctionCallNewline>;
7109
+ /**
7110
+ * Enforce JSX indentation. Deprecated, use `indent` rule instead.
7111
+ * @see https://eslint.style/rules/jsx/jsx-indent
7112
+ * @deprecated
7113
+ */
7114
+ '@stylistic/jsx-indent'?: Linter.RuleEntry<StylisticJsxIndent>;
7115
+ /**
7116
+ * Enforce props indentation in JSX
7117
+ * @see https://eslint.style/rules/jsx/jsx-indent-props
7118
+ */
7119
+ '@stylistic/jsx-indent-props'?: Linter.RuleEntry<StylisticJsxIndentProps>;
7120
+ /**
7121
+ * Enforce maximum of props on a single line in JSX
7122
+ * @see https://eslint.style/rules/jsx/jsx-max-props-per-line
7123
+ */
7124
+ '@stylistic/jsx-max-props-per-line'?: Linter.RuleEntry<StylisticJsxMaxPropsPerLine>;
7125
+ /**
7126
+ * Require or prevent a new line after jsx elements and expressions.
7127
+ * @see https://eslint.style/rules/jsx/jsx-newline
7128
+ */
7129
+ '@stylistic/jsx-newline'?: Linter.RuleEntry<StylisticJsxNewline>;
7130
+ /**
7131
+ * Require one JSX element per line
7132
+ * @see https://eslint.style/rules/jsx/jsx-one-expression-per-line
7133
+ */
7134
+ '@stylistic/jsx-one-expression-per-line'?: Linter.RuleEntry<StylisticJsxOneExpressionPerLine>;
7135
+ /**
7136
+ * Enforce PascalCase for user-defined JSX components
7137
+ * @see https://eslint.style/rules/jsx/jsx-pascal-case
7138
+ */
7139
+ '@stylistic/jsx-pascal-case'?: Linter.RuleEntry<StylisticJsxPascalCase>;
7140
+ /**
7141
+ * Disallow multiple spaces between inline JSX props
7142
+ * @see https://eslint.style/rules/jsx/jsx-props-no-multi-spaces
7143
+ */
7144
+ '@stylistic/jsx-props-no-multi-spaces'?: Linter.RuleEntry<[]>;
7145
+ /**
7146
+ * Enforce the consistent use of either double or single quotes in JSX attributes
7147
+ * @see https://eslint.style/rules/js/jsx-quotes
7148
+ */
7149
+ '@stylistic/jsx-quotes'?: Linter.RuleEntry<StylisticJsxQuotes>;
7150
+ /**
7151
+ * Disallow extra closing tags for components without children
7152
+ * @see https://eslint.style/rules/jsx/jsx-self-closing-comp
7153
+ */
7154
+ '@stylistic/jsx-self-closing-comp'?: Linter.RuleEntry<StylisticJsxSelfClosingComp>;
7155
+ /**
7156
+ * Enforce props alphabetical sorting
7157
+ * @see https://eslint.style/rules/jsx/jsx-sort-props
7158
+ */
7159
+ '@stylistic/jsx-sort-props'?: Linter.RuleEntry<StylisticJsxSortProps>;
7160
+ /**
7161
+ * Enforce whitespace in and around the JSX opening and closing brackets
7162
+ * @see https://eslint.style/rules/jsx/jsx-tag-spacing
7163
+ */
7164
+ '@stylistic/jsx-tag-spacing'?: Linter.RuleEntry<StylisticJsxTagSpacing>;
7165
+ /**
7166
+ * Disallow missing parentheses around multiline JSX
7167
+ * @see https://eslint.style/rules/jsx/jsx-wrap-multilines
7168
+ */
7169
+ '@stylistic/jsx-wrap-multilines'?: Linter.RuleEntry<StylisticJsxWrapMultilines>;
7170
+ /**
7171
+ * Enforce consistent spacing between property names and type annotations in types and interfaces
7172
+ * @see https://eslint.style/rules/ts/key-spacing
7173
+ */
7174
+ '@stylistic/key-spacing'?: Linter.RuleEntry<StylisticKeySpacing>;
7175
+ /**
7176
+ * Enforce consistent spacing before and after keywords
7177
+ * @see https://eslint.style/rules/ts/keyword-spacing
7178
+ */
7179
+ '@stylistic/keyword-spacing'?: Linter.RuleEntry<StylisticKeywordSpacing>;
7180
+ /**
7181
+ * Enforce position of line comments
7182
+ * @see https://eslint.style/rules/js/line-comment-position
7183
+ */
7184
+ '@stylistic/line-comment-position'?: Linter.RuleEntry<StylisticLineCommentPosition>;
7185
+ /**
7186
+ * Enforce consistent linebreak style
7187
+ * @see https://eslint.style/rules/js/linebreak-style
7188
+ */
7189
+ '@stylistic/linebreak-style'?: Linter.RuleEntry<StylisticLinebreakStyle>;
7190
+ /**
7191
+ * Require empty lines around comments
7192
+ * @see https://eslint.style/rules/ts/lines-around-comment
7193
+ */
7194
+ '@stylistic/lines-around-comment'?: Linter.RuleEntry<StylisticLinesAroundComment>;
7195
+ /**
7196
+ * Require or disallow an empty line between class members
7197
+ * @see https://eslint.style/rules/ts/lines-between-class-members
7198
+ */
7199
+ '@stylistic/lines-between-class-members'?: Linter.RuleEntry<StylisticLinesBetweenClassMembers>;
7200
+ /**
7201
+ * Enforce a maximum line length
7202
+ * @see https://eslint.style/rules/js/max-len
7203
+ */
7204
+ '@stylistic/max-len'?: Linter.RuleEntry<StylisticMaxLen>;
7205
+ /**
7206
+ * Enforce a maximum number of statements allowed per line
7207
+ * @see https://eslint.style/rules/js/max-statements-per-line
7208
+ */
7209
+ '@stylistic/max-statements-per-line'?: Linter.RuleEntry<StylisticMaxStatementsPerLine>;
7210
+ /**
7211
+ * Require a specific member delimiter style for interfaces and type literals
7212
+ * @see https://eslint.style/rules/ts/member-delimiter-style
7213
+ */
7214
+ '@stylistic/member-delimiter-style'?: Linter.RuleEntry<StylisticMemberDelimiterStyle>;
7215
+ /**
7216
+ * Enforce a particular style for multiline comments
7217
+ * @see https://eslint.style/rules/js/multiline-comment-style
7218
+ */
7219
+ '@stylistic/multiline-comment-style'?: Linter.RuleEntry<StylisticMultilineCommentStyle>;
7220
+ /**
7221
+ * Enforce newlines between operands of ternary expressions
7222
+ * @see https://eslint.style/rules/js/multiline-ternary
7223
+ */
7224
+ '@stylistic/multiline-ternary'?: Linter.RuleEntry<StylisticMultilineTernary>;
7225
+ /**
7226
+ * Enforce or disallow parentheses when invoking a constructor with no arguments
7227
+ * @see https://eslint.style/rules/js/new-parens
7228
+ */
7229
+ '@stylistic/new-parens'?: Linter.RuleEntry<StylisticNewParens>;
7230
+ /**
7231
+ * Require a newline after each call in a method chain
7232
+ * @see https://eslint.style/rules/js/newline-per-chained-call
7233
+ */
7234
+ '@stylistic/newline-per-chained-call'?: Linter.RuleEntry<StylisticNewlinePerChainedCall>;
7235
+ /**
7236
+ * Disallow arrow functions where they could be confused with comparisons
7237
+ * @see https://eslint.style/rules/js/no-confusing-arrow
7238
+ */
7239
+ '@stylistic/no-confusing-arrow'?: Linter.RuleEntry<StylisticNoConfusingArrow>;
7240
+ /**
7241
+ * Disallow unnecessary parentheses
7242
+ * @see https://eslint.style/rules/ts/no-extra-parens
7243
+ */
7244
+ '@stylistic/no-extra-parens'?: Linter.RuleEntry<StylisticNoExtraParens>;
7245
+ /**
7246
+ * Disallow unnecessary semicolons
7247
+ * @see https://eslint.style/rules/ts/no-extra-semi
7248
+ */
7249
+ '@stylistic/no-extra-semi'?: Linter.RuleEntry<[]>;
7250
+ /**
7251
+ * Disallow leading or trailing decimal points in numeric literals
7252
+ * @see https://eslint.style/rules/js/no-floating-decimal
7253
+ */
7254
+ '@stylistic/no-floating-decimal'?: Linter.RuleEntry<[]>;
7255
+ /**
7256
+ * Disallow mixed binary operators
7257
+ * @see https://eslint.style/rules/js/no-mixed-operators
7258
+ */
7259
+ '@stylistic/no-mixed-operators'?: Linter.RuleEntry<StylisticNoMixedOperators>;
7260
+ /**
7261
+ * Disallow mixed spaces and tabs for indentation
7262
+ * @see https://eslint.style/rules/js/no-mixed-spaces-and-tabs
7263
+ */
7264
+ '@stylistic/no-mixed-spaces-and-tabs'?: Linter.RuleEntry<StylisticNoMixedSpacesAndTabs>;
7265
+ /**
7266
+ * Disallow multiple spaces
7267
+ * @see https://eslint.style/rules/js/no-multi-spaces
7268
+ */
7269
+ '@stylistic/no-multi-spaces'?: Linter.RuleEntry<StylisticNoMultiSpaces>;
7270
+ /**
7271
+ * Disallow multiple empty lines
7272
+ * @see https://eslint.style/rules/js/no-multiple-empty-lines
7273
+ */
7274
+ '@stylistic/no-multiple-empty-lines'?: Linter.RuleEntry<StylisticNoMultipleEmptyLines>;
7275
+ /**
7276
+ * Disallow all tabs
7277
+ * @see https://eslint.style/rules/js/no-tabs
7278
+ */
7279
+ '@stylistic/no-tabs'?: Linter.RuleEntry<StylisticNoTabs>;
7280
+ /**
7281
+ * Disallow trailing whitespace at the end of lines
7282
+ * @see https://eslint.style/rules/js/no-trailing-spaces
7283
+ */
7284
+ '@stylistic/no-trailing-spaces'?: Linter.RuleEntry<StylisticNoTrailingSpaces>;
7285
+ /**
7286
+ * Disallow whitespace before properties
7287
+ * @see https://eslint.style/rules/js/no-whitespace-before-property
7288
+ */
7289
+ '@stylistic/no-whitespace-before-property'?: Linter.RuleEntry<[]>;
7290
+ /**
7291
+ * Enforce the location of single-line statements
7292
+ * @see https://eslint.style/rules/js/nonblock-statement-body-position
7293
+ */
7294
+ '@stylistic/nonblock-statement-body-position'?: Linter.RuleEntry<StylisticNonblockStatementBodyPosition>;
7295
+ /**
7296
+ * Enforce consistent line breaks after opening and before closing braces
7297
+ * @see https://eslint.style/rules/ts/object-curly-newline
7298
+ */
7299
+ '@stylistic/object-curly-newline'?: Linter.RuleEntry<StylisticObjectCurlyNewline>;
7300
+ /**
7301
+ * Enforce consistent spacing inside braces
7302
+ * @see https://eslint.style/rules/ts/object-curly-spacing
7303
+ */
7304
+ '@stylistic/object-curly-spacing'?: Linter.RuleEntry<StylisticObjectCurlySpacing>;
7305
+ /**
7306
+ * Enforce placing object properties on separate lines
7307
+ * @see https://eslint.style/rules/ts/object-property-newline
7308
+ */
7309
+ '@stylistic/object-property-newline'?: Linter.RuleEntry<StylisticObjectPropertyNewline>;
7310
+ /**
7311
+ * Require or disallow newlines around variable declarations
7312
+ * @see https://eslint.style/rules/js/one-var-declaration-per-line
7313
+ */
7314
+ '@stylistic/one-var-declaration-per-line'?: Linter.RuleEntry<StylisticOneVarDeclarationPerLine>;
7315
+ /**
7316
+ * Enforce consistent linebreak style for operators
7317
+ * @see https://eslint.style/rules/js/operator-linebreak
7318
+ */
7319
+ '@stylistic/operator-linebreak'?: Linter.RuleEntry<StylisticOperatorLinebreak>;
7320
+ /**
7321
+ * Require or disallow padding within blocks
7322
+ * @see https://eslint.style/rules/js/padded-blocks
7323
+ */
7324
+ '@stylistic/padded-blocks'?: Linter.RuleEntry<StylisticPaddedBlocks>;
7325
+ /**
7326
+ * Require or disallow padding lines between statements
7327
+ * @see https://eslint.style/rules/ts/padding-line-between-statements
7328
+ */
7329
+ '@stylistic/padding-line-between-statements'?: Linter.RuleEntry<StylisticPaddingLineBetweenStatements>;
7330
+ /**
7331
+ * Require quotes around object literal, type literal, interfaces and enums property names
7332
+ * @see https://eslint.style/rules/ts/quote-props
7333
+ */
7334
+ '@stylistic/quote-props'?: Linter.RuleEntry<StylisticQuoteProps>;
7335
+ /**
7336
+ * Enforce the consistent use of either backticks, double, or single quotes
7337
+ * @see https://eslint.style/rules/ts/quotes
7338
+ */
7339
+ '@stylistic/quotes'?: Linter.RuleEntry<StylisticQuotes>;
7340
+ /**
7341
+ * Enforce spacing between rest and spread operators and their expressions
7342
+ * @see https://eslint.style/rules/js/rest-spread-spacing
7343
+ */
7344
+ '@stylistic/rest-spread-spacing'?: Linter.RuleEntry<StylisticRestSpreadSpacing>;
7345
+ /**
7346
+ * Require or disallow semicolons instead of ASI
7347
+ * @see https://eslint.style/rules/ts/semi
7348
+ */
7349
+ '@stylistic/semi'?: Linter.RuleEntry<StylisticSemi>;
7350
+ /**
7351
+ * Enforce consistent spacing before and after semicolons
7352
+ * @see https://eslint.style/rules/ts/semi-spacing
7353
+ */
7354
+ '@stylistic/semi-spacing'?: Linter.RuleEntry<StylisticSemiSpacing>;
7355
+ /**
7356
+ * Enforce location of semicolons
7357
+ * @see https://eslint.style/rules/js/semi-style
7358
+ */
7359
+ '@stylistic/semi-style'?: Linter.RuleEntry<StylisticSemiStyle>;
7360
+ /**
7361
+ * Enforce consistent spacing before blocks
7362
+ * @see https://eslint.style/rules/ts/space-before-blocks
7363
+ */
7364
+ '@stylistic/space-before-blocks'?: Linter.RuleEntry<StylisticSpaceBeforeBlocks>;
7365
+ /**
7366
+ * Enforce consistent spacing before function parenthesis
7367
+ * @see https://eslint.style/rules/ts/space-before-function-paren
7368
+ */
7369
+ '@stylistic/space-before-function-paren'?: Linter.RuleEntry<StylisticSpaceBeforeFunctionParen>;
7370
+ /**
7371
+ * Enforce consistent spacing inside parentheses
7372
+ * @see https://eslint.style/rules/js/space-in-parens
7373
+ */
7374
+ '@stylistic/space-in-parens'?: Linter.RuleEntry<StylisticSpaceInParens>;
7375
+ /**
7376
+ * Require spacing around infix operators
7377
+ * @see https://eslint.style/rules/ts/space-infix-ops
7378
+ */
7379
+ '@stylistic/space-infix-ops'?: Linter.RuleEntry<StylisticSpaceInfixOps>;
7380
+ /**
7381
+ * Enforce consistent spacing before or after unary operators
7382
+ * @see https://eslint.style/rules/js/space-unary-ops
7383
+ */
7384
+ '@stylistic/space-unary-ops'?: Linter.RuleEntry<StylisticSpaceUnaryOps>;
7385
+ /**
7386
+ * Enforce consistent spacing after the `//` or `/*` in a comment
7387
+ * @see https://eslint.style/rules/js/spaced-comment
7388
+ */
7389
+ '@stylistic/spaced-comment'?: Linter.RuleEntry<StylisticSpacedComment>;
7390
+ /**
7391
+ * Enforce spacing around colons of switch statements
7392
+ * @see https://eslint.style/rules/js/switch-colon-spacing
7393
+ */
7394
+ '@stylistic/switch-colon-spacing'?: Linter.RuleEntry<StylisticSwitchColonSpacing>;
7395
+ /**
7396
+ * Require or disallow spacing around embedded expressions of template strings
7397
+ * @see https://eslint.style/rules/js/template-curly-spacing
7398
+ */
7399
+ '@stylistic/template-curly-spacing'?: Linter.RuleEntry<StylisticTemplateCurlySpacing>;
7400
+ /**
7401
+ * Require or disallow spacing between template tags and their literals
7402
+ * @see https://eslint.style/rules/js/template-tag-spacing
7403
+ */
7404
+ '@stylistic/template-tag-spacing'?: Linter.RuleEntry<StylisticTemplateTagSpacing>;
7405
+ /**
7406
+ * Require consistent spacing around type annotations
7407
+ * @see https://eslint.style/rules/ts/type-annotation-spacing
7408
+ */
7409
+ '@stylistic/type-annotation-spacing'?: Linter.RuleEntry<StylisticTypeAnnotationSpacing>;
7410
+ /**
7411
+ * Enforces consistent spacing inside TypeScript type generics
7412
+ * @see https://eslint.style/rules/plus/type-generic-spacing
7413
+ */
7414
+ '@stylistic/type-generic-spacing'?: Linter.RuleEntry<[]>;
7415
+ /**
7416
+ * Expect space before the type declaration in the named tuple
7417
+ * @see https://eslint.style/rules/plus/type-named-tuple-spacing
7418
+ */
7419
+ '@stylistic/type-named-tuple-spacing'?: Linter.RuleEntry<[]>;
7420
+ /**
7421
+ * Require parentheses around immediate `function` invocations
7422
+ * @see https://eslint.style/rules/js/wrap-iife
7423
+ */
7424
+ '@stylistic/wrap-iife'?: Linter.RuleEntry<StylisticWrapIife>;
7425
+ /**
7426
+ * Require parenthesis around regex literals
7427
+ * @see https://eslint.style/rules/js/wrap-regex
7428
+ */
7429
+ '@stylistic/wrap-regex'?: Linter.RuleEntry<[]>;
7430
+ /**
7431
+ * Require or disallow spacing around the `*` in `yield*` expressions
7432
+ * @see https://eslint.style/rules/js/yield-star-spacing
7433
+ */
7434
+ '@stylistic/yield-star-spacing'?: Linter.RuleEntry<StylisticYieldStarSpacing>;
7435
+ }
7436
+ type StylisticArrayBracketNewline = [] | [
7437
+ (("always" | "never" | "consistent") | {
7438
+ multiline?: boolean;
7439
+ minItems?: (number | null);
7440
+ })
7441
+ ];
7442
+ type StylisticArrayBracketSpacing = [] | [("always" | "never")] | [
7443
+ ("always" | "never"),
7444
+ {
7445
+ singleValue?: boolean;
7446
+ objectsInArrays?: boolean;
7447
+ arraysInArrays?: boolean;
7448
+ }
7449
+ ];
7450
+ type StylisticArrayElementNewline = [] | [
7451
+ (_StylisticArrayElementNewlineBasicConfig | {
7452
+ ArrayExpression?: _StylisticArrayElementNewlineBasicConfig;
7453
+ ArrayPattern?: _StylisticArrayElementNewlineBasicConfig;
7454
+ })
7455
+ ];
7456
+ type _StylisticArrayElementNewlineBasicConfig = (("always" | "never" | "consistent") | {
7457
+ consistent?: boolean;
7458
+ multiline?: boolean;
7459
+ minItems?: (number | null);
7460
+ });
7461
+ type StylisticArrowParens = [] | [("always" | "as-needed")] | [
7462
+ ("always" | "as-needed"),
7463
+ {
7464
+ requireForBlockBody?: boolean;
7465
+ }
7466
+ ];
7467
+ type StylisticArrowSpacing = [] | [
7468
+ {
7469
+ before?: boolean;
7470
+ after?: boolean;
7471
+ }
7472
+ ];
7473
+ type StylisticBlockSpacing = [] | [("always" | "never")];
7474
+ type StylisticBraceStyle = [] | [("1tbs" | "stroustrup" | "allman")] | [
7475
+ ("1tbs" | "stroustrup" | "allman"),
7476
+ {
7477
+ allowSingleLine?: boolean;
7478
+ }
7479
+ ];
7480
+ type StylisticCommaDangle = [] | [
7481
+ (_StylisticCommaDangleValue | {
7482
+ arrays?: _StylisticCommaDangleValueWithIgnore;
7483
+ objects?: _StylisticCommaDangleValueWithIgnore;
7484
+ imports?: _StylisticCommaDangleValueWithIgnore;
7485
+ exports?: _StylisticCommaDangleValueWithIgnore;
7486
+ functions?: _StylisticCommaDangleValueWithIgnore;
7487
+ importAttributes?: _StylisticCommaDangleValueWithIgnore;
7488
+ dynamicImports?: _StylisticCommaDangleValueWithIgnore;
7489
+ enums?: _StylisticCommaDangleValueWithIgnore;
7490
+ generics?: _StylisticCommaDangleValueWithIgnore;
7491
+ tuples?: _StylisticCommaDangleValueWithIgnore;
7492
+ })
7493
+ ];
7494
+ type _StylisticCommaDangleValue = ("always-multiline" | "always" | "never" | "only-multiline");
7495
+ type _StylisticCommaDangleValueWithIgnore = ("always-multiline" | "always" | "never" | "only-multiline" | "ignore");
7496
+ type StylisticCommaSpacing = [] | [
7497
+ {
7498
+ before?: boolean;
7499
+ after?: boolean;
7500
+ }
7501
+ ];
7502
+ type StylisticCommaStyle = [] | [("first" | "last")] | [
7503
+ ("first" | "last"),
7504
+ {
7505
+ exceptions?: {
7506
+ [k: string]: boolean | undefined;
7507
+ };
7508
+ }
7509
+ ];
7510
+ type StylisticComputedPropertySpacing = [] | [("always" | "never")] | [
7511
+ ("always" | "never"),
7512
+ {
7513
+ enforceForClassMembers?: boolean;
7514
+ }
7515
+ ];
7516
+ type StylisticCurlyNewline = [] | [
7517
+ (("always" | "never") | {
7518
+ IfStatementConsequent?: (("always" | "never") | {
7519
+ multiline?: boolean;
7520
+ minElements?: number;
7521
+ consistent?: boolean;
7522
+ });
7523
+ IfStatementAlternative?: (("always" | "never") | {
7524
+ multiline?: boolean;
7525
+ minElements?: number;
7526
+ consistent?: boolean;
7527
+ });
7528
+ DoWhileStatement?: (("always" | "never") | {
7529
+ multiline?: boolean;
7530
+ minElements?: number;
7531
+ consistent?: boolean;
7532
+ });
7533
+ ForInStatement?: (("always" | "never") | {
7534
+ multiline?: boolean;
7535
+ minElements?: number;
7536
+ consistent?: boolean;
7537
+ });
7538
+ ForOfStatement?: (("always" | "never") | {
7539
+ multiline?: boolean;
7540
+ minElements?: number;
7541
+ consistent?: boolean;
7542
+ });
7543
+ ForStatement?: (("always" | "never") | {
7544
+ multiline?: boolean;
7545
+ minElements?: number;
7546
+ consistent?: boolean;
7547
+ });
7548
+ WhileStatement?: (("always" | "never") | {
7549
+ multiline?: boolean;
7550
+ minElements?: number;
7551
+ consistent?: boolean;
7552
+ });
7553
+ SwitchStatement?: (("always" | "never") | {
7554
+ multiline?: boolean;
7555
+ minElements?: number;
7556
+ consistent?: boolean;
7557
+ });
7558
+ SwitchCase?: (("always" | "never") | {
7559
+ multiline?: boolean;
7560
+ minElements?: number;
7561
+ consistent?: boolean;
7562
+ });
7563
+ TryStatementBlock?: (("always" | "never") | {
7564
+ multiline?: boolean;
7565
+ minElements?: number;
7566
+ consistent?: boolean;
7567
+ });
7568
+ TryStatementHandler?: (("always" | "never") | {
7569
+ multiline?: boolean;
7570
+ minElements?: number;
7571
+ consistent?: boolean;
7572
+ });
7573
+ TryStatementFinalizer?: (("always" | "never") | {
7574
+ multiline?: boolean;
7575
+ minElements?: number;
7576
+ consistent?: boolean;
7577
+ });
7578
+ BlockStatement?: (("always" | "never") | {
7579
+ multiline?: boolean;
7580
+ minElements?: number;
7581
+ consistent?: boolean;
7582
+ });
7583
+ ArrowFunctionExpression?: (("always" | "never") | {
7584
+ multiline?: boolean;
7585
+ minElements?: number;
7586
+ consistent?: boolean;
7587
+ });
7588
+ FunctionDeclaration?: (("always" | "never") | {
7589
+ multiline?: boolean;
7590
+ minElements?: number;
7591
+ consistent?: boolean;
7592
+ });
7593
+ FunctionExpression?: (("always" | "never") | {
7594
+ multiline?: boolean;
7595
+ minElements?: number;
7596
+ consistent?: boolean;
7597
+ });
7598
+ Property?: (("always" | "never") | {
7599
+ multiline?: boolean;
7600
+ minElements?: number;
7601
+ consistent?: boolean;
7602
+ });
7603
+ ClassBody?: (("always" | "never") | {
7604
+ multiline?: boolean;
7605
+ minElements?: number;
7606
+ consistent?: boolean;
7607
+ });
7608
+ StaticBlock?: (("always" | "never") | {
7609
+ multiline?: boolean;
7610
+ minElements?: number;
7611
+ consistent?: boolean;
7612
+ });
7613
+ WithStatement?: (("always" | "never") | {
7614
+ multiline?: boolean;
7615
+ minElements?: number;
7616
+ consistent?: boolean;
7617
+ });
7618
+ TSEnumBody?: (("always" | "never") | {
7619
+ multiline?: boolean;
7620
+ minElements?: number;
7621
+ consistent?: boolean;
7622
+ });
7623
+ TSInterfaceBody?: (("always" | "never") | {
7624
+ multiline?: boolean;
7625
+ minElements?: number;
7626
+ consistent?: boolean;
7627
+ });
7628
+ TSModuleBlock?: (("always" | "never") | {
7629
+ multiline?: boolean;
7630
+ minElements?: number;
7631
+ consistent?: boolean;
7632
+ });
7633
+ multiline?: boolean;
7634
+ minElements?: number;
7635
+ consistent?: boolean;
7636
+ })
7637
+ ];
7638
+ type StylisticDotLocation = [] | [("object" | "property")];
7639
+ type StylisticEolLast = [] | [("always" | "never" | "unix" | "windows")];
7640
+ type StylisticFuncCallSpacing = ([] | ["never"] | [] | ["always"] | [
7641
+ "always",
7642
+ {
7643
+ allowNewlines?: boolean;
7644
+ optionalChain?: {
7645
+ before?: boolean;
7646
+ after?: boolean;
7647
+ };
7648
+ }
7649
+ ]);
7650
+ type StylisticFunctionCallArgumentNewline = [] | [("always" | "never" | "consistent")];
7651
+ type StylisticFunctionCallSpacing = ([] | ["never"] | [] | ["always"] | [
7652
+ "always",
7653
+ {
7654
+ allowNewlines?: boolean;
7655
+ optionalChain?: {
7656
+ before?: boolean;
7657
+ after?: boolean;
7658
+ };
7659
+ }
7660
+ ]);
7661
+ type StylisticFunctionParenNewline = [] | [
7662
+ (("always" | "never" | "consistent" | "multiline" | "multiline-arguments") | {
7663
+ minItems?: number;
7664
+ })
7665
+ ];
7666
+ type StylisticGeneratorStarSpacing = [] | [
7667
+ (("before" | "after" | "both" | "neither") | {
7668
+ before?: boolean;
7669
+ after?: boolean;
7670
+ named?: (("before" | "after" | "both" | "neither") | {
7671
+ before?: boolean;
7672
+ after?: boolean;
7673
+ });
7674
+ anonymous?: (("before" | "after" | "both" | "neither") | {
7675
+ before?: boolean;
7676
+ after?: boolean;
7677
+ });
7678
+ method?: (("before" | "after" | "both" | "neither") | {
7679
+ before?: boolean;
7680
+ after?: boolean;
7681
+ });
7682
+ })
7683
+ ];
7684
+ type StylisticImplicitArrowLinebreak = [] | [("beside" | "below")];
7685
+ type StylisticIndent = [] | [("tab" | number)] | [
7686
+ ("tab" | number),
7687
+ {
7688
+ SwitchCase?: number;
7689
+ VariableDeclarator?: ((number | ("first" | "off")) | {
7690
+ var?: (number | ("first" | "off"));
7691
+ let?: (number | ("first" | "off"));
7692
+ const?: (number | ("first" | "off"));
7693
+ });
7694
+ outerIIFEBody?: (number | "off");
7695
+ MemberExpression?: (number | "off");
7696
+ FunctionDeclaration?: {
7697
+ parameters?: (number | ("first" | "off"));
7698
+ body?: number;
7699
+ };
7700
+ FunctionExpression?: {
7701
+ parameters?: (number | ("first" | "off"));
7702
+ body?: number;
7703
+ };
7704
+ StaticBlock?: {
7705
+ body?: number;
7706
+ };
7707
+ CallExpression?: {
7708
+ arguments?: (number | ("first" | "off"));
7709
+ };
7710
+ ArrayExpression?: (number | ("first" | "off"));
7711
+ ObjectExpression?: (number | ("first" | "off"));
7712
+ ImportDeclaration?: (number | ("first" | "off"));
7713
+ flatTernaryExpressions?: boolean;
7714
+ offsetTernaryExpressions?: boolean;
7715
+ offsetTernaryExpressionsOffsetCallExpressions?: boolean;
7716
+ ignoredNodes?: string[];
7717
+ ignoreComments?: boolean;
7718
+ tabLength?: number;
7719
+ }
7720
+ ];
7721
+ type StylisticIndentBinaryOps = [] | [(number | "tab")];
7722
+ type StylisticJsxClosingBracketLocation = [] | [
7723
+ (("after-props" | "props-aligned" | "tag-aligned" | "line-aligned") | {
7724
+ location?: ("after-props" | "props-aligned" | "tag-aligned" | "line-aligned");
7725
+ } | {
7726
+ nonEmpty?: (("after-props" | "props-aligned" | "tag-aligned" | "line-aligned") | false);
7727
+ selfClosing?: (("after-props" | "props-aligned" | "tag-aligned" | "line-aligned") | false);
7728
+ })
7729
+ ];
7730
+ type StylisticJsxClosingTagLocation = [] | [("tag-aligned" | "line-aligned")];
7731
+ type StylisticJsxCurlyBracePresence = [] | [
7732
+ ({
7733
+ props?: ("always" | "never" | "ignore");
7734
+ children?: ("always" | "never" | "ignore");
7735
+ propElementValues?: ("always" | "never" | "ignore");
7736
+ } | ("always" | "never" | "ignore"))
7737
+ ];
7738
+ type StylisticJsxCurlyNewline = [] | [
7739
+ (("consistent" | "never") | {
7740
+ singleline?: ("consistent" | "require" | "forbid");
7741
+ multiline?: ("consistent" | "require" | "forbid");
7742
+ })
7743
+ ];
7744
+ type StylisticJsxCurlySpacing = [] | [
7745
+ ((_StylisticJsxCurlySpacing_BasicConfig & {
7746
+ attributes?: _StylisticJsxCurlySpacingBasicConfigOrBoolean;
7747
+ children?: _StylisticJsxCurlySpacingBasicConfigOrBoolean;
7748
+ [k: string]: unknown | undefined;
7749
+ }) | ("always" | "never"))
7750
+ ] | [
7751
+ ((_StylisticJsxCurlySpacing_BasicConfig & {
7752
+ attributes?: _StylisticJsxCurlySpacingBasicConfigOrBoolean;
7753
+ children?: _StylisticJsxCurlySpacingBasicConfigOrBoolean;
7754
+ [k: string]: unknown | undefined;
7755
+ }) | ("always" | "never")),
7756
+ {
7757
+ allowMultiline?: boolean;
7758
+ spacing?: {
7759
+ objectLiterals?: ("always" | "never");
7760
+ [k: string]: unknown | undefined;
7761
+ };
7762
+ }
7763
+ ];
7764
+ type _StylisticJsxCurlySpacingBasicConfigOrBoolean = (_StylisticJsxCurlySpacing_BasicConfig | boolean);
7765
+ interface _StylisticJsxCurlySpacing_BasicConfig {
7766
+ when?: ("always" | "never");
7767
+ allowMultiline?: boolean;
7768
+ spacing?: {
7769
+ objectLiterals?: ("always" | "never");
7770
+ [k: string]: unknown | undefined;
7771
+ };
7772
+ [k: string]: unknown | undefined;
7773
+ }
7774
+ type StylisticJsxEqualsSpacing = [] | [("always" | "never")];
7775
+ type StylisticJsxFirstPropNewLine = [] | [("always" | "never" | "multiline" | "multiline-multiprop" | "multiprop")];
7776
+ type StylisticJsxFunctionCallNewline = [] | [("always" | "multiline")];
7777
+ type StylisticJsxIndent = [] | [("tab" | number)] | [
7778
+ ("tab" | number),
7779
+ {
7780
+ checkAttributes?: boolean;
7781
+ indentLogicalExpressions?: boolean;
7782
+ }
7783
+ ];
7784
+ type StylisticJsxIndentProps = [] | [
7785
+ (("tab" | "first") | number | {
7786
+ indentMode?: (("tab" | "first") | number);
7787
+ ignoreTernaryOperator?: boolean;
7788
+ [k: string]: unknown | undefined;
7789
+ })
7790
+ ];
7791
+ type StylisticJsxMaxPropsPerLine = [] | [
7792
+ ({
7793
+ maximum?: {
7794
+ single?: number;
7795
+ multi?: number;
7796
+ [k: string]: unknown | undefined;
7797
+ };
7798
+ } | {
7799
+ maximum?: number;
7800
+ when?: ("always" | "multiline");
7801
+ })
7802
+ ];
7803
+ type StylisticJsxNewline = [] | [
7804
+ {
7805
+ prevent?: boolean;
7806
+ allowMultilines?: boolean;
7807
+ }
7808
+ ];
7809
+ type StylisticJsxOneExpressionPerLine = [] | [
7810
+ {
7811
+ allow?: ("none" | "literal" | "single-child" | "single-line" | "non-jsx");
7812
+ }
7813
+ ];
7814
+ type StylisticJsxPascalCase = [] | [
7815
+ {
7816
+ allowAllCaps?: boolean;
7817
+ allowLeadingUnderscore?: boolean;
7818
+ allowNamespace?: boolean;
7819
+ ignore?: string[];
7820
+ }
7821
+ ];
7822
+ type StylisticJsxQuotes = [] | [("prefer-single" | "prefer-double")];
7823
+ type StylisticJsxSelfClosingComp = [] | [
7824
+ {
7825
+ component?: boolean;
7826
+ html?: boolean;
7827
+ }
7828
+ ];
7829
+ type StylisticJsxSortProps = [] | [
7830
+ {
7831
+ callbacksLast?: boolean;
7832
+ shorthandFirst?: boolean;
7833
+ shorthandLast?: boolean;
7834
+ multiline?: ("ignore" | "first" | "last");
7835
+ ignoreCase?: boolean;
7836
+ noSortAlphabetically?: boolean;
7837
+ reservedFirst?: (unknown[] | boolean);
7838
+ locale?: string;
7839
+ }
7840
+ ];
7841
+ type StylisticJsxTagSpacing = [] | [
7842
+ {
7843
+ closingSlash?: ("always" | "never" | "allow");
7844
+ beforeSelfClosing?: ("always" | "proportional-always" | "never" | "allow");
7845
+ afterOpening?: ("always" | "allow-multiline" | "never" | "allow");
7846
+ beforeClosing?: ("always" | "proportional-always" | "never" | "allow");
7847
+ }
7848
+ ];
7849
+ type StylisticJsxWrapMultilines = [] | [
7850
+ {
7851
+ declaration?: ((true | false | "ignore" | "parens" | "parens-new-line") | (true | false | "ignore" | "parens" | "parens-new-line"));
7852
+ assignment?: ((true | false | "ignore" | "parens" | "parens-new-line") | (true | false | "ignore" | "parens" | "parens-new-line"));
7853
+ return?: ((true | false | "ignore" | "parens" | "parens-new-line") | (true | false | "ignore" | "parens" | "parens-new-line"));
7854
+ arrow?: ((true | false | "ignore" | "parens" | "parens-new-line") | (true | false | "ignore" | "parens" | "parens-new-line"));
7855
+ condition?: ((true | false | "ignore" | "parens" | "parens-new-line") | (true | false | "ignore" | "parens" | "parens-new-line"));
7856
+ logical?: ((true | false | "ignore" | "parens" | "parens-new-line") | (true | false | "ignore" | "parens" | "parens-new-line"));
7857
+ prop?: ((true | false | "ignore" | "parens" | "parens-new-line") | (true | false | "ignore" | "parens" | "parens-new-line"));
7858
+ propertyValue?: ((true | false | "ignore" | "parens" | "parens-new-line") | (true | false | "ignore" | "parens" | "parens-new-line"));
7859
+ }
7860
+ ];
7861
+ type StylisticKeySpacing = [] | [
7862
+ ({
7863
+ align?: (("colon" | "value") | {
7864
+ mode?: ("strict" | "minimum");
7865
+ on?: ("colon" | "value");
7866
+ beforeColon?: boolean;
7867
+ afterColon?: boolean;
7868
+ });
7869
+ mode?: ("strict" | "minimum");
7870
+ beforeColon?: boolean;
7871
+ afterColon?: boolean;
7872
+ ignoredNodes?: ("ObjectExpression" | "ObjectPattern" | "ImportDeclaration" | "ExportNamedDeclaration" | "ExportAllDeclaration" | "TSTypeLiteral" | "TSInterfaceBody" | "ClassBody")[];
7873
+ } | {
7874
+ singleLine?: {
7875
+ mode?: ("strict" | "minimum");
7876
+ beforeColon?: boolean;
7877
+ afterColon?: boolean;
7878
+ };
7879
+ multiLine?: {
7880
+ align?: (("colon" | "value") | {
7881
+ mode?: ("strict" | "minimum");
7882
+ on?: ("colon" | "value");
7883
+ beforeColon?: boolean;
7884
+ afterColon?: boolean;
7885
+ });
7886
+ mode?: ("strict" | "minimum");
7887
+ beforeColon?: boolean;
7888
+ afterColon?: boolean;
7889
+ };
7890
+ } | {
7891
+ singleLine?: {
7892
+ mode?: ("strict" | "minimum");
7893
+ beforeColon?: boolean;
7894
+ afterColon?: boolean;
7895
+ };
7896
+ multiLine?: {
7897
+ mode?: ("strict" | "minimum");
7898
+ beforeColon?: boolean;
7899
+ afterColon?: boolean;
7900
+ };
7901
+ align?: {
7902
+ mode?: ("strict" | "minimum");
7903
+ on?: ("colon" | "value");
7904
+ beforeColon?: boolean;
7905
+ afterColon?: boolean;
7906
+ };
7907
+ })
7908
+ ];
7909
+ type StylisticKeywordSpacing = [] | [
7910
+ {
7911
+ before?: boolean;
7912
+ after?: boolean;
7913
+ overrides?: {
7914
+ abstract?: {
7915
+ before?: boolean;
7916
+ after?: boolean;
7917
+ };
7918
+ as?: {
7919
+ before?: boolean;
7920
+ after?: boolean;
7921
+ };
7922
+ async?: {
7923
+ before?: boolean;
7924
+ after?: boolean;
7925
+ };
7926
+ await?: {
7927
+ before?: boolean;
7928
+ after?: boolean;
7929
+ };
7930
+ boolean?: {
7931
+ before?: boolean;
7932
+ after?: boolean;
7933
+ };
7934
+ break?: {
7935
+ before?: boolean;
7936
+ after?: boolean;
7937
+ };
7938
+ byte?: {
7939
+ before?: boolean;
7940
+ after?: boolean;
7941
+ };
7942
+ case?: {
7943
+ before?: boolean;
7944
+ after?: boolean;
7945
+ };
7946
+ catch?: {
7947
+ before?: boolean;
7948
+ after?: boolean;
7949
+ };
7950
+ char?: {
7951
+ before?: boolean;
7952
+ after?: boolean;
7953
+ };
7954
+ class?: {
7955
+ before?: boolean;
7956
+ after?: boolean;
7957
+ };
7958
+ const?: {
7959
+ before?: boolean;
7960
+ after?: boolean;
7961
+ };
7962
+ continue?: {
7963
+ before?: boolean;
7964
+ after?: boolean;
7965
+ };
7966
+ debugger?: {
7967
+ before?: boolean;
7968
+ after?: boolean;
7969
+ };
7970
+ default?: {
7971
+ before?: boolean;
7972
+ after?: boolean;
7973
+ };
7974
+ delete?: {
7975
+ before?: boolean;
7976
+ after?: boolean;
7977
+ };
7978
+ do?: {
7979
+ before?: boolean;
7980
+ after?: boolean;
7981
+ };
7982
+ double?: {
7983
+ before?: boolean;
7984
+ after?: boolean;
7985
+ };
7986
+ else?: {
7987
+ before?: boolean;
7988
+ after?: boolean;
7989
+ };
7990
+ enum?: {
7991
+ before?: boolean;
7992
+ after?: boolean;
7993
+ };
7994
+ export?: {
7995
+ before?: boolean;
7996
+ after?: boolean;
7997
+ };
7998
+ extends?: {
7999
+ before?: boolean;
8000
+ after?: boolean;
8001
+ };
8002
+ false?: {
8003
+ before?: boolean;
8004
+ after?: boolean;
8005
+ };
8006
+ final?: {
8007
+ before?: boolean;
8008
+ after?: boolean;
8009
+ };
8010
+ finally?: {
8011
+ before?: boolean;
8012
+ after?: boolean;
8013
+ };
8014
+ float?: {
8015
+ before?: boolean;
8016
+ after?: boolean;
8017
+ };
8018
+ for?: {
8019
+ before?: boolean;
8020
+ after?: boolean;
8021
+ };
8022
+ from?: {
8023
+ before?: boolean;
8024
+ after?: boolean;
8025
+ };
8026
+ function?: {
8027
+ before?: boolean;
8028
+ after?: boolean;
8029
+ };
8030
+ get?: {
8031
+ before?: boolean;
8032
+ after?: boolean;
8033
+ };
8034
+ goto?: {
8035
+ before?: boolean;
8036
+ after?: boolean;
8037
+ };
8038
+ if?: {
8039
+ before?: boolean;
8040
+ after?: boolean;
8041
+ };
8042
+ implements?: {
8043
+ before?: boolean;
8044
+ after?: boolean;
8045
+ };
8046
+ import?: {
8047
+ before?: boolean;
8048
+ after?: boolean;
8049
+ };
8050
+ in?: {
8051
+ before?: boolean;
8052
+ after?: boolean;
8053
+ };
8054
+ instanceof?: {
8055
+ before?: boolean;
8056
+ after?: boolean;
8057
+ };
8058
+ int?: {
8059
+ before?: boolean;
8060
+ after?: boolean;
8061
+ };
8062
+ interface?: {
8063
+ before?: boolean;
8064
+ after?: boolean;
8065
+ };
8066
+ let?: {
8067
+ before?: boolean;
8068
+ after?: boolean;
8069
+ };
8070
+ long?: {
8071
+ before?: boolean;
8072
+ after?: boolean;
8073
+ };
8074
+ native?: {
8075
+ before?: boolean;
8076
+ after?: boolean;
8077
+ };
8078
+ new?: {
8079
+ before?: boolean;
8080
+ after?: boolean;
8081
+ };
8082
+ null?: {
8083
+ before?: boolean;
8084
+ after?: boolean;
8085
+ };
8086
+ of?: {
8087
+ before?: boolean;
8088
+ after?: boolean;
8089
+ };
8090
+ package?: {
8091
+ before?: boolean;
8092
+ after?: boolean;
8093
+ };
8094
+ private?: {
8095
+ before?: boolean;
8096
+ after?: boolean;
8097
+ };
8098
+ protected?: {
8099
+ before?: boolean;
8100
+ after?: boolean;
8101
+ };
8102
+ public?: {
8103
+ before?: boolean;
8104
+ after?: boolean;
8105
+ };
8106
+ return?: {
8107
+ before?: boolean;
8108
+ after?: boolean;
8109
+ };
8110
+ satisfies?: {
8111
+ before?: boolean;
8112
+ after?: boolean;
8113
+ };
8114
+ set?: {
8115
+ before?: boolean;
8116
+ after?: boolean;
8117
+ };
8118
+ short?: {
8119
+ before?: boolean;
8120
+ after?: boolean;
8121
+ };
8122
+ static?: {
8123
+ before?: boolean;
8124
+ after?: boolean;
8125
+ };
8126
+ super?: {
8127
+ before?: boolean;
8128
+ after?: boolean;
8129
+ };
8130
+ switch?: {
8131
+ before?: boolean;
8132
+ after?: boolean;
8133
+ };
8134
+ synchronized?: {
8135
+ before?: boolean;
8136
+ after?: boolean;
8137
+ };
8138
+ this?: {
8139
+ before?: boolean;
8140
+ after?: boolean;
8141
+ };
8142
+ throw?: {
8143
+ before?: boolean;
8144
+ after?: boolean;
8145
+ };
8146
+ throws?: {
8147
+ before?: boolean;
8148
+ after?: boolean;
8149
+ };
8150
+ transient?: {
8151
+ before?: boolean;
8152
+ after?: boolean;
8153
+ };
8154
+ true?: {
8155
+ before?: boolean;
8156
+ after?: boolean;
8157
+ };
8158
+ try?: {
8159
+ before?: boolean;
8160
+ after?: boolean;
8161
+ };
8162
+ typeof?: {
8163
+ before?: boolean;
8164
+ after?: boolean;
8165
+ };
8166
+ var?: {
8167
+ before?: boolean;
8168
+ after?: boolean;
8169
+ };
8170
+ void?: {
8171
+ before?: boolean;
8172
+ after?: boolean;
8173
+ };
8174
+ volatile?: {
8175
+ before?: boolean;
8176
+ after?: boolean;
8177
+ };
8178
+ while?: {
8179
+ before?: boolean;
8180
+ after?: boolean;
8181
+ };
8182
+ with?: {
8183
+ before?: boolean;
8184
+ after?: boolean;
8185
+ };
8186
+ yield?: {
8187
+ before?: boolean;
8188
+ after?: boolean;
8189
+ };
8190
+ type?: {
8191
+ before?: boolean;
8192
+ after?: boolean;
8193
+ };
8194
+ };
8195
+ }
8196
+ ];
8197
+ type StylisticLineCommentPosition = [] | [
8198
+ (("above" | "beside") | {
8199
+ position?: ("above" | "beside");
8200
+ ignorePattern?: string;
8201
+ applyDefaultPatterns?: boolean;
8202
+ applyDefaultIgnorePatterns?: boolean;
8203
+ })
8204
+ ];
8205
+ type StylisticLinebreakStyle = [] | [("unix" | "windows")];
8206
+ type StylisticLinesAroundComment = [] | [
8207
+ {
8208
+ beforeBlockComment?: boolean;
8209
+ afterBlockComment?: boolean;
8210
+ beforeLineComment?: boolean;
8211
+ afterLineComment?: boolean;
8212
+ allowBlockStart?: boolean;
8213
+ allowBlockEnd?: boolean;
8214
+ allowClassStart?: boolean;
8215
+ allowClassEnd?: boolean;
8216
+ allowObjectStart?: boolean;
8217
+ allowObjectEnd?: boolean;
8218
+ allowArrayStart?: boolean;
8219
+ allowArrayEnd?: boolean;
8220
+ allowInterfaceStart?: boolean;
8221
+ allowInterfaceEnd?: boolean;
8222
+ allowTypeStart?: boolean;
8223
+ allowTypeEnd?: boolean;
8224
+ allowEnumStart?: boolean;
8225
+ allowEnumEnd?: boolean;
8226
+ allowModuleStart?: boolean;
8227
+ allowModuleEnd?: boolean;
8228
+ ignorePattern?: string;
8229
+ applyDefaultIgnorePatterns?: boolean;
8230
+ afterHashbangComment?: boolean;
8231
+ }
8232
+ ];
8233
+ type StylisticLinesBetweenClassMembers = [] | [
8234
+ ({
8235
+ enforce: [
8236
+ {
8237
+ blankLine: ("always" | "never");
8238
+ prev: ("method" | "field" | "*");
8239
+ next: ("method" | "field" | "*");
8240
+ },
8241
+ ...({
8242
+ blankLine: ("always" | "never");
8243
+ prev: ("method" | "field" | "*");
8244
+ next: ("method" | "field" | "*");
8245
+ })[]
8246
+ ];
8247
+ } | ("always" | "never"))
8248
+ ] | [
8249
+ ({
8250
+ enforce: [
8251
+ {
8252
+ blankLine: ("always" | "never");
8253
+ prev: ("method" | "field" | "*");
8254
+ next: ("method" | "field" | "*");
8255
+ },
8256
+ ...({
8257
+ blankLine: ("always" | "never");
8258
+ prev: ("method" | "field" | "*");
8259
+ next: ("method" | "field" | "*");
8260
+ })[]
8261
+ ];
8262
+ } | ("always" | "never")),
8263
+ {
8264
+ exceptAfterSingleLine?: boolean;
8265
+ exceptAfterOverload?: boolean;
8266
+ }
8267
+ ];
8268
+ type StylisticMaxLen = [] | [
8269
+ ({
8270
+ code?: number;
8271
+ comments?: number;
8272
+ tabWidth?: number;
8273
+ ignorePattern?: string;
8274
+ ignoreComments?: boolean;
8275
+ ignoreStrings?: boolean;
8276
+ ignoreUrls?: boolean;
8277
+ ignoreTemplateLiterals?: boolean;
8278
+ ignoreRegExpLiterals?: boolean;
8279
+ ignoreTrailingComments?: boolean;
8280
+ } | number)
8281
+ ] | [
8282
+ ({
8283
+ code?: number;
8284
+ comments?: number;
8285
+ tabWidth?: number;
8286
+ ignorePattern?: string;
8287
+ ignoreComments?: boolean;
8288
+ ignoreStrings?: boolean;
8289
+ ignoreUrls?: boolean;
8290
+ ignoreTemplateLiterals?: boolean;
8291
+ ignoreRegExpLiterals?: boolean;
8292
+ ignoreTrailingComments?: boolean;
8293
+ } | number),
8294
+ ({
8295
+ code?: number;
8296
+ comments?: number;
8297
+ tabWidth?: number;
8298
+ ignorePattern?: string;
8299
+ ignoreComments?: boolean;
8300
+ ignoreStrings?: boolean;
8301
+ ignoreUrls?: boolean;
8302
+ ignoreTemplateLiterals?: boolean;
8303
+ ignoreRegExpLiterals?: boolean;
8304
+ ignoreTrailingComments?: boolean;
8305
+ } | number)
8306
+ ] | [
8307
+ ({
8308
+ code?: number;
8309
+ comments?: number;
8310
+ tabWidth?: number;
8311
+ ignorePattern?: string;
8312
+ ignoreComments?: boolean;
8313
+ ignoreStrings?: boolean;
8314
+ ignoreUrls?: boolean;
8315
+ ignoreTemplateLiterals?: boolean;
8316
+ ignoreRegExpLiterals?: boolean;
8317
+ ignoreTrailingComments?: boolean;
8318
+ } | number),
8319
+ ({
8320
+ code?: number;
8321
+ comments?: number;
8322
+ tabWidth?: number;
8323
+ ignorePattern?: string;
8324
+ ignoreComments?: boolean;
8325
+ ignoreStrings?: boolean;
8326
+ ignoreUrls?: boolean;
8327
+ ignoreTemplateLiterals?: boolean;
8328
+ ignoreRegExpLiterals?: boolean;
8329
+ ignoreTrailingComments?: boolean;
8330
+ } | number),
8331
+ {
8332
+ code?: number;
8333
+ comments?: number;
8334
+ tabWidth?: number;
8335
+ ignorePattern?: string;
8336
+ ignoreComments?: boolean;
8337
+ ignoreStrings?: boolean;
8338
+ ignoreUrls?: boolean;
8339
+ ignoreTemplateLiterals?: boolean;
8340
+ ignoreRegExpLiterals?: boolean;
8341
+ ignoreTrailingComments?: boolean;
8342
+ }
8343
+ ];
8344
+ type StylisticMaxStatementsPerLine = [] | [
8345
+ {
8346
+ max?: number;
8347
+ ignoredNodes?: ("BreakStatement" | "ClassDeclaration" | "ContinueStatement" | "DebuggerStatement" | "DoWhileStatement" | "ExpressionStatement" | "ForInStatement" | "ForOfStatement" | "ForStatement" | "FunctionDeclaration" | "IfStatement" | "ImportDeclaration" | "LabeledStatement" | "ReturnStatement" | "SwitchStatement" | "ThrowStatement" | "TryStatement" | "VariableDeclaration" | "WhileStatement" | "WithStatement" | "ExportNamedDeclaration" | "ExportDefaultDeclaration" | "ExportAllDeclaration")[];
8348
+ }
8349
+ ];
8350
+ type StylisticMemberDelimiterStyle = [] | [
8351
+ {
8352
+ multiline?: {
8353
+ delimiter?: ("none" | "semi" | "comma");
8354
+ requireLast?: boolean;
8355
+ };
8356
+ singleline?: {
8357
+ delimiter?: ("semi" | "comma");
8358
+ requireLast?: boolean;
8359
+ };
8360
+ overrides?: {
8361
+ interface?: _StylisticMemberDelimiterStyle_DelimiterConfig;
8362
+ typeLiteral?: _StylisticMemberDelimiterStyle_DelimiterConfig;
8363
+ };
8364
+ multilineDetection?: ("brackets" | "last-member");
8365
+ }
8366
+ ];
8367
+ interface _StylisticMemberDelimiterStyle_DelimiterConfig {
8368
+ multiline?: {
8369
+ delimiter?: ("none" | "semi" | "comma");
8370
+ requireLast?: boolean;
8371
+ };
8372
+ singleline?: {
8373
+ delimiter?: ("semi" | "comma");
8374
+ requireLast?: boolean;
8375
+ };
8376
+ }
8377
+ type StylisticMultilineCommentStyle = ([] | [("starred-block" | "bare-block")] | [] | ["separate-lines"] | [
8378
+ "separate-lines",
8379
+ {
8380
+ checkJSDoc?: boolean;
8381
+ }
8382
+ ]);
8383
+ type StylisticMultilineTernary = [] | [("always" | "always-multiline" | "never")] | [
8384
+ ("always" | "always-multiline" | "never"),
8385
+ {
8386
+ ignoreJSX?: boolean;
8387
+ [k: string]: unknown | undefined;
8388
+ }
8389
+ ];
8390
+ type StylisticNewParens = [] | [("always" | "never")];
8391
+ type StylisticNewlinePerChainedCall = [] | [
8392
+ {
8393
+ ignoreChainWithDepth?: number;
8394
+ }
8395
+ ];
8396
+ type StylisticNoConfusingArrow = [] | [
8397
+ {
8398
+ allowParens?: boolean;
8399
+ onlyOneSimpleParam?: boolean;
8400
+ }
8401
+ ];
8402
+ type StylisticNoExtraParens = ([] | ["functions"] | [] | ["all"] | [
8403
+ "all",
8404
+ {
8405
+ conditionalAssign?: boolean;
8406
+ ternaryOperandBinaryExpressions?: boolean;
8407
+ nestedBinaryExpressions?: boolean;
8408
+ returnAssign?: boolean;
8409
+ ignoreJSX?: ("none" | "all" | "single-line" | "multi-line");
8410
+ enforceForArrowConditionals?: boolean;
8411
+ enforceForSequenceExpressions?: boolean;
8412
+ enforceForNewInMemberExpressions?: boolean;
8413
+ enforceForFunctionPrototypeMethods?: boolean;
8414
+ allowParensAfterCommentPattern?: string;
8415
+ nestedConditionalExpressions?: boolean;
8416
+ }
8417
+ ]);
8418
+ type StylisticNoMixedOperators = [] | [
8419
+ {
8420
+ groups?: [("+" | "-" | "*" | "/" | "%" | "**" | "&" | "|" | "^" | "~" | "<<" | ">>" | ">>>" | "==" | "!=" | "===" | "!==" | ">" | ">=" | "<" | "<=" | "&&" | "||" | "in" | "instanceof" | "?:" | "??"), ("+" | "-" | "*" | "/" | "%" | "**" | "&" | "|" | "^" | "~" | "<<" | ">>" | ">>>" | "==" | "!=" | "===" | "!==" | ">" | ">=" | "<" | "<=" | "&&" | "||" | "in" | "instanceof" | "?:" | "??"), ...(("+" | "-" | "*" | "/" | "%" | "**" | "&" | "|" | "^" | "~" | "<<" | ">>" | ">>>" | "==" | "!=" | "===" | "!==" | ">" | ">=" | "<" | "<=" | "&&" | "||" | "in" | "instanceof" | "?:" | "??"))[]][];
8421
+ allowSamePrecedence?: boolean;
8422
+ }
8423
+ ];
8424
+ type StylisticNoMixedSpacesAndTabs = [] | [("smart-tabs" | boolean)];
8425
+ type StylisticNoMultiSpaces = [] | [
8426
+ {
8427
+ exceptions?: {
8428
+ [k: string]: boolean;
8429
+ };
8430
+ ignoreEOLComments?: boolean;
8431
+ includeTabs?: boolean;
8432
+ }
8433
+ ];
8434
+ type StylisticNoMultipleEmptyLines = [] | [
8435
+ {
8436
+ max: number;
8437
+ maxEOF?: number;
8438
+ maxBOF?: number;
8439
+ }
8440
+ ];
8441
+ type StylisticNoTabs = [] | [
8442
+ {
8443
+ allowIndentationTabs?: boolean;
8444
+ }
8445
+ ];
8446
+ type StylisticNoTrailingSpaces = [] | [
8447
+ {
8448
+ skipBlankLines?: boolean;
8449
+ ignoreComments?: boolean;
8450
+ }
8451
+ ];
8452
+ type StylisticNonblockStatementBodyPosition = [] | [("beside" | "below" | "any")] | [
8453
+ ("beside" | "below" | "any"),
8454
+ {
8455
+ overrides?: {
8456
+ if?: ("beside" | "below" | "any");
8457
+ else?: ("beside" | "below" | "any");
8458
+ while?: ("beside" | "below" | "any");
8459
+ do?: ("beside" | "below" | "any");
8460
+ for?: ("beside" | "below" | "any");
8461
+ };
8462
+ }
8463
+ ];
8464
+ type StylisticObjectCurlyNewline = [] | [
8465
+ ((("always" | "never") | {
8466
+ multiline?: boolean;
8467
+ minProperties?: number;
8468
+ consistent?: boolean;
8469
+ }) | {
8470
+ ObjectExpression?: (("always" | "never") | {
8471
+ multiline?: boolean;
8472
+ minProperties?: number;
8473
+ consistent?: boolean;
8474
+ });
8475
+ ObjectPattern?: (("always" | "never") | {
8476
+ multiline?: boolean;
8477
+ minProperties?: number;
8478
+ consistent?: boolean;
8479
+ });
8480
+ ImportDeclaration?: (("always" | "never") | {
8481
+ multiline?: boolean;
8482
+ minProperties?: number;
8483
+ consistent?: boolean;
8484
+ });
8485
+ ExportDeclaration?: (("always" | "never") | {
8486
+ multiline?: boolean;
8487
+ minProperties?: number;
8488
+ consistent?: boolean;
8489
+ });
8490
+ TSTypeLiteral?: (("always" | "never") | {
8491
+ multiline?: boolean;
8492
+ minProperties?: number;
8493
+ consistent?: boolean;
8494
+ });
8495
+ TSInterfaceBody?: (("always" | "never") | {
8496
+ multiline?: boolean;
8497
+ minProperties?: number;
8498
+ consistent?: boolean;
8499
+ });
8500
+ })
8501
+ ];
8502
+ type StylisticObjectCurlySpacing = [] | [("always" | "never")] | [
8503
+ ("always" | "never"),
8504
+ {
8505
+ arraysInObjects?: boolean;
8506
+ objectsInObjects?: boolean;
8507
+ }
8508
+ ];
8509
+ type StylisticObjectPropertyNewline = [] | [
8510
+ {
8511
+ allowAllPropertiesOnSameLine?: boolean;
8512
+ allowMultiplePropertiesPerLine?: boolean;
8513
+ }
8514
+ ];
8515
+ type StylisticOneVarDeclarationPerLine = [] | [("always" | "initializations")];
8516
+ type StylisticOperatorLinebreak = [] | [(("after" | "before" | "none") | null)] | [
8517
+ (("after" | "before" | "none") | null),
8518
+ {
8519
+ overrides?: {
8520
+ [k: string]: ("after" | "before" | "none" | "ignore") | undefined;
8521
+ };
8522
+ }
8523
+ ];
8524
+ type StylisticPaddedBlocks = [] | [
8525
+ (("always" | "never" | "start" | "end") | {
8526
+ blocks?: ("always" | "never" | "start" | "end");
8527
+ switches?: ("always" | "never" | "start" | "end");
8528
+ classes?: ("always" | "never" | "start" | "end");
8529
+ })
8530
+ ] | [
8531
+ (("always" | "never" | "start" | "end") | {
8532
+ blocks?: ("always" | "never" | "start" | "end");
8533
+ switches?: ("always" | "never" | "start" | "end");
8534
+ classes?: ("always" | "never" | "start" | "end");
8535
+ }),
8536
+ {
8537
+ allowSingleLineBlocks?: boolean;
8538
+ }
8539
+ ];
8540
+ type _StylisticPaddingLineBetweenStatementsPaddingType = ("any" | "never" | "always");
8541
+ type _StylisticPaddingLineBetweenStatementsStatementType = (("*" | "block-like" | "exports" | "require" | "directive" | "expression" | "iife" | "multiline-block-like" | "multiline-expression" | "multiline-const" | "multiline-export" | "multiline-let" | "multiline-var" | "singleline-const" | "singleline-export" | "singleline-let" | "singleline-var" | "block" | "empty" | "function" | "ts-method" | "break" | "case" | "class" | "const" | "continue" | "debugger" | "default" | "do" | "export" | "for" | "if" | "import" | "let" | "return" | "switch" | "throw" | "try" | "var" | "while" | "with" | "cjs-export" | "cjs-import" | "enum" | "interface" | "type" | "function-overload") | [("*" | "block-like" | "exports" | "require" | "directive" | "expression" | "iife" | "multiline-block-like" | "multiline-expression" | "multiline-const" | "multiline-export" | "multiline-let" | "multiline-var" | "singleline-const" | "singleline-export" | "singleline-let" | "singleline-var" | "block" | "empty" | "function" | "ts-method" | "break" | "case" | "class" | "const" | "continue" | "debugger" | "default" | "do" | "export" | "for" | "if" | "import" | "let" | "return" | "switch" | "throw" | "try" | "var" | "while" | "with" | "cjs-export" | "cjs-import" | "enum" | "interface" | "type" | "function-overload"), ...(("*" | "block-like" | "exports" | "require" | "directive" | "expression" | "iife" | "multiline-block-like" | "multiline-expression" | "multiline-const" | "multiline-export" | "multiline-let" | "multiline-var" | "singleline-const" | "singleline-export" | "singleline-let" | "singleline-var" | "block" | "empty" | "function" | "ts-method" | "break" | "case" | "class" | "const" | "continue" | "debugger" | "default" | "do" | "export" | "for" | "if" | "import" | "let" | "return" | "switch" | "throw" | "try" | "var" | "while" | "with" | "cjs-export" | "cjs-import" | "enum" | "interface" | "type" | "function-overload"))[]]);
8542
+ type StylisticPaddingLineBetweenStatements = {
8543
+ blankLine: _StylisticPaddingLineBetweenStatementsPaddingType;
8544
+ prev: _StylisticPaddingLineBetweenStatementsStatementType;
8545
+ next: _StylisticPaddingLineBetweenStatementsStatementType;
8546
+ }[];
8547
+ type StylisticQuoteProps = ([] | [("always" | "as-needed" | "consistent" | "consistent-as-needed")] | [] | [("always" | "as-needed" | "consistent" | "consistent-as-needed")] | [
8548
+ ("always" | "as-needed" | "consistent" | "consistent-as-needed"),
8549
+ {
8550
+ keywords?: boolean;
8551
+ unnecessary?: boolean;
8552
+ numbers?: boolean;
8553
+ }
8554
+ ]);
8555
+ type StylisticQuotes = [] | [("single" | "double" | "backtick")] | [
8556
+ ("single" | "double" | "backtick"),
8557
+ ("avoid-escape" | {
8558
+ avoidEscape?: boolean;
8559
+ allowTemplateLiterals?: (boolean | ("never" | "avoidEscape" | "always"));
8560
+ ignoreStringLiterals?: boolean;
8561
+ })
8562
+ ];
8563
+ type StylisticRestSpreadSpacing = [] | [("always" | "never")];
8564
+ type StylisticSemi = ([] | ["never"] | [
8565
+ "never",
8566
+ {
8567
+ beforeStatementContinuationChars?: ("always" | "any" | "never");
8568
+ }
8569
+ ] | [] | ["always"] | [
8570
+ "always",
8571
+ {
8572
+ omitLastInOneLineBlock?: boolean;
8573
+ omitLastInOneLineClassBody?: boolean;
8574
+ }
8575
+ ]);
8576
+ type StylisticSemiSpacing = [] | [
8577
+ {
8578
+ before?: boolean;
8579
+ after?: boolean;
8580
+ }
8581
+ ];
8582
+ type StylisticSemiStyle = [] | [("last" | "first")];
8583
+ type StylisticSpaceBeforeBlocks = [] | [
8584
+ (("always" | "never") | {
8585
+ keywords?: ("always" | "never" | "off");
8586
+ functions?: ("always" | "never" | "off");
8587
+ classes?: ("always" | "never" | "off");
8588
+ })
8589
+ ];
8590
+ type StylisticSpaceBeforeFunctionParen = [] | [
8591
+ (("always" | "never") | {
8592
+ anonymous?: ("always" | "never" | "ignore");
8593
+ named?: ("always" | "never" | "ignore");
8594
+ asyncArrow?: ("always" | "never" | "ignore");
8595
+ })
8596
+ ];
8597
+ type StylisticSpaceInParens = [] | [("always" | "never")] | [
8598
+ ("always" | "never"),
8599
+ {
8600
+ exceptions?: ("{}" | "[]" | "()" | "empty")[];
8601
+ }
8602
+ ];
8603
+ type StylisticSpaceInfixOps = [] | [
8604
+ {
8605
+ int32Hint?: boolean;
8606
+ ignoreTypes?: boolean;
8607
+ }
8608
+ ];
8609
+ type StylisticSpaceUnaryOps = [] | [
8610
+ {
8611
+ words?: boolean;
8612
+ nonwords?: boolean;
8613
+ overrides?: {
8614
+ [k: string]: boolean | undefined;
8615
+ };
8616
+ }
8617
+ ];
8618
+ type StylisticSpacedComment = [] | [("always" | "never")] | [
8619
+ ("always" | "never"),
8620
+ {
8621
+ exceptions?: string[];
8622
+ markers?: string[];
8623
+ line?: {
8624
+ exceptions?: string[];
8625
+ markers?: string[];
8626
+ };
8627
+ block?: {
8628
+ exceptions?: string[];
8629
+ markers?: string[];
8630
+ balanced?: boolean;
8631
+ };
8632
+ }
8633
+ ];
8634
+ type StylisticSwitchColonSpacing = [] | [
8635
+ {
8636
+ before?: boolean;
8637
+ after?: boolean;
8638
+ }
8639
+ ];
8640
+ type StylisticTemplateCurlySpacing = [] | [("always" | "never")];
8641
+ type StylisticTemplateTagSpacing = [] | [("always" | "never")];
8642
+ type StylisticTypeAnnotationSpacing = [] | [
8643
+ {
8644
+ before?: boolean;
8645
+ after?: boolean;
8646
+ overrides?: {
8647
+ colon?: _StylisticTypeAnnotationSpacing_SpacingConfig;
8648
+ arrow?: _StylisticTypeAnnotationSpacing_SpacingConfig;
8649
+ variable?: _StylisticTypeAnnotationSpacing_SpacingConfig;
8650
+ parameter?: _StylisticTypeAnnotationSpacing_SpacingConfig;
8651
+ property?: _StylisticTypeAnnotationSpacing_SpacingConfig;
8652
+ returnType?: _StylisticTypeAnnotationSpacing_SpacingConfig;
8653
+ };
8654
+ }
8655
+ ];
8656
+ interface _StylisticTypeAnnotationSpacing_SpacingConfig {
8657
+ before?: boolean;
8658
+ after?: boolean;
8659
+ }
8660
+ type StylisticWrapIife = [] | [("outside" | "inside" | "any")] | [
8661
+ ("outside" | "inside" | "any"),
8662
+ {
8663
+ functionPrototypeMethods?: boolean;
8664
+ }
8665
+ ];
8666
+ type StylisticYieldStarSpacing = [] | [
8667
+ (("before" | "after" | "both" | "neither") | {
8668
+ before?: boolean;
8669
+ after?: boolean;
8670
+ })
8671
+ ];
8672
+
6951
8673
  interface SvelteRules {
6952
8674
  /**
6953
8675
  * disallow conditionals where the type is always truthy or always falsy
@@ -9381,642 +11103,643 @@ type TypescriptEslintUnifiedSignatures = [] | [
9381
11103
  interface UnicornRules {
9382
11104
  /**
9383
11105
  * Improve regexes by making them shorter, consistent, and safer.
9384
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/better-regex.md
11106
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/better-regex.md
9385
11107
  */
9386
11108
  'unicorn/better-regex'?: Linter.RuleEntry<UnicornBetterRegex>;
9387
11109
  /**
9388
11110
  * Enforce a specific parameter name in catch clauses.
9389
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/catch-error-name.md
11111
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/catch-error-name.md
9390
11112
  */
9391
11113
  'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>;
9392
11114
  /**
9393
11115
  * Enforce consistent assertion style with `node:assert`.
9394
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/consistent-assert.md
11116
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-assert.md
9395
11117
  */
9396
11118
  'unicorn/consistent-assert'?: Linter.RuleEntry<[]>;
9397
11119
  /**
9398
11120
  * Prefer passing `Date` directly to the constructor when cloning.
9399
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/consistent-date-clone.md
11121
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-date-clone.md
9400
11122
  */
9401
11123
  'unicorn/consistent-date-clone'?: Linter.RuleEntry<[]>;
9402
11124
  /**
9403
11125
  * Use destructured variables over properties.
9404
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/consistent-destructuring.md
11126
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-destructuring.md
9405
11127
  */
9406
11128
  'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>;
9407
11129
  /**
9408
11130
  * Prefer consistent types when spreading a ternary in an array literal.
9409
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/consistent-empty-array-spread.md
11131
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-empty-array-spread.md
9410
11132
  */
9411
11133
  'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>;
9412
11134
  /**
9413
11135
  * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`.
9414
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/consistent-existence-index-check.md
11136
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-existence-index-check.md
9415
11137
  */
9416
11138
  'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>;
9417
11139
  /**
9418
11140
  * Move function definitions to the highest possible scope.
9419
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/consistent-function-scoping.md
11141
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-function-scoping.md
9420
11142
  */
9421
11143
  'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>;
9422
11144
  /**
9423
11145
  * Enforce correct `Error` subclassing.
9424
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/custom-error-definition.md
11146
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/custom-error-definition.md
9425
11147
  */
9426
11148
  'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>;
9427
11149
  /**
9428
11150
  * Enforce no spaces between braces.
9429
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/empty-brace-spaces.md
11151
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/empty-brace-spaces.md
9430
11152
  */
9431
11153
  'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>;
9432
11154
  /**
9433
11155
  * Enforce passing a `message` value when creating a built-in error.
9434
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/error-message.md
11156
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/error-message.md
9435
11157
  */
9436
11158
  'unicorn/error-message'?: Linter.RuleEntry<[]>;
9437
11159
  /**
9438
- * Require escape sequences to use uppercase values.
9439
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/escape-case.md
11160
+ * Require escape sequences to use uppercase or lowercase values.
11161
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/escape-case.md
9440
11162
  */
9441
- 'unicorn/escape-case'?: Linter.RuleEntry<[]>;
11163
+ 'unicorn/escape-case'?: Linter.RuleEntry<UnicornEscapeCase>;
9442
11164
  /**
9443
11165
  * Add expiration conditions to TODO comments.
9444
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/expiring-todo-comments.md
11166
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/expiring-todo-comments.md
9445
11167
  */
9446
11168
  'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>;
9447
11169
  /**
9448
11170
  * Enforce explicitly comparing the `length` or `size` property of a value.
9449
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/explicit-length-check.md
11171
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/explicit-length-check.md
9450
11172
  */
9451
11173
  'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>;
9452
11174
  /**
9453
11175
  * Enforce a case style for filenames.
9454
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/filename-case.md
11176
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/filename-case.md
9455
11177
  */
9456
11178
  'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>;
9457
11179
  /**
9458
11180
  * Enforce specific import styles per module.
9459
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/import-style.md
11181
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/import-style.md
9460
11182
  */
9461
11183
  'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>;
9462
11184
  /**
9463
11185
  * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.
9464
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/new-for-builtins.md
11186
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/new-for-builtins.md
9465
11187
  */
9466
11188
  'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>;
9467
11189
  /**
9468
11190
  * Enforce specifying rules to disable in `eslint-disable` comments.
9469
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-abusive-eslint-disable.md
11191
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-abusive-eslint-disable.md
9470
11192
  */
9471
11193
  'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>;
9472
11194
  /**
9473
11195
  * Disallow recursive access to `this` within getters and setters.
9474
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-accessor-recursion.md
11196
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-accessor-recursion.md
9475
11197
  */
9476
11198
  'unicorn/no-accessor-recursion'?: Linter.RuleEntry<[]>;
9477
11199
  /**
9478
11200
  * Disallow anonymous functions and classes as the default export.
9479
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-anonymous-default-export.md
11201
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-anonymous-default-export.md
9480
11202
  */
9481
11203
  'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>;
9482
11204
  /**
9483
11205
  * Prevent passing a function reference directly to iterator methods.
9484
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-array-callback-reference.md
11206
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-array-callback-reference.md
9485
11207
  */
9486
11208
  'unicorn/no-array-callback-reference'?: Linter.RuleEntry<[]>;
9487
11209
  /**
9488
11210
  * Prefer `for…of` over the `forEach` method.
9489
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-array-for-each.md
11211
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-array-for-each.md
9490
11212
  */
9491
11213
  'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>;
9492
11214
  /**
9493
11215
  * Disallow using the `this` argument in array methods.
9494
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-array-method-this-argument.md
11216
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-array-method-this-argument.md
9495
11217
  */
9496
11218
  'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>;
9497
11219
  /**
9498
11220
  * Enforce combining multiple `Array#push()` into one call.
9499
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-array-push-push.md
11221
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-array-push-push.md
9500
11222
  */
9501
11223
  'unicorn/no-array-push-push'?: Linter.RuleEntry<UnicornNoArrayPushPush>;
9502
11224
  /**
9503
11225
  * Disallow `Array#reduce()` and `Array#reduceRight()`.
9504
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-array-reduce.md
11226
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-array-reduce.md
9505
11227
  */
9506
11228
  'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>;
9507
11229
  /**
9508
11230
  * Disallow member access from await expression.
9509
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-await-expression-member.md
11231
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-await-expression-member.md
9510
11232
  */
9511
11233
  'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>;
9512
11234
  /**
9513
11235
  * Disallow using `await` in `Promise` method parameters.
9514
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-await-in-promise-methods.md
11236
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-await-in-promise-methods.md
9515
11237
  */
9516
11238
  'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>;
9517
11239
  /**
9518
11240
  * Do not use leading/trailing space between `console.log` parameters.
9519
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-console-spaces.md
11241
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-console-spaces.md
9520
11242
  */
9521
11243
  'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>;
9522
11244
  /**
9523
11245
  * Do not use `document.cookie` directly.
9524
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-document-cookie.md
11246
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-document-cookie.md
9525
11247
  */
9526
11248
  'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>;
9527
11249
  /**
9528
11250
  * Disallow empty files.
9529
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-empty-file.md
11251
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-empty-file.md
9530
11252
  */
9531
11253
  'unicorn/no-empty-file'?: Linter.RuleEntry<[]>;
9532
11254
  /**
9533
11255
  * Do not use a `for` loop that can be replaced with a `for-of` loop.
9534
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-for-loop.md
11256
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-for-loop.md
9535
11257
  */
9536
11258
  'unicorn/no-for-loop'?: Linter.RuleEntry<[]>;
9537
11259
  /**
9538
11260
  * Enforce the use of Unicode escapes instead of hexadecimal escapes.
9539
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-hex-escape.md
11261
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-hex-escape.md
9540
11262
  */
9541
11263
  'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>;
9542
11264
  /**
9543
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/deprecated-rules.md#no-instanceof-array
11265
+ * Replaced by `unicorn/no-instanceof-builtins` which covers more cases.
11266
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/deprecated-rules.md#no-instanceof-array
9544
11267
  * @deprecated
9545
11268
  */
9546
11269
  'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>;
9547
11270
  /**
9548
11271
  * Disallow `instanceof` with built-in objects
9549
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-instanceof-builtins.md
11272
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-instanceof-builtins.md
9550
11273
  */
9551
11274
  'unicorn/no-instanceof-builtins'?: Linter.RuleEntry<UnicornNoInstanceofBuiltins>;
9552
11275
  /**
9553
11276
  * Disallow invalid options in `fetch()` and `new Request()`.
9554
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-invalid-fetch-options.md
11277
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-invalid-fetch-options.md
9555
11278
  */
9556
11279
  'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>;
9557
11280
  /**
9558
11281
  * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
9559
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-invalid-remove-event-listener.md
11282
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-invalid-remove-event-listener.md
9560
11283
  */
9561
11284
  'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>;
9562
11285
  /**
9563
11286
  * Disallow identifiers starting with `new` or `class`.
9564
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-keyword-prefix.md
11287
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-keyword-prefix.md
9565
11288
  */
9566
11289
  'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>;
9567
11290
  /**
9568
11291
  * Disallow using `.length` as the `end` argument of `{Array,String,TypedArray}#slice()`.
9569
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-length-as-slice-end.md
11292
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-length-as-slice-end.md
9570
11293
  */
9571
11294
  'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>;
9572
11295
  /**
9573
11296
  * Disallow `if` statements as the only statement in `if` blocks without `else`.
9574
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-lonely-if.md
11297
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-lonely-if.md
9575
11298
  */
9576
11299
  'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>;
9577
11300
  /**
9578
11301
  * Disallow a magic number as the `depth` argument in `Array#flat(…).`
9579
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-magic-array-flat-depth.md
11302
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-magic-array-flat-depth.md
9580
11303
  */
9581
11304
  'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>;
9582
11305
  /**
9583
11306
  * Disallow named usage of default import and export.
9584
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-named-default.md
11307
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-named-default.md
9585
11308
  */
9586
11309
  'unicorn/no-named-default'?: Linter.RuleEntry<[]>;
9587
11310
  /**
9588
11311
  * Disallow negated conditions.
9589
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-negated-condition.md
11312
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-negated-condition.md
9590
11313
  */
9591
11314
  'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>;
9592
11315
  /**
9593
11316
  * Disallow negated expression in equality check.
9594
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-negation-in-equality-check.md
11317
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-negation-in-equality-check.md
9595
11318
  */
9596
11319
  'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>;
9597
11320
  /**
9598
11321
  * Disallow nested ternary expressions.
9599
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-nested-ternary.md
11322
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-nested-ternary.md
9600
11323
  */
9601
11324
  'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>;
9602
11325
  /**
9603
11326
  * Disallow `new Array()`.
9604
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-new-array.md
11327
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-new-array.md
9605
11328
  */
9606
11329
  'unicorn/no-new-array'?: Linter.RuleEntry<[]>;
9607
11330
  /**
9608
11331
  * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
9609
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-new-buffer.md
11332
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-new-buffer.md
9610
11333
  */
9611
11334
  'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>;
9612
11335
  /**
9613
11336
  * Disallow the use of the `null` literal.
9614
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-null.md
11337
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-null.md
9615
11338
  */
9616
11339
  'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>;
9617
11340
  /**
9618
11341
  * Disallow the use of objects as default parameters.
9619
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-object-as-default-parameter.md
11342
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-object-as-default-parameter.md
9620
11343
  */
9621
11344
  'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>;
9622
11345
  /**
9623
11346
  * Disallow `process.exit()`.
9624
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-process-exit.md
11347
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-process-exit.md
9625
11348
  */
9626
11349
  'unicorn/no-process-exit'?: Linter.RuleEntry<[]>;
9627
11350
  /**
9628
11351
  * Disallow passing single-element arrays to `Promise` methods.
9629
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-single-promise-in-promise-methods.md
11352
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-single-promise-in-promise-methods.md
9630
11353
  */
9631
11354
  'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>;
9632
11355
  /**
9633
11356
  * Disallow classes that only have static members.
9634
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-static-only-class.md
11357
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-static-only-class.md
9635
11358
  */
9636
11359
  'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>;
9637
11360
  /**
9638
11361
  * Disallow `then` property.
9639
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-thenable.md
11362
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-thenable.md
9640
11363
  */
9641
11364
  'unicorn/no-thenable'?: Linter.RuleEntry<[]>;
9642
11365
  /**
9643
11366
  * Disallow assigning `this` to a variable.
9644
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-this-assignment.md
11367
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-this-assignment.md
9645
11368
  */
9646
11369
  'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>;
9647
11370
  /**
9648
11371
  * Disallow comparing `undefined` using `typeof`.
9649
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-typeof-undefined.md
11372
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-typeof-undefined.md
9650
11373
  */
9651
11374
  'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>;
9652
11375
  /**
9653
11376
  * Disallow awaiting non-promise values.
9654
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-unnecessary-await.md
11377
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-unnecessary-await.md
9655
11378
  */
9656
11379
  'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>;
9657
11380
  /**
9658
11381
  * Enforce the use of built-in methods instead of unnecessary polyfills.
9659
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-unnecessary-polyfills.md
11382
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-unnecessary-polyfills.md
9660
11383
  */
9661
11384
  'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>;
9662
11385
  /**
9663
11386
  * Disallow unreadable array destructuring.
9664
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-unreadable-array-destructuring.md
11387
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-unreadable-array-destructuring.md
9665
11388
  */
9666
11389
  'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>;
9667
11390
  /**
9668
11391
  * Disallow unreadable IIFEs.
9669
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-unreadable-iife.md
11392
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-unreadable-iife.md
9670
11393
  */
9671
11394
  'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>;
9672
11395
  /**
9673
11396
  * Disallow unused object properties.
9674
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-unused-properties.md
11397
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-unused-properties.md
9675
11398
  */
9676
11399
  'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>;
9677
11400
  /**
9678
11401
  * Disallow useless fallback when spreading in object literals.
9679
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-useless-fallback-in-spread.md
11402
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-fallback-in-spread.md
9680
11403
  */
9681
11404
  'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>;
9682
11405
  /**
9683
11406
  * Disallow useless array length check.
9684
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-useless-length-check.md
11407
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-length-check.md
9685
11408
  */
9686
11409
  'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>;
9687
11410
  /**
9688
11411
  * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
9689
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-useless-promise-resolve-reject.md
11412
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-promise-resolve-reject.md
9690
11413
  */
9691
11414
  'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>;
9692
11415
  /**
9693
11416
  * Disallow unnecessary spread.
9694
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-useless-spread.md
11417
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-spread.md
9695
11418
  */
9696
11419
  'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>;
9697
11420
  /**
9698
11421
  * Disallow useless case in switch statements.
9699
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-useless-switch-case.md
11422
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-switch-case.md
9700
11423
  */
9701
11424
  'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>;
9702
11425
  /**
9703
11426
  * Disallow useless `undefined`.
9704
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-useless-undefined.md
11427
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-undefined.md
9705
11428
  */
9706
11429
  'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>;
9707
11430
  /**
9708
11431
  * Disallow number literals with zero fractions or dangling dots.
9709
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-zero-fractions.md
11432
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-zero-fractions.md
9710
11433
  */
9711
11434
  'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>;
9712
11435
  /**
9713
11436
  * Enforce proper case for numeric literals.
9714
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/number-literal-case.md
11437
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/number-literal-case.md
9715
11438
  */
9716
- 'unicorn/number-literal-case'?: Linter.RuleEntry<[]>;
11439
+ 'unicorn/number-literal-case'?: Linter.RuleEntry<UnicornNumberLiteralCase>;
9717
11440
  /**
9718
11441
  * Enforce the style of numeric separators by correctly grouping digits.
9719
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/numeric-separators-style.md
11442
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/numeric-separators-style.md
9720
11443
  */
9721
11444
  'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>;
9722
11445
  /**
9723
11446
  * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
9724
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-add-event-listener.md
11447
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-add-event-listener.md
9725
11448
  */
9726
11449
  'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>;
9727
11450
  /**
9728
11451
  * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
9729
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-array-find.md
11452
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-array-find.md
9730
11453
  */
9731
11454
  'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>;
9732
11455
  /**
9733
11456
  * Prefer `Array#flat()` over legacy techniques to flatten arrays.
9734
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-array-flat.md
11457
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-array-flat.md
9735
11458
  */
9736
11459
  'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>;
9737
11460
  /**
9738
11461
  * Prefer `.flatMap(…)` over `.map(…).flat()`.
9739
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-array-flat-map.md
11462
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-array-flat-map.md
9740
11463
  */
9741
11464
  'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>;
9742
11465
  /**
9743
11466
  * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
9744
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-array-index-of.md
11467
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-array-index-of.md
9745
11468
  */
9746
11469
  'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>;
9747
11470
  /**
9748
11471
  * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.
9749
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-array-some.md
11472
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-array-some.md
9750
11473
  */
9751
11474
  'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>;
9752
11475
  /**
9753
11476
  * Prefer `.at()` method for index access and `String#charAt()`.
9754
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-at.md
11477
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-at.md
9755
11478
  */
9756
11479
  'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>;
9757
11480
  /**
9758
11481
  * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
9759
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-blob-reading-methods.md
11482
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-blob-reading-methods.md
9760
11483
  */
9761
11484
  'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>;
9762
11485
  /**
9763
11486
  * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
9764
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-code-point.md
11487
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-code-point.md
9765
11488
  */
9766
11489
  'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>;
9767
11490
  /**
9768
11491
  * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
9769
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-date-now.md
11492
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-date-now.md
9770
11493
  */
9771
11494
  'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>;
9772
11495
  /**
9773
11496
  * Prefer default parameters over reassignment.
9774
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-default-parameters.md
11497
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-default-parameters.md
9775
11498
  */
9776
11499
  'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>;
9777
11500
  /**
9778
11501
  * Prefer `Node#append()` over `Node#appendChild()`.
9779
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-dom-node-append.md
11502
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-dom-node-append.md
9780
11503
  */
9781
11504
  'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>;
9782
11505
  /**
9783
11506
  * Prefer using `.dataset` on DOM elements over calling attribute methods.
9784
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-dom-node-dataset.md
11507
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-dom-node-dataset.md
9785
11508
  */
9786
11509
  'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>;
9787
11510
  /**
9788
11511
  * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
9789
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-dom-node-remove.md
11512
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-dom-node-remove.md
9790
11513
  */
9791
11514
  'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>;
9792
11515
  /**
9793
11516
  * Prefer `.textContent` over `.innerText`.
9794
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-dom-node-text-content.md
11517
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-dom-node-text-content.md
9795
11518
  */
9796
11519
  'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>;
9797
11520
  /**
9798
11521
  * Prefer `EventTarget` over `EventEmitter`.
9799
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-event-target.md
11522
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-event-target.md
9800
11523
  */
9801
11524
  'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>;
9802
11525
  /**
9803
11526
  * Prefer `export…from` when re-exporting.
9804
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-export-from.md
11527
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-export-from.md
9805
11528
  */
9806
11529
  'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>;
9807
11530
  /**
9808
11531
  * Prefer `globalThis` over `window`, `self`, and `global`.
9809
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-global-this.md
11532
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-global-this.md
9810
11533
  */
9811
11534
  'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>;
9812
11535
  /**
9813
11536
  * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence.
9814
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-includes.md
11537
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-includes.md
9815
11538
  */
9816
11539
  'unicorn/prefer-includes'?: Linter.RuleEntry<[]>;
9817
11540
  /**
9818
11541
  * Prefer reading a JSON file as a buffer.
9819
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-json-parse-buffer.md
11542
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-json-parse-buffer.md
9820
11543
  */
9821
11544
  'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>;
9822
11545
  /**
9823
11546
  * Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`.
9824
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-keyboard-event-key.md
11547
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-keyboard-event-key.md
9825
11548
  */
9826
11549
  'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>;
9827
11550
  /**
9828
11551
  * Prefer using a logical operator over a ternary.
9829
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-logical-operator-over-ternary.md
11552
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-logical-operator-over-ternary.md
9830
11553
  */
9831
11554
  'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>;
9832
11555
  /**
9833
11556
  * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons.
9834
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-math-min-max.md
11557
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-math-min-max.md
9835
11558
  */
9836
11559
  'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>;
9837
11560
  /**
9838
11561
  * Enforce the use of `Math.trunc` instead of bitwise operators.
9839
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-math-trunc.md
11562
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-math-trunc.md
9840
11563
  */
9841
11564
  'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>;
9842
11565
  /**
9843
11566
  * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`.
9844
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-modern-dom-apis.md
11567
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-modern-dom-apis.md
9845
11568
  */
9846
11569
  'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>;
9847
11570
  /**
9848
11571
  * Prefer modern `Math` APIs over legacy patterns.
9849
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-modern-math-apis.md
11572
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-modern-math-apis.md
9850
11573
  */
9851
11574
  'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>;
9852
11575
  /**
9853
11576
  * Prefer JavaScript modules (ESM) over CommonJS.
9854
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-module.md
11577
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-module.md
9855
11578
  */
9856
11579
  'unicorn/prefer-module'?: Linter.RuleEntry<[]>;
9857
11580
  /**
9858
11581
  * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
9859
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-native-coercion-functions.md
11582
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-native-coercion-functions.md
9860
11583
  */
9861
11584
  'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>;
9862
11585
  /**
9863
11586
  * Prefer negative index over `.length - index` when possible.
9864
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-negative-index.md
11587
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-negative-index.md
9865
11588
  */
9866
11589
  'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>;
9867
11590
  /**
9868
11591
  * Prefer using the `node:` protocol when importing Node.js builtin modules.
9869
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-node-protocol.md
11592
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-node-protocol.md
9870
11593
  */
9871
11594
  'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>;
9872
11595
  /**
9873
11596
  * Prefer `Number` static properties over global ones.
9874
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-number-properties.md
11597
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-number-properties.md
9875
11598
  */
9876
11599
  'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>;
9877
11600
  /**
9878
11601
  * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
9879
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-object-from-entries.md
11602
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-object-from-entries.md
9880
11603
  */
9881
11604
  'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>;
9882
11605
  /**
9883
11606
  * Prefer omitting the `catch` binding parameter.
9884
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-optional-catch-binding.md
11607
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-optional-catch-binding.md
9885
11608
  */
9886
11609
  'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>;
9887
11610
  /**
9888
11611
  * Prefer borrowing methods from the prototype instead of the instance.
9889
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-prototype-methods.md
11612
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-prototype-methods.md
9890
11613
  */
9891
11614
  'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>;
9892
11615
  /**
9893
11616
  * Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()` and `.getElementsByName()`.
9894
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-query-selector.md
11617
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-query-selector.md
9895
11618
  */
9896
11619
  'unicorn/prefer-query-selector'?: Linter.RuleEntry<[]>;
9897
11620
  /**
9898
11621
  * Prefer `Reflect.apply()` over `Function#apply()`.
9899
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-reflect-apply.md
11622
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-reflect-apply.md
9900
11623
  */
9901
11624
  'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>;
9902
11625
  /**
9903
11626
  * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.
9904
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-regexp-test.md
11627
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-regexp-test.md
9905
11628
  */
9906
11629
  'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>;
9907
11630
  /**
9908
11631
  * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
9909
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-set-has.md
11632
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-set-has.md
9910
11633
  */
9911
11634
  'unicorn/prefer-set-has'?: Linter.RuleEntry<[]>;
9912
11635
  /**
9913
11636
  * Prefer using `Set#size` instead of `Array#length`.
9914
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-set-size.md
11637
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-set-size.md
9915
11638
  */
9916
11639
  'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>;
9917
11640
  /**
9918
11641
  * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`.
9919
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-spread.md
11642
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-spread.md
9920
11643
  */
9921
11644
  'unicorn/prefer-spread'?: Linter.RuleEntry<[]>;
9922
11645
  /**
9923
11646
  * Prefer using the `String.raw` tag to avoid escaping `\`.
9924
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-string-raw.md
11647
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-string-raw.md
9925
11648
  */
9926
11649
  'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>;
9927
11650
  /**
9928
11651
  * Prefer `String#replaceAll()` over regex searches with the global flag.
9929
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-string-replace-all.md
11652
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-string-replace-all.md
9930
11653
  */
9931
11654
  'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>;
9932
11655
  /**
9933
11656
  * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
9934
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-string-slice.md
11657
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-string-slice.md
9935
11658
  */
9936
11659
  'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>;
9937
11660
  /**
9938
11661
  * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`.
9939
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-string-starts-ends-with.md
11662
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-string-starts-ends-with.md
9940
11663
  */
9941
11664
  'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>;
9942
11665
  /**
9943
11666
  * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
9944
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-string-trim-start-end.md
11667
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-string-trim-start-end.md
9945
11668
  */
9946
11669
  'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>;
9947
11670
  /**
9948
11671
  * Prefer using `structuredClone` to create a deep clone.
9949
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-structured-clone.md
11672
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-structured-clone.md
9950
11673
  */
9951
11674
  'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>;
9952
11675
  /**
9953
11676
  * Prefer `switch` over multiple `else-if`.
9954
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-switch.md
11677
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-switch.md
9955
11678
  */
9956
11679
  'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>;
9957
11680
  /**
9958
11681
  * Prefer ternary expressions over simple `if-else` statements.
9959
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-ternary.md
11682
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-ternary.md
9960
11683
  */
9961
11684
  'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>;
9962
11685
  /**
9963
11686
  * Prefer top-level await over top-level promises and async function calls.
9964
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-top-level-await.md
11687
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-top-level-await.md
9965
11688
  */
9966
11689
  'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>;
9967
11690
  /**
9968
11691
  * Enforce throwing `TypeError` in type checking conditions.
9969
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-type-error.md
11692
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-type-error.md
9970
11693
  */
9971
11694
  'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>;
9972
11695
  /**
9973
11696
  * Prevent abbreviations.
9974
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prevent-abbreviations.md
11697
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prevent-abbreviations.md
9975
11698
  */
9976
11699
  'unicorn/prevent-abbreviations'?: Linter.RuleEntry<UnicornPreventAbbreviations>;
9977
11700
  /**
9978
11701
  * Enforce consistent relative URL style.
9979
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/relative-url-style.md
11702
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/relative-url-style.md
9980
11703
  */
9981
11704
  'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>;
9982
11705
  /**
9983
11706
  * Enforce using the separator argument with `Array#join()`.
9984
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/require-array-join-separator.md
11707
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/require-array-join-separator.md
9985
11708
  */
9986
11709
  'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>;
9987
11710
  /**
9988
11711
  * Enforce using the digits argument with `Number#toFixed()`.
9989
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/require-number-to-fixed-digits-argument.md
11712
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/require-number-to-fixed-digits-argument.md
9990
11713
  */
9991
11714
  'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>;
9992
11715
  /**
9993
11716
  * Enforce using the `targetOrigin` argument with `window.postMessage()`.
9994
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/require-post-message-target-origin.md
11717
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/require-post-message-target-origin.md
9995
11718
  */
9996
11719
  'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>;
9997
11720
  /**
9998
11721
  * Enforce better string content.
9999
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/string-content.md
11722
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/string-content.md
10000
11723
  */
10001
11724
  'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>;
10002
11725
  /**
10003
11726
  * Enforce consistent brace style for `case` clauses.
10004
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/switch-case-braces.md
11727
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/switch-case-braces.md
10005
11728
  */
10006
11729
  'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>;
10007
11730
  /**
10008
11731
  * Fix whitespace-insensitive template indentation.
10009
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/template-indent.md
11732
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/template-indent.md
10010
11733
  */
10011
11734
  'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>;
10012
11735
  /**
10013
11736
  * Enforce consistent case for text encoding identifiers.
10014
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/text-encoding-identifier-case.md
11737
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/text-encoding-identifier-case.md
10015
11738
  */
10016
11739
  'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<[]>;
10017
11740
  /**
10018
11741
  * Require `new` when creating an error.
10019
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/throw-new-error.md
11742
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/throw-new-error.md
10020
11743
  */
10021
11744
  'unicorn/throw-new-error'?: Linter.RuleEntry<[]>;
10022
11745
  }
@@ -10036,6 +11759,7 @@ type UnicornConsistentFunctionScoping = [] | [
10036
11759
  checkArrowFunctions?: boolean;
10037
11760
  }
10038
11761
  ];
11762
+ type UnicornEscapeCase = [] | [("uppercase" | "lowercase")];
10039
11763
  type UnicornExpiringTodoComments = [] | [
10040
11764
  {
10041
11765
  terms?: string[];
@@ -10131,6 +11855,11 @@ type UnicornNoUselessUndefined = [] | [
10131
11855
  checkArrowFunctionBody?: boolean;
10132
11856
  }
10133
11857
  ];
11858
+ type UnicornNumberLiteralCase = [] | [
11859
+ {
11860
+ hexadecimalValue?: ("uppercase" | "lowercase");
11861
+ }
11862
+ ];
10134
11863
  type UnicornNumericSeparatorsStyle = [] | [
10135
11864
  {
10136
11865
  binary?: {
@@ -10686,6 +12415,111 @@ type VitestValidTitle = [] | [
10686
12415
  ];
10687
12416
 
10688
12417
  interface VueRules {
12418
+ /**
12419
+ * enforce specific casing for localization keys
12420
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/key-format-style.html
12421
+ */
12422
+ '@intlify/vue-i18n/key-format-style'?: Linter.RuleEntry<IntlifyVueI18NKeyFormatStyle>;
12423
+ /**
12424
+ * disallow using deprecated `<i18n>` components (in Vue I18n 9.0.0+)
12425
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-deprecated-i18n-component.html
12426
+ */
12427
+ '@intlify/vue-i18n/no-deprecated-i18n-component'?: Linter.RuleEntry<[]>;
12428
+ /**
12429
+ * disallow using deprecated `place` attribute (Removed in Vue I18n 9.0.0+)
12430
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-deprecated-i18n-place-attr.html
12431
+ */
12432
+ '@intlify/vue-i18n/no-deprecated-i18n-place-attr'?: Linter.RuleEntry<[]>;
12433
+ /**
12434
+ * disallow using deprecated `places` prop (Removed in Vue I18n 9.0.0+)
12435
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-deprecated-i18n-places-prop.html
12436
+ */
12437
+ '@intlify/vue-i18n/no-deprecated-i18n-places-prop'?: Linter.RuleEntry<[]>;
12438
+ /**
12439
+ * enforce modulo interpolation to be named interpolation
12440
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-deprecated-modulo-syntax.html
12441
+ */
12442
+ '@intlify/vue-i18n/no-deprecated-modulo-syntax'?: Linter.RuleEntry<[]>;
12443
+ /**
12444
+ * disallow using deprecated `tc` or `$tc` (Deprecated in Vue I18n 10.0.0, removed fully in Vue I18n 11.0.0)
12445
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-deprecated-tc.html
12446
+ */
12447
+ '@intlify/vue-i18n/no-deprecated-tc'?: Linter.RuleEntry<[]>;
12448
+ /**
12449
+ * disallow using deprecated `v-t` custom directive (Deprecated in Vue I18n 11.0.0, removed fully in Vue I18n 12.0.0)
12450
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-deprecated-v-t.html
12451
+ */
12452
+ '@intlify/vue-i18n/no-deprecated-v-t'?: Linter.RuleEntry<[]>;
12453
+ /**
12454
+ * disallow duplicate localization keys within the same locale
12455
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-duplicate-keys-in-locale.html
12456
+ */
12457
+ '@intlify/vue-i18n/no-duplicate-keys-in-locale'?: Linter.RuleEntry<IntlifyVueI18NNoDuplicateKeysInLocale>;
12458
+ /**
12459
+ * disallow localization dynamic keys at localization methods
12460
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-dynamic-keys.html
12461
+ */
12462
+ '@intlify/vue-i18n/no-dynamic-keys'?: Linter.RuleEntry<[]>;
12463
+ /**
12464
+ * disallow use HTML localization messages
12465
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-html-messages.html
12466
+ */
12467
+ '@intlify/vue-i18n/no-html-messages'?: Linter.RuleEntry<[]>;
12468
+ /**
12469
+ * disallow using `path` prop with `<i18n-t>`
12470
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-i18n-t-path-prop.html
12471
+ */
12472
+ '@intlify/vue-i18n/no-i18n-t-path-prop'?: Linter.RuleEntry<[]>;
12473
+ /**
12474
+ * disallow missing locale message key at localization methods
12475
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-missing-keys.html
12476
+ */
12477
+ '@intlify/vue-i18n/no-missing-keys'?: Linter.RuleEntry<[]>;
12478
+ /**
12479
+ * disallow missing locale message keys in other locales
12480
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-missing-keys-in-other-locales.html
12481
+ */
12482
+ '@intlify/vue-i18n/no-missing-keys-in-other-locales'?: Linter.RuleEntry<IntlifyVueI18NNoMissingKeysInOtherLocales>;
12483
+ /**
12484
+ * disallow to string literal in template or JSX
12485
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-raw-text.html
12486
+ */
12487
+ '@intlify/vue-i18n/no-raw-text'?: Linter.RuleEntry<IntlifyVueI18NNoRawText>;
12488
+ /**
12489
+ * disallow unknown locale name
12490
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-unknown-locale.html
12491
+ */
12492
+ '@intlify/vue-i18n/no-unknown-locale'?: Linter.RuleEntry<IntlifyVueI18NNoUnknownLocale>;
12493
+ /**
12494
+ * disallow unused localization keys
12495
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-unused-keys.html
12496
+ */
12497
+ '@intlify/vue-i18n/no-unused-keys'?: Linter.RuleEntry<IntlifyVueI18NNoUnusedKeys>;
12498
+ /**
12499
+ * disallow use of localization methods on v-html to prevent XSS attack
12500
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/no-v-html.html
12501
+ */
12502
+ '@intlify/vue-i18n/no-v-html'?: Linter.RuleEntry<[]>;
12503
+ /**
12504
+ * enforce linked key to be enclosed in parentheses
12505
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/prefer-linked-key-with-paren.html
12506
+ */
12507
+ '@intlify/vue-i18n/prefer-linked-key-with-paren'?: Linter.RuleEntry<[]>;
12508
+ /**
12509
+ * require lang attribute on `<i18n>` block
12510
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/prefer-sfc-lang-attr.html
12511
+ */
12512
+ '@intlify/vue-i18n/prefer-sfc-lang-attr'?: Linter.RuleEntry<[]>;
12513
+ /**
12514
+ * require or disallow the locale attribute on `<i18n>` block
12515
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/sfc-locale-attr.html
12516
+ */
12517
+ '@intlify/vue-i18n/sfc-locale-attr'?: Linter.RuleEntry<IntlifyVueI18NSfcLocaleAttr>;
12518
+ /**
12519
+ * disallow invalid message syntax
12520
+ * @see https://eslint-plugin-vue-i18n.intlify.dev/rules/valid-message-syntax.html
12521
+ */
12522
+ '@intlify/vue-i18n/valid-message-syntax'?: Linter.RuleEntry<IntlifyVueI18NValidMessageSyntax>;
10689
12523
  'vue-composable/composable-placement'?: Linter.RuleEntry<[]>;
10690
12524
  'vue-composable/lifecycle-placement'?: Linter.RuleEntry<[]>;
10691
12525
  /**
@@ -10864,12 +12698,6 @@ interface VueRules {
10864
12698
  * @see https://eslint.vuejs.org/rules/component-options-name-casing.html
10865
12699
  */
10866
12700
  'vue/component-options-name-casing'?: Linter.RuleEntry<VueComponentOptionsNameCasing>;
10867
- /**
10868
- * enforce order of component top-level elements
10869
- * @see https://eslint.vuejs.org/rules/component-tags-order.html
10870
- * @deprecated
10871
- */
10872
- 'vue/component-tags-order'?: Linter.RuleEntry<VueComponentTagsOrder>;
10873
12701
  /**
10874
12702
  * enforce specific casing for custom event name
10875
12703
  * @see https://eslint.vuejs.org/rules/custom-event-name-casing.html
@@ -10976,7 +12804,7 @@ interface VueRules {
10976
12804
  */
10977
12805
  'vue/jsx-uses-vars'?: Linter.RuleEntry<[]>;
10978
12806
  /**
10979
- * Enforce consistent spacing between keys and values in object literal properties in `<template>`
12807
+ * Enforce consistent spacing between property names and type annotations in types and interfaces in `<template>`
10980
12808
  * @see https://eslint.vuejs.org/rules/key-spacing.html
10981
12809
  */
10982
12810
  'vue/key-spacing'?: Linter.RuleEntry<VueKeySpacing>;
@@ -11251,11 +13079,10 @@ interface VueRules {
11251
13079
  */
11252
13080
  'vue/no-implicit-coercion'?: Linter.RuleEntry<VueNoImplicitCoercion>;
11253
13081
  /**
11254
- * require valid keys in model option
11255
- * @see https://eslint.vuejs.org/rules/no-invalid-model-keys.html
11256
- * @deprecated
13082
+ * disallow importing Vue compiler macros
13083
+ * @see https://eslint.vuejs.org/rules/no-import-compiler-macros.html
11257
13084
  */
11258
- 'vue/no-invalid-model-keys'?: Linter.RuleEntry<[]>;
13085
+ 'vue/no-import-compiler-macros'?: Linter.RuleEntry<[]>;
11259
13086
  /**
11260
13087
  * disallow irregular whitespace in `.vue` files
11261
13088
  * @see https://eslint.vuejs.org/rules/no-irregular-whitespace.html
@@ -11316,12 +13143,6 @@ interface VueRules {
11316
13143
  * @see https://eslint.vuejs.org/rules/no-ref-as-operand.html
11317
13144
  */
11318
13145
  'vue/no-ref-as-operand'?: Linter.RuleEntry<[]>;
11319
- /**
11320
- * disallow usages of ref objects that can lead to loss of reactivity
11321
- * @see https://eslint.vuejs.org/rules/no-ref-object-destructure.html
11322
- * @deprecated
11323
- */
11324
- 'vue/no-ref-object-destructure'?: Linter.RuleEntry<[]>;
11325
13146
  /**
11326
13147
  * disallow usages of ref objects that can lead to loss of reactivity
11327
13148
  * @see https://eslint.vuejs.org/rules/no-ref-object-reactivity-loss.html
@@ -11412,12 +13233,6 @@ interface VueRules {
11412
13233
  * @see https://eslint.vuejs.org/rules/no-root-v-if.html
11413
13234
  */
11414
13235
  'vue/no-root-v-if'?: Linter.RuleEntry<[]>;
11415
- /**
11416
- * disallow usages that lose the reactivity of `props` passed to `setup`
11417
- * @see https://eslint.vuejs.org/rules/no-setup-props-destructure.html
11418
- * @deprecated
11419
- */
11420
- 'vue/no-setup-props-destructure'?: Linter.RuleEntry<[]>;
11421
13236
  /**
11422
13237
  * disallow usages that lose the reactivity of `props` passed to `setup`
11423
13238
  * @see https://eslint.vuejs.org/rules/no-setup-props-reactivity-loss.html
@@ -11551,6 +13366,7 @@ interface VueRules {
11551
13366
  /**
11552
13367
  * disallow `key` attribute on `<template v-for>`
11553
13368
  * @see https://eslint.vuejs.org/rules/no-v-for-template-key.html
13369
+ * @deprecated
11554
13370
  */
11555
13371
  'vue/no-v-for-template-key'?: Linter.RuleEntry<[]>;
11556
13372
  /**
@@ -11566,6 +13382,7 @@ interface VueRules {
11566
13382
  /**
11567
13383
  * disallow adding an argument to `v-model` used in custom component
11568
13384
  * @see https://eslint.vuejs.org/rules/no-v-model-argument.html
13385
+ * @deprecated
11569
13386
  */
11570
13387
  'vue/no-v-model-argument'?: Linter.RuleEntry<[]>;
11571
13388
  /**
@@ -11674,7 +13491,7 @@ interface VueRules {
11674
13491
  */
11675
13492
  'vue/prop-name-casing'?: Linter.RuleEntry<VuePropNameCasing>;
11676
13493
  /**
11677
- * Require quotes around object literal property names in `<template>`
13494
+ * Require quotes around object literal, type literal, interfaces and enums property names in `<template>`
11678
13495
  * @see https://eslint.vuejs.org/rules/quote-props.html
11679
13496
  */
11680
13497
  'vue/quote-props'?: Linter.RuleEntry<VueQuoteProps>;
@@ -11798,12 +13615,6 @@ interface VueRules {
11798
13615
  * @see https://eslint.vuejs.org/rules/script-indent.html
11799
13616
  */
11800
13617
  'vue/script-indent'?: Linter.RuleEntry<VueScriptIndent>;
11801
- /**
11802
- * prevent `<script setup>` variables used in `<template>` to be marked as unused
11803
- * @see https://eslint.vuejs.org/rules/script-setup-uses-vars.html
11804
- * @deprecated
11805
- */
11806
- 'vue/script-setup-uses-vars'?: Linter.RuleEntry<[]>;
11807
13618
  /**
11808
13619
  * require a line break before and after the contents of a singleline element
11809
13620
  * @see https://eslint.vuejs.org/rules/singleline-html-element-content-newline.html
@@ -11874,12 +13685,6 @@ interface VueRules {
11874
13685
  * @see https://eslint.vuejs.org/rules/v-on-event-hyphenation.html
11875
13686
  */
11876
13687
  'vue/v-on-event-hyphenation'?: Linter.RuleEntry<VueVOnEventHyphenation>;
11877
- /**
11878
- * enforce or forbid parentheses after method calls without arguments in `v-on` directives
11879
- * @see https://eslint.vuejs.org/rules/v-on-function-call.html
11880
- * @deprecated
11881
- */
11882
- 'vue/v-on-function-call'?: Linter.RuleEntry<VueVOnFunctionCall>;
11883
13688
  /**
11884
13689
  * enforce writing style for handlers in `v-on` directives
11885
13690
  * @see https://eslint.vuejs.org/rules/v-on-handler-style.html
@@ -11918,6 +13723,7 @@ interface VueRules {
11918
13723
  /**
11919
13724
  * require valid keys in model option
11920
13725
  * @see https://eslint.vuejs.org/rules/valid-model-definition.html
13726
+ * @deprecated
11921
13727
  */
11922
13728
  'vue/valid-model-definition'?: Linter.RuleEntry<[]>;
11923
13729
  /**
@@ -11938,6 +13744,7 @@ interface VueRules {
11938
13744
  /**
11939
13745
  * enforce valid `.sync` modifier on `v-bind` directives
11940
13746
  * @see https://eslint.vuejs.org/rules/valid-v-bind-sync.html
13747
+ * @deprecated
11941
13748
  */
11942
13749
  'vue/valid-v-bind-sync'?: Linter.RuleEntry<[]>;
11943
13750
  /**
@@ -12109,6 +13916,54 @@ interface VueRules {
12109
13916
  */
12110
13917
  'vuejs-accessibility/tabindex-no-positive'?: Linter.RuleEntry<[]>;
12111
13918
  }
13919
+ type IntlifyVueI18NKeyFormatStyle = [] | [("camelCase" | "kebab-case" | "lowercase" | "snake_case" | "SCREAMING_SNAKE_CASE")] | [
13920
+ ("camelCase" | "kebab-case" | "lowercase" | "snake_case" | "SCREAMING_SNAKE_CASE"),
13921
+ {
13922
+ allowArray?: boolean;
13923
+ splitByDots?: boolean;
13924
+ }
13925
+ ];
13926
+ type IntlifyVueI18NNoDuplicateKeysInLocale = [] | [
13927
+ {
13928
+ ignoreI18nBlock?: boolean;
13929
+ }
13930
+ ];
13931
+ type IntlifyVueI18NNoMissingKeysInOtherLocales = [] | [
13932
+ {
13933
+ ignoreLocales?: string[];
13934
+ }
13935
+ ];
13936
+ type IntlifyVueI18NNoRawText = [] | [
13937
+ {
13938
+ attributes?: {
13939
+ [k: string]: string[];
13940
+ };
13941
+ ignoreNodes?: unknown[];
13942
+ ignorePattern?: string;
13943
+ ignoreText?: unknown[];
13944
+ [k: string]: unknown | undefined;
13945
+ }
13946
+ ];
13947
+ type IntlifyVueI18NNoUnknownLocale = [] | [
13948
+ {
13949
+ locales?: string[];
13950
+ disableRFC5646?: boolean;
13951
+ }
13952
+ ];
13953
+ type IntlifyVueI18NNoUnusedKeys = [] | [
13954
+ {
13955
+ src?: string;
13956
+ extensions?: string[];
13957
+ ignores?: string[];
13958
+ enableFix?: boolean;
13959
+ }
13960
+ ];
13961
+ type IntlifyVueI18NSfcLocaleAttr = [] | [("always" | "never")];
13962
+ type IntlifyVueI18NValidMessageSyntax = [] | [
13963
+ {
13964
+ allowNotString?: boolean;
13965
+ }
13966
+ ];
12112
13967
  type VueScopedCssEnforceStyleType = [] | [
12113
13968
  {
12114
13969
  allows?: [("plain" | "scoped" | "module"), ...(("plain" | "scoped" | "module"))[]];
@@ -12158,6 +14013,7 @@ type VueArrayElementNewline = [] | [
12158
14013
  })
12159
14014
  ];
12160
14015
  type _VueArrayElementNewlineBasicConfig = (("always" | "never" | "consistent") | {
14016
+ consistent?: boolean;
12161
14017
  multiline?: boolean;
12162
14018
  minItems?: (number | null);
12163
14019
  });
@@ -12234,10 +14090,15 @@ type VueCommaDangle = [] | [
12234
14090
  imports?: _VueCommaDangleValueWithIgnore;
12235
14091
  exports?: _VueCommaDangleValueWithIgnore;
12236
14092
  functions?: _VueCommaDangleValueWithIgnore;
14093
+ importAttributes?: _VueCommaDangleValueWithIgnore;
14094
+ dynamicImports?: _VueCommaDangleValueWithIgnore;
14095
+ enums?: _VueCommaDangleValueWithIgnore;
14096
+ generics?: _VueCommaDangleValueWithIgnore;
14097
+ tuples?: _VueCommaDangleValueWithIgnore;
12237
14098
  })
12238
14099
  ];
12239
14100
  type _VueCommaDangleValue = ("always-multiline" | "always" | "never" | "only-multiline");
12240
- type _VueCommaDangleValueWithIgnore = ("always-multiline" | "always" | "ignore" | "never" | "only-multiline");
14101
+ type _VueCommaDangleValueWithIgnore = ("always-multiline" | "always" | "never" | "only-multiline" | "ignore");
12241
14102
  type VueCommaSpacing = [] | [
12242
14103
  {
12243
14104
  before?: boolean;
@@ -12268,21 +14129,12 @@ type VueComponentNameInTemplateCasing = [] | [("PascalCase" | "kebab-case")] | [
12268
14129
  }
12269
14130
  ];
12270
14131
  type VueComponentOptionsNameCasing = [] | [("camelCase" | "kebab-case" | "PascalCase")];
12271
- type VueComponentTagsOrder = [] | [
12272
- {
12273
- order?: (string | string[])[];
12274
- }
12275
- ];
12276
- type VueCustomEventNameCasing = ([] | [("kebab-case" | "camelCase")] | [
14132
+ type VueCustomEventNameCasing = [] | [("kebab-case" | "camelCase")] | [
12277
14133
  ("kebab-case" | "camelCase"),
12278
14134
  {
12279
14135
  ignores?: string[];
12280
14136
  }
12281
- ] | [] | [
12282
- {
12283
- ignores?: string[];
12284
- }
12285
- ]);
14137
+ ];
12286
14138
  type VueDefineEmitsDeclaration = [] | [("type-based" | "type-literal" | "runtime")];
12287
14139
  type VueDefineMacrosOrder = [] | [
12288
14140
  {
@@ -12319,6 +14171,10 @@ type VueFuncCallSpacing = ([] | ["never"] | [] | ["always"] | [
12319
14171
  "always",
12320
14172
  {
12321
14173
  allowNewlines?: boolean;
14174
+ optionalChain?: {
14175
+ before?: boolean;
14176
+ after?: boolean;
14177
+ };
12322
14178
  }
12323
14179
  ]);
12324
14180
  type VueHtmlButtonHasType = [] | [
@@ -12414,6 +14270,7 @@ type VueKeySpacing = [] | [
12414
14270
  mode?: ("strict" | "minimum");
12415
14271
  beforeColon?: boolean;
12416
14272
  afterColon?: boolean;
14273
+ ignoredNodes?: ("ObjectExpression" | "ObjectPattern" | "ImportDeclaration" | "ExportNamedDeclaration" | "ExportAllDeclaration" | "TSTypeLiteral" | "TSInterfaceBody" | "ClassBody")[];
12417
14274
  } | {
12418
14275
  singleLine?: {
12419
14276
  mode?: ("strict" | "minimum");
@@ -12651,6 +14508,10 @@ type VueKeywordSpacing = [] | [
12651
14508
  before?: boolean;
12652
14509
  after?: boolean;
12653
14510
  };
14511
+ satisfies?: {
14512
+ before?: boolean;
14513
+ after?: boolean;
14514
+ };
12654
14515
  set?: {
12655
14516
  before?: boolean;
12656
14517
  after?: boolean;
@@ -12727,6 +14588,10 @@ type VueKeywordSpacing = [] | [
12727
14588
  before?: boolean;
12728
14589
  after?: boolean;
12729
14590
  };
14591
+ type?: {
14592
+ before?: boolean;
14593
+ after?: boolean;
14594
+ };
12730
14595
  };
12731
14596
  }
12732
14597
  ];
@@ -12870,7 +14735,13 @@ type VueMultilineHtmlElementContentNewline = [] | [
12870
14735
  allowEmptyLines?: boolean;
12871
14736
  }
12872
14737
  ];
12873
- type VueMultilineTernary = [] | [("always" | "always-multiline" | "never")];
14738
+ type VueMultilineTernary = [] | [("always" | "always-multiline" | "never")] | [
14739
+ ("always" | "always-multiline" | "never"),
14740
+ {
14741
+ ignoreJSX?: boolean;
14742
+ [k: string]: unknown | undefined;
14743
+ }
14744
+ ];
12874
14745
  type VueMustacheInterpolationSpacing = [] | [("always" | "never")];
12875
14746
  type VueNewLineBetweenMultiLineProperty = [] | [
12876
14747
  {
@@ -12952,6 +14823,7 @@ type VueNoExtraParens = ([] | ["functions"] | [] | ["all"] | [
12952
14823
  enforceForNewInMemberExpressions?: boolean;
12953
14824
  enforceForFunctionPrototypeMethods?: boolean;
12954
14825
  allowParensAfterCommentPattern?: string;
14826
+ nestedConditionalExpressions?: boolean;
12955
14827
  }
12956
14828
  ]);
12957
14829
  type VueNoImplicitCoercion = [] | [
@@ -13212,6 +15084,16 @@ type VueObjectCurlyNewline = [] | [
13212
15084
  minProperties?: number;
13213
15085
  consistent?: boolean;
13214
15086
  });
15087
+ TSTypeLiteral?: (("always" | "never") | {
15088
+ multiline?: boolean;
15089
+ minProperties?: number;
15090
+ consistent?: boolean;
15091
+ });
15092
+ TSInterfaceBody?: (("always" | "never") | {
15093
+ multiline?: boolean;
15094
+ minProperties?: number;
15095
+ consistent?: boolean;
15096
+ });
13215
15097
  })
13216
15098
  ];
13217
15099
  type VueObjectCurlySpacing = [] | [("always" | "never")] | [
@@ -13241,8 +15123,8 @@ type VueObjectShorthand = ([] | [("always" | "methods" | "properties" | "never"
13241
15123
  avoidExplicitReturnArrows?: boolean;
13242
15124
  }
13243
15125
  ]);
13244
- type VueOperatorLinebreak = [] | [("after" | "before" | "none" | null)] | [
13245
- ("after" | "before" | "none" | null),
15126
+ type VueOperatorLinebreak = [] | [(("after" | "before" | "none") | null)] | [
15127
+ (("after" | "before" | "none") | null),
13246
15128
  {
13247
15129
  overrides?: {
13248
15130
  [k: string]: ("after" | "before" | "none" | "ignore") | undefined;
@@ -13274,7 +15156,12 @@ type VuePaddingLinesInComponentDefinition = [] | [
13274
15156
  groupSingleLineProperties?: boolean;
13275
15157
  })
13276
15158
  ];
13277
- type VuePreferTrueAttributeShorthand = [] | [("always" | "never")];
15159
+ type VuePreferTrueAttributeShorthand = [] | [("always" | "never")] | [
15160
+ ("always" | "never"),
15161
+ {
15162
+ except?: string[];
15163
+ }
15164
+ ];
13278
15165
  type VuePropNameCasing = [] | [("camelCase" | "snake_case")] | [
13279
15166
  ("camelCase" | "snake_case"),
13280
15167
  {
@@ -13357,7 +15244,6 @@ type VueSortKeys = [] | [("asc" | "desc")] | [
13357
15244
  ignoreGrandchildrenOf?: unknown[];
13358
15245
  minKeys?: number;
13359
15246
  natural?: boolean;
13360
- runOutsideVue?: boolean;
13361
15247
  }
13362
15248
  ];
13363
15249
  type VueSpaceInParens = [] | [("always" | "never")] | [
@@ -13369,6 +15255,7 @@ type VueSpaceInParens = [] | [("always" | "never")] | [
13369
15255
  type VueSpaceInfixOps = [] | [
13370
15256
  {
13371
15257
  int32Hint?: boolean;
15258
+ ignoreTypes?: boolean;
13372
15259
  }
13373
15260
  ];
13374
15261
  type VueSpaceUnaryOps = [] | [
@@ -13401,12 +15288,6 @@ type VueVOnEventHyphenation = [] | [("always" | "never")] | [
13401
15288
  ignoreTags?: string[];
13402
15289
  }
13403
15290
  ];
13404
- type VueVOnFunctionCall = [] | [("always" | "never")] | [
13405
- ("always" | "never"),
13406
- {
13407
- ignoreIncludesComment?: boolean;
13408
- }
13409
- ];
13410
15291
  type VueVOnHandlerStyle = [] | [(("inline" | "inline-function") | ["method", ("inline" | "inline-function")])] | [
13411
15292
  (("inline" | "inline-function") | ["method", ("inline" | "inline-function")]),
13412
15293
  {
@@ -13893,7 +15774,7 @@ type YmlSpacedComment = [] | [("always" | "never")] | [
13893
15774
 
13894
15775
  declare module 'eslint' {
13895
15776
  namespace Linter {
13896
- interface RulesRecord extends CommentsRules, CssRules, ImportsRules, JavascriptRules, JsdocRules, JsoncRules, MarkdownRules, PrettierRules, PromiseRules, ReactRules, RegexpRules, SvelteRules, TomlRules, TypescriptRules, UnicornRules, VitestRules, VueRules, YmlRules {
15777
+ interface RulesRecord extends CommentsRules, CssRules, ImportsRules, JavascriptRules, JsdocRules, JsoncRules, MarkdownRules, PrettierRules, PromiseRules, ReactRules, RegexpRules, StylisticRules, SvelteRules, TomlRules, TypescriptRules, UnicornRules, VitestRules, VueRules, YmlRules {
13897
15778
  }
13898
15779
  }
13899
15780
  }
@@ -13927,6 +15808,10 @@ interface CssOptions {
13927
15808
  * @description if 'tailwind', it will enable [Tailwind Syntax](https://github.com/eslint/css?tab=readme-ov-file#configuring-tailwind-syntax), otherwise it will enable [custom syntax](https://github.com/eslint/css?tab=readme-ov-file#configuring-custom-syntax)
13928
15809
  * @default false
13929
15810
  */
15811
+ /**
15812
+ * TODO: If this issue is resolved, we should define more strict types for customSyntax
15813
+ * https://github.com/eslint/css/issues/56
15814
+ */
13930
15815
  customSyntax?: false | 'tailwind' | Record<string, any>;
13931
15816
  }
13932
15817
  /**
@@ -13955,7 +15840,7 @@ interface ImportsOptions {
13955
15840
  }
13956
15841
  /**
13957
15842
  * `eslint-plugin-import-x`, `eslint-plugin-unused-imports` and overrides configuration options
13958
- * @description **if you want to use this preset, you need to put after `javascirpt` and `typescript` presets**
15843
+ * @description if you want to use this preset, you need to put after `javascript` and `typescript` presets**
13959
15844
  * @param {ImportsOptions & OverridesOptions} options
13960
15845
  * import configuration options
13961
15846
  * @returns {Promise<Linter.Config[]>}
@@ -13970,10 +15855,8 @@ interface JavaScriptOptions {
13970
15855
  }
13971
15856
  /**
13972
15857
  * `@eslint/js` and overrides configuration options
13973
- * @param {JavaScriptOptions & OverridesOptions} options
13974
- * eslint configuration options for JavaScript
13975
- * @returns {Promise<Linter.Config[]>}
13976
- * eslint flat configurations with `@eslint/js` and overrides
15858
+ * @param {JavaScriptOptions & OverridesOptions} options eslint configuration options for JavaScript
15859
+ * @returns {Promise<Linter.Config[]>} eslint flat configurations with `@eslint/js` and overrides
13977
15860
  */
13978
15861
  declare function javascript(options?: JavaScriptOptions & OverridesOptions<JavascriptRules>): Promise<Linter.Config[]>;
13979
15862
 
@@ -14196,6 +16079,25 @@ interface RegexpOptions {
14196
16079
  */
14197
16080
  declare function regexp(options?: RegexpOptions & OverridesOptions<RegexpRules>): Promise<Linter.Config[]>;
14198
16081
 
16082
+ /**
16083
+ * stylistic eslint plugin configuration options
16084
+ */
16085
+ interface StylisticOptions {
16086
+ /**
16087
+ * stylistic customize options
16088
+ * @see https://eslint.style/guide/config-presets#configuration-factory
16089
+ */
16090
+ customize?: StylisticCustomizeOptions;
16091
+ }
16092
+ /**
16093
+ * `@stylistic/eslint-plugin` and overrides configuration options
16094
+ * @param {StylisticOptions & OverridesOptions} options
16095
+ * stylistic eslint plugin configuration options
16096
+ * @returns {Promise<Linter.Config[]>}
16097
+ * eslint flat configurations with `@stylistic/eslint-plugin` and overrides
16098
+ */
16099
+ declare function stylistic(options?: StylisticOptions & OverridesOptions<StylisticRules>): Promise<Linter.Config[]>;
16100
+
14199
16101
  /**
14200
16102
  * Svelte configuration options
14201
16103
  */
@@ -14293,6 +16195,20 @@ interface VueScriptOptions {
14293
16195
  * @default false
14294
16196
  */
14295
16197
  a11y?: boolean;
16198
+ /**
16199
+ * enable `@intlify/eslint-plugin-vue-i18n` rules
16200
+ * @default false
16201
+ */
16202
+ i18n?: VueI18nOptions;
16203
+ }
16204
+ /**
16205
+ * `@intlify/eslint-plugin-vue-i18n` configuration options.
16206
+ * same `settings['vue-i18n']`
16207
+ * see https://eslint-plugin-vue-i18n.intlify.dev/started.html#settings-vue-i18n
16208
+ */
16209
+ interface VueI18nOptions {
16210
+ localeDir?: string;
16211
+ messageSyntaxVersion?: string;
14296
16212
  }
14297
16213
  /**
14298
16214
  * `eslint-plugin-vue`, `eslint-plugin-vue-composable`, `eslint-plugin-vue-eslint-plugin-vuejs-accessibility` and overrides configuration options
@@ -14324,4 +16240,4 @@ interface YmlOptions {
14324
16240
  declare function yml(options?: YmlOptions & OverridesOptions<YmlRules>): Promise<Linter.Config[]>;
14325
16241
  declare const yaml: typeof yml;
14326
16242
 
14327
- export { type CommentsOptions, type CommentsRules, type CssOptions, type CssRules, type ImportsOptions, type ImportsRules, type JavaScriptOptions, type JavascriptRules, type JsDocumentOptions, type JsdocRules, type JsoncOptions, type JsoncRules, type MarkdownOptions, type MarkdownRules, type OverridesOptions, type PrettierOptions, type PrettierRules, type PromiseOptions, type PromiseRules, type ReactOptions, type ReactRules, type RegexpOptions, type RegexpRules, type SvelteRules, type SvelteScriptOptions, type TomlOptions, type TomlRules, type TypeScriptOptions, type TypeScriptParserOptions, type TypeScriptProjectServiceOptions, type TypescriptRules, type UnicornOptions, type UnicornRules, type VitestOptions, type VitestRules, type VueRules, type VueScriptOptions, type YmlOptions, type YmlRules, comments, css, defineConfig, imports, javascript, jsdoc, jsonc, markdown, md, prettier, promise, react, regexp, svelte, toml, typescript, unicorn, vitest, vue, yaml, yml };
16243
+ export { type CommentsOptions, type CommentsRules, type CssOptions, type CssRules, type ImportsOptions, type ImportsRules, type JavaScriptOptions, type JavascriptRules, type JsDocumentOptions, type JsdocRules, type JsoncOptions, type JsoncRules, type MarkdownOptions, type MarkdownRules, type OverridesOptions, type PrettierOptions, type PrettierRules, type PromiseOptions, type PromiseRules, type ReactOptions, type ReactRules, type RegexpOptions, type RegexpRules, type StylisticOptions, type StylisticRules, type SvelteRules, type SvelteScriptOptions, type TomlOptions, type TomlRules, type TypeScriptOptions, type TypeScriptParserOptions, type TypeScriptProjectServiceOptions, type TypescriptRules, type UnicornOptions, type UnicornRules, type VitestOptions, type VitestRules, type VueI18nOptions, type VueRules, type VueScriptOptions, type YmlOptions, type YmlRules, comments, css, defineConfig, imports, javascript, jsdoc, jsonc, markdown, md, prettier, promise, react, regexp, stylistic, svelte, toml, typescript, unicorn, vitest, vue, yaml, yml };