@zayne-labs/eslint-config 0.4.2 → 0.5.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
@@ -3073,6 +3073,107 @@ interface Rules {
3073
3073
  * @deprecated
3074
3074
  */
3075
3075
  'semi-style'?: Linter.RuleEntry<SemiStyle>
3076
+ /**
3077
+ * Disallow early returns in components. Solid components only run once, and so conditionals should be inside JSX.
3078
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/components-return-once.md
3079
+ */
3080
+ 'solid/components-return-once'?: Linter.RuleEntry<[]>
3081
+ /**
3082
+ * Enforce naming DOM element event handlers consistently and prevent Solid's analysis from misunderstanding whether a prop should be an event handler.
3083
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/event-handlers.md
3084
+ */
3085
+ 'solid/event-handlers'?: Linter.RuleEntry<SolidEventHandlers>
3086
+ /**
3087
+ * Enforce consistent imports from "solid-js", "solid-js/web", and "solid-js/store".
3088
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/imports.md
3089
+ */
3090
+ 'solid/imports'?: Linter.RuleEntry<[]>
3091
+ /**
3092
+ * Disallow passing the same prop twice in JSX.
3093
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/jsx-no-duplicate-props.md
3094
+ */
3095
+ 'solid/jsx-no-duplicate-props'?: Linter.RuleEntry<SolidJsxNoDuplicateProps>
3096
+ /**
3097
+ * Disallow javascript: URLs.
3098
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/jsx-no-script-url.md
3099
+ */
3100
+ 'solid/jsx-no-script-url'?: Linter.RuleEntry<[]>
3101
+ /**
3102
+ * Disallow references to undefined variables in JSX. Handles custom directives.
3103
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/jsx-no-undef.md
3104
+ */
3105
+ 'solid/jsx-no-undef'?: Linter.RuleEntry<SolidJsxNoUndef>
3106
+ /**
3107
+ * Prevent variables used in JSX from being marked as unused.
3108
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/jsx-uses-vars.md
3109
+ */
3110
+ 'solid/jsx-uses-vars'?: Linter.RuleEntry<[]>
3111
+ /**
3112
+ * Disallow usage of type-unsafe event handlers.
3113
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/no-array-handlers.md
3114
+ */
3115
+ 'solid/no-array-handlers'?: Linter.RuleEntry<[]>
3116
+ /**
3117
+ * Disallow destructuring props. In Solid, props must be used with property accesses (`props.foo`) to preserve reactivity. This rule only tracks destructuring in the parameter list.
3118
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/no-destructure.md
3119
+ */
3120
+ 'solid/no-destructure'?: Linter.RuleEntry<[]>
3121
+ /**
3122
+ * Disallow usage of the innerHTML attribute, which can often lead to security vulnerabilities.
3123
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/no-innerhtml.md
3124
+ */
3125
+ 'solid/no-innerhtml'?: Linter.RuleEntry<SolidNoInnerhtml>
3126
+ /**
3127
+ * Disallow usage of APIs that use ES6 Proxies, only to target environments that don't support them.
3128
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/no-proxy-apis.md
3129
+ */
3130
+ 'solid/no-proxy-apis'?: Linter.RuleEntry<[]>
3131
+ /**
3132
+ * Disallow usage of dependency arrays in `createEffect` and `createMemo`.
3133
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/no-react-deps.md
3134
+ */
3135
+ 'solid/no-react-deps'?: Linter.RuleEntry<[]>
3136
+ /**
3137
+ * Disallow usage of React-specific `className`/`htmlFor` props, which were deprecated in v1.4.0.
3138
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/no-react-specific-props.md
3139
+ */
3140
+ 'solid/no-react-specific-props'?: Linter.RuleEntry<[]>
3141
+ /**
3142
+ * Enforce using only Solid-specific namespaced attribute names (i.e. `'on:'` in `<div on:click={...} />`).
3143
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/no-unknown-namespaces.md
3144
+ */
3145
+ 'solid/no-unknown-namespaces'?: Linter.RuleEntry<SolidNoUnknownNamespaces>
3146
+ /**
3147
+ * Enforce using the classlist prop over importing a classnames helper. The classlist prop accepts an object `{ [class: string]: boolean }` just like classnames.
3148
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/prefer-classlist.md
3149
+ * @deprecated
3150
+ */
3151
+ 'solid/prefer-classlist'?: Linter.RuleEntry<SolidPreferClasslist>
3152
+ /**
3153
+ * Enforce using Solid's `<For />` component for mapping an array to JSX elements.
3154
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/prefer-for.md
3155
+ */
3156
+ 'solid/prefer-for'?: Linter.RuleEntry<[]>
3157
+ /**
3158
+ * Enforce using Solid's `<Show />` component for conditionally showing content. Solid's compiler covers this case, so it's a stylistic rule only.
3159
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/prefer-show.md
3160
+ */
3161
+ 'solid/prefer-show'?: Linter.RuleEntry<[]>
3162
+ /**
3163
+ * Enforce that reactivity (props, signals, memos, etc.) is properly used, so changes in those values will be tracked and update the view as expected.
3164
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/reactivity.md
3165
+ */
3166
+ 'solid/reactivity'?: Linter.RuleEntry<SolidReactivity>
3167
+ /**
3168
+ * Disallow extra closing tags for components without children.
3169
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/self-closing-comp.md
3170
+ */
3171
+ 'solid/self-closing-comp'?: Linter.RuleEntry<SolidSelfClosingComp>
3172
+ /**
3173
+ * Require CSS properties in the `style` prop to be valid and kebab-cased (ex. 'font-size'), not camel-cased (ex. 'fontSize') like in React, and that property values with dimensions are strings, not numbers with implicit 'px' units.
3174
+ * @see https://github.com/solidjs-community/eslint-plugin-solid/blob/main/packages/eslint-plugin-solid/docs/style-prop.md
3175
+ */
3176
+ 'solid/style-prop'?: Linter.RuleEntry<SolidStyleProp>
3076
3177
  /**
3077
3178
  * Enforce sorted import declarations within modules
3078
3179
  * @see https://eslint.org/docs/latest/rules/sort-imports
@@ -9103,7 +9204,11 @@ type PaddingLineBetweenStatements = {
9103
9204
  // ----- perfectionist/sort-array-includes -----
9104
9205
  type PerfectionistSortArrayIncludes = {
9105
9206
 
9106
- partitionByComment?: (string[] | boolean | string)
9207
+ partitionByComment?: (string[] | boolean | string | {
9208
+ block?: (string[] | boolean | string)
9209
+ line?: (string[] | boolean | string)
9210
+ [k: string]: unknown | undefined
9211
+ })
9107
9212
 
9108
9213
  groupKind?: ("mixed" | "literals-first" | "spreads-first")
9109
9214
 
@@ -9114,6 +9219,8 @@ type PerfectionistSortArrayIncludes = {
9114
9219
  type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
9115
9220
 
9116
9221
  order?: ("desc" | "asc")
9222
+
9223
+ newlinesInside?: ("always" | "never")
9117
9224
  anyOf?: {
9118
9225
 
9119
9226
  selector?: ("literal" | "spread")
@@ -9128,6 +9235,8 @@ type PerfectionistSortArrayIncludes = {
9128
9235
 
9129
9236
  order?: ("desc" | "asc")
9130
9237
 
9238
+ newlinesInside?: ("always" | "never")
9239
+
9131
9240
  selector?: ("literal" | "spread")
9132
9241
 
9133
9242
  elementNamePattern?: string
@@ -9157,7 +9266,11 @@ type PerfectionistSortClasses = []|[{
9157
9266
 
9158
9267
  ignoreCallbackDependenciesPatterns?: string[]
9159
9268
 
9160
- partitionByComment?: (string[] | boolean | string)
9269
+ partitionByComment?: (string[] | boolean | string | {
9270
+ block?: (string[] | boolean | string)
9271
+ line?: (string[] | boolean | string)
9272
+ [k: string]: unknown | undefined
9273
+ })
9161
9274
 
9162
9275
  customGroups?: ({
9163
9276
 
@@ -9166,6 +9279,8 @@ type PerfectionistSortClasses = []|[{
9166
9279
  type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
9167
9280
 
9168
9281
  order?: ("desc" | "asc")
9282
+
9283
+ newlinesInside?: ("always" | "never")
9169
9284
  anyOf?: {
9170
9285
 
9171
9286
  elementValuePattern?: string
@@ -9186,6 +9301,8 @@ type PerfectionistSortClasses = []|[{
9186
9301
 
9187
9302
  order?: ("desc" | "asc")
9188
9303
 
9304
+ newlinesInside?: ("always" | "never")
9305
+
9189
9306
  elementValuePattern?: string
9190
9307
 
9191
9308
  decoratorNamePattern?: string
@@ -9218,7 +9335,11 @@ type PerfectionistSortClasses = []|[{
9218
9335
  // ----- perfectionist/sort-decorators -----
9219
9336
  type PerfectionistSortDecorators = []|[{
9220
9337
 
9221
- partitionByComment?: (string[] | boolean | string)
9338
+ partitionByComment?: (string[] | boolean | string | {
9339
+ block?: (string[] | boolean | string)
9340
+ line?: (string[] | boolean | string)
9341
+ [k: string]: unknown | undefined
9342
+ })
9222
9343
 
9223
9344
  sortOnParameters?: boolean
9224
9345
 
@@ -9251,7 +9372,11 @@ type PerfectionistSortDecorators = []|[{
9251
9372
  // ----- perfectionist/sort-enums -----
9252
9373
  type PerfectionistSortEnums = []|[{
9253
9374
 
9254
- partitionByComment?: (string[] | boolean | string)
9375
+ partitionByComment?: (string[] | boolean | string | {
9376
+ block?: (string[] | boolean | string)
9377
+ line?: (string[] | boolean | string)
9378
+ [k: string]: unknown | undefined
9379
+ })
9255
9380
 
9256
9381
  forceNumericSort?: boolean
9257
9382
 
@@ -9274,7 +9399,11 @@ type PerfectionistSortEnums = []|[{
9274
9399
  // ----- perfectionist/sort-exports -----
9275
9400
  type PerfectionistSortExports = []|[{
9276
9401
 
9277
- partitionByComment?: (string[] | boolean | string)
9402
+ partitionByComment?: (string[] | boolean | string | {
9403
+ block?: (string[] | boolean | string)
9404
+ line?: (string[] | boolean | string)
9405
+ [k: string]: unknown | undefined
9406
+ })
9278
9407
 
9279
9408
  groupKind?: ("mixed" | "values-first" | "types-first")
9280
9409
 
@@ -9328,7 +9457,11 @@ type _PerfectionistSortImportsSortImports = (_PerfectionistSortImportsMaxLineLen
9328
9457
  }
9329
9458
  }
9330
9459
 
9331
- partitionByComment?: (string[] | boolean | string)
9460
+ partitionByComment?: (string[] | boolean | string | {
9461
+ block?: (string[] | boolean | string)
9462
+ line?: (string[] | boolean | string)
9463
+ [k: string]: unknown | undefined
9464
+ })
9332
9465
 
9333
9466
  internalPattern?: string[]
9334
9467
 
@@ -9374,7 +9507,11 @@ type PerfectionistSortInterfaces = {
9374
9507
  declarationMatchesPattern?: string
9375
9508
  }
9376
9509
 
9377
- partitionByComment?: (string[] | boolean | string)
9510
+ partitionByComment?: (string[] | boolean | string | {
9511
+ block?: (string[] | boolean | string)
9512
+ line?: (string[] | boolean | string)
9513
+ [k: string]: unknown | undefined
9514
+ })
9378
9515
  customGroups?: ({
9379
9516
  [k: string]: (string | string[]) | undefined
9380
9517
  } | ({
@@ -9384,6 +9521,8 @@ type PerfectionistSortInterfaces = {
9384
9521
  type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
9385
9522
 
9386
9523
  order?: ("desc" | "asc")
9524
+
9525
+ newlinesInside?: ("always" | "never")
9387
9526
  anyOf?: {
9388
9527
 
9389
9528
  modifiers?: ("optional" | "required" | "multiline")[]
@@ -9400,6 +9539,8 @@ type PerfectionistSortInterfaces = {
9400
9539
 
9401
9540
  order?: ("desc" | "asc")
9402
9541
 
9542
+ newlinesInside?: ("always" | "never")
9543
+
9403
9544
  modifiers?: ("optional" | "required" | "multiline")[]
9404
9545
 
9405
9546
  selector?: ("index-signature" | "member" | "method" | "multiline" | "property")
@@ -9430,7 +9571,11 @@ type PerfectionistSortInterfaces = {
9430
9571
  // ----- perfectionist/sort-intersection-types -----
9431
9572
  type PerfectionistSortIntersectionTypes = []|[{
9432
9573
 
9433
- partitionByComment?: (string[] | boolean | string)
9574
+ partitionByComment?: (string[] | boolean | string | {
9575
+ block?: (string[] | boolean | string)
9576
+ line?: (string[] | boolean | string)
9577
+ [k: string]: unknown | undefined
9578
+ })
9434
9579
 
9435
9580
  partitionByNewLine?: boolean
9436
9581
 
@@ -9476,7 +9621,11 @@ type PerfectionistSortJsxProps = []|[{
9476
9621
  // ----- perfectionist/sort-maps -----
9477
9622
  type PerfectionistSortMaps = []|[{
9478
9623
 
9479
- partitionByComment?: (string[] | boolean | string)
9624
+ partitionByComment?: (string[] | boolean | string | {
9625
+ block?: (string[] | boolean | string)
9626
+ line?: (string[] | boolean | string)
9627
+ [k: string]: unknown | undefined
9628
+ })
9480
9629
 
9481
9630
  partitionByNewLine?: boolean
9482
9631
 
@@ -9495,7 +9644,11 @@ type PerfectionistSortMaps = []|[{
9495
9644
  // ----- perfectionist/sort-modules -----
9496
9645
  type PerfectionistSortModules = []|[{
9497
9646
 
9498
- partitionByComment?: (string[] | boolean | string)
9647
+ partitionByComment?: (string[] | boolean | string | {
9648
+ block?: (string[] | boolean | string)
9649
+ line?: (string[] | boolean | string)
9650
+ [k: string]: unknown | undefined
9651
+ })
9499
9652
 
9500
9653
  customGroups?: ({
9501
9654
 
@@ -9504,6 +9657,8 @@ type PerfectionistSortModules = []|[{
9504
9657
  type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
9505
9658
 
9506
9659
  order?: ("desc" | "asc")
9660
+
9661
+ newlinesInside?: ("always" | "never")
9507
9662
  anyOf?: {
9508
9663
 
9509
9664
  decoratorNamePattern?: string
@@ -9522,6 +9677,8 @@ type PerfectionistSortModules = []|[{
9522
9677
 
9523
9678
  order?: ("desc" | "asc")
9524
9679
 
9680
+ newlinesInside?: ("always" | "never")
9681
+
9525
9682
  decoratorNamePattern?: string
9526
9683
 
9527
9684
  modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[]
@@ -9552,7 +9709,11 @@ type PerfectionistSortModules = []|[{
9552
9709
  // ----- perfectionist/sort-named-exports -----
9553
9710
  type PerfectionistSortNamedExports = []|[{
9554
9711
 
9555
- partitionByComment?: (string[] | boolean | string)
9712
+ partitionByComment?: (string[] | boolean | string | {
9713
+ block?: (string[] | boolean | string)
9714
+ line?: (string[] | boolean | string)
9715
+ [k: string]: unknown | undefined
9716
+ })
9556
9717
 
9557
9718
  groupKind?: ("mixed" | "values-first" | "types-first")
9558
9719
 
@@ -9573,7 +9734,11 @@ type PerfectionistSortNamedExports = []|[{
9573
9734
  // ----- perfectionist/sort-named-imports -----
9574
9735
  type PerfectionistSortNamedImports = []|[{
9575
9736
 
9576
- partitionByComment?: (string[] | boolean | string)
9737
+ partitionByComment?: (string[] | boolean | string | {
9738
+ block?: (string[] | boolean | string)
9739
+ line?: (string[] | boolean | string)
9740
+ [k: string]: unknown | undefined
9741
+ })
9577
9742
 
9578
9743
  groupKind?: ("mixed" | "values-first" | "types-first")
9579
9744
 
@@ -9602,7 +9767,11 @@ type PerfectionistSortObjectTypes = {
9602
9767
  declarationMatchesPattern?: string
9603
9768
  }
9604
9769
 
9605
- partitionByComment?: (string[] | boolean | string)
9770
+ partitionByComment?: (string[] | boolean | string | {
9771
+ block?: (string[] | boolean | string)
9772
+ line?: (string[] | boolean | string)
9773
+ [k: string]: unknown | undefined
9774
+ })
9606
9775
  customGroups?: ({
9607
9776
  [k: string]: (string | string[]) | undefined
9608
9777
  } | ({
@@ -9612,6 +9781,8 @@ type PerfectionistSortObjectTypes = {
9612
9781
  type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
9613
9782
 
9614
9783
  order?: ("desc" | "asc")
9784
+
9785
+ newlinesInside?: ("always" | "never")
9615
9786
  anyOf?: {
9616
9787
 
9617
9788
  modifiers?: ("optional" | "required" | "multiline")[]
@@ -9628,6 +9799,8 @@ type PerfectionistSortObjectTypes = {
9628
9799
 
9629
9800
  order?: ("desc" | "asc")
9630
9801
 
9802
+ newlinesInside?: ("always" | "never")
9803
+
9631
9804
  modifiers?: ("optional" | "required" | "multiline")[]
9632
9805
 
9633
9806
  selector?: ("index-signature" | "member" | "method" | "multiline" | "property")
@@ -9669,7 +9842,11 @@ type PerfectionistSortObjects = {
9669
9842
  callingFunctionNamePattern?: string
9670
9843
  }
9671
9844
 
9672
- partitionByComment?: (string[] | boolean | string)
9845
+ partitionByComment?: (string[] | boolean | string | {
9846
+ block?: (string[] | boolean | string)
9847
+ line?: (string[] | boolean | string)
9848
+ [k: string]: unknown | undefined
9849
+ })
9673
9850
 
9674
9851
  destructureOnly?: boolean
9675
9852
 
@@ -9702,7 +9879,11 @@ type PerfectionistSortObjects = {
9702
9879
  // ----- perfectionist/sort-sets -----
9703
9880
  type PerfectionistSortSets = {
9704
9881
 
9705
- partitionByComment?: (string[] | boolean | string)
9882
+ partitionByComment?: (string[] | boolean | string | {
9883
+ block?: (string[] | boolean | string)
9884
+ line?: (string[] | boolean | string)
9885
+ [k: string]: unknown | undefined
9886
+ })
9706
9887
 
9707
9888
  groupKind?: ("mixed" | "literals-first" | "spreads-first")
9708
9889
 
@@ -9713,6 +9894,8 @@ type PerfectionistSortSets = {
9713
9894
  type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
9714
9895
 
9715
9896
  order?: ("desc" | "asc")
9897
+
9898
+ newlinesInside?: ("always" | "never")
9716
9899
  anyOf?: {
9717
9900
 
9718
9901
  selector?: ("literal" | "spread")
@@ -9727,6 +9910,8 @@ type PerfectionistSortSets = {
9727
9910
 
9728
9911
  order?: ("desc" | "asc")
9729
9912
 
9913
+ newlinesInside?: ("always" | "never")
9914
+
9730
9915
  selector?: ("literal" | "spread")
9731
9916
 
9732
9917
  elementNamePattern?: string
@@ -9769,7 +9954,11 @@ type PerfectionistSortSwitchCase = []|[{
9769
9954
  // ----- perfectionist/sort-union-types -----
9770
9955
  type PerfectionistSortUnionTypes = []|[{
9771
9956
 
9772
- partitionByComment?: (string[] | boolean | string)
9957
+ partitionByComment?: (string[] | boolean | string | {
9958
+ block?: (string[] | boolean | string)
9959
+ line?: (string[] | boolean | string)
9960
+ [k: string]: unknown | undefined
9961
+ })
9773
9962
 
9774
9963
  partitionByNewLine?: boolean
9775
9964
 
@@ -9792,7 +9981,11 @@ type PerfectionistSortUnionTypes = []|[{
9792
9981
  // ----- perfectionist/sort-variable-declarations -----
9793
9982
  type PerfectionistSortVariableDeclarations = []|[{
9794
9983
 
9795
- partitionByComment?: (string[] | boolean | string)
9984
+ partitionByComment?: (string[] | boolean | string | {
9985
+ block?: (string[] | boolean | string)
9986
+ line?: (string[] | boolean | string)
9987
+ [k: string]: unknown | undefined
9988
+ })
9796
9989
 
9797
9990
  partitionByNewLine?: boolean
9798
9991
 
@@ -9937,6 +10130,62 @@ type SemiSpacing = []|[{
9937
10130
  }]
9938
10131
  // ----- semi-style -----
9939
10132
  type SemiStyle = []|[("last" | "first")]
10133
+ // ----- solid/event-handlers -----
10134
+ type SolidEventHandlers = []|[{
10135
+
10136
+ ignoreCase?: boolean
10137
+
10138
+ warnOnSpread?: boolean
10139
+ }]
10140
+ // ----- solid/jsx-no-duplicate-props -----
10141
+ type SolidJsxNoDuplicateProps = []|[{
10142
+
10143
+ ignoreCase?: boolean
10144
+ [k: string]: unknown | undefined
10145
+ }]
10146
+ // ----- solid/jsx-no-undef -----
10147
+ type SolidJsxNoUndef = []|[{
10148
+
10149
+ allowGlobals?: boolean
10150
+
10151
+ autoImport?: boolean
10152
+
10153
+ typescriptEnabled?: boolean
10154
+ }]
10155
+ // ----- solid/no-innerhtml -----
10156
+ type SolidNoInnerhtml = []|[{
10157
+
10158
+ allowStatic?: boolean
10159
+ }]
10160
+ // ----- solid/no-unknown-namespaces -----
10161
+ type SolidNoUnknownNamespaces = []|[{
10162
+
10163
+ allowedNamespaces?: [string, ...(string)[]]
10164
+ }]
10165
+ // ----- solid/prefer-classlist -----
10166
+ type SolidPreferClasslist = []|[{
10167
+
10168
+ classnames?: [string, ...(string)[]]
10169
+ }]
10170
+ // ----- solid/reactivity -----
10171
+ type SolidReactivity = []|[{
10172
+
10173
+ customReactiveFunctions?: string[]
10174
+ }]
10175
+ // ----- solid/self-closing-comp -----
10176
+ type SolidSelfClosingComp = []|[{
10177
+
10178
+ component?: ("all" | "none")
10179
+
10180
+ html?: ("all" | "void" | "none")
10181
+ }]
10182
+ // ----- solid/style-prop -----
10183
+ type SolidStyleProp = []|[{
10184
+
10185
+ styleProps?: [string, ...(string)[]]
10186
+
10187
+ allowString?: boolean
10188
+ }]
9940
10189
  // ----- sort-imports -----
9941
10190
  type SortImports = []|[{
9942
10191
  ignoreCase?: boolean
@@ -14125,7 +14374,7 @@ type Yoda = []|[("always" | "never")]|[("always" | "never"), {
14125
14374
  }]
14126
14375
 
14127
14376
  // Names of all the configs
14128
- type ConfigNames = "zayne/js-eslint/setup" | "zayne/js-eslint/recommended" | "zayne/js-eslint/rules" | "zayne/unicorn/recommended" | "zayne/unicorn/rules" | "zayne/ts-eslint/setup" | "zayne/ts-eslint/strict" | "zayne/ts-eslint/strict" | "zayne/ts-eslint/strict" | "zayne/ts-eslint/stylistic" | "zayne/ts-eslint/stylistic" | "zayne/ts-eslint/stylistic" | "zayne/ts-eslint/rules" | "zayne/tailwindcss/setup" | "zayne/tailwindcss/recommended" | "zayne/tailwindcss/rules" | "zayne/perfectionist/rules" | "zayne/stylistic/rules" | "zayne/import/setup" | "zayne/import/recommended" | "zayne/import/rules" | "zayne/jsdoc/rules" | "zayne/jsonc/setup" | "zayne/jsonc/rules" | "zayne/react/setup" | "zayne/react/recommended" | "zayne/react/rules" | "zayne/react/next" | "zayne/node/setup" | "zayne/node/recommended" | "zayne/node/rules" | "zayne/tanstack/query-recommended" | "zayne/eslint-comments/rules" | "zayne/toml/setup" | "zayne/toml/rules" | "antfu/yaml/setup" | "antfu/yaml/rules" | "zayne/vue/setup" | "zayne/vue/rules"
14377
+ type ConfigNames = "zayne/js-eslint/setup" | "zayne/js-eslint/recommended" | "zayne/js-eslint/rules" | "zayne/unicorn/recommended" | "zayne/unicorn/rules" | "zayne/ts-eslint/setup" | "zayne/ts-eslint/strict" | "zayne/ts-eslint/strict" | "zayne/ts-eslint/strict" | "zayne/ts-eslint/stylistic" | "zayne/ts-eslint/stylistic" | "zayne/ts-eslint/stylistic" | "zayne/ts-eslint/rules" | "zayne/tailwindcss/setup" | "zayne/tailwindcss/recommended" | "zayne/tailwindcss/rules" | "zayne/perfectionist/rules" | "zayne/stylistic/rules" | "zayne/import/setup" | "zayne/import/recommended" | "zayne/import/rules" | "zayne/jsdoc/rules" | "zayne/jsonc/setup" | "zayne/jsonc/rules" | "zayne/react/setup" | "zayne/react/recommended" | "zayne/react/rules" | "zayne/react/nextjs" | "zayne/node/setup" | "zayne/node/recommended" | "zayne/node/rules" | "zayne/tanstack/query-recommended" | "zayne/eslint-comments/rules" | "zayne/toml/setup" | "zayne/toml/rules" | "antfu/yaml/setup" | "antfu/yaml/rules" | "zayne/vue/setup" | "zayne/vue/rules" | "zayne/solid/setup" | "zayne/solid/recommended" | "zayne/solid/rules"
14129
14378
 
14130
14379
  type LiteralUnion<TUnion extends TBase, TBase = string> = TUnion | (TBase & { _ignore?: never });
14131
14380
 
@@ -14410,6 +14659,12 @@ interface OptionsComponentExts {
14410
14659
  * @default []
14411
14660
  */
14412
14661
  componentExts?: string[];
14662
+ /**
14663
+ * Additional extensions for type aware components.
14664
+ * @example ['vue']
14665
+ * @default []
14666
+ */
14667
+ componentExtsTypeAware?: string[];
14413
14668
  }
14414
14669
  interface OptionsTypeScriptParserOptions {
14415
14670
  /**
@@ -14450,11 +14705,21 @@ interface OptionsHasTypeScript {
14450
14705
  typescript?: boolean;
14451
14706
  }
14452
14707
  interface OptionsReact {
14708
+ /**
14709
+ * Enable react compiler rules.
14710
+ * @default false
14711
+ */
14712
+ compiler?: boolean;
14453
14713
  /**
14454
14714
  * Enable nextjs rules.
14455
14715
  * @default auto-detect-from-dependencies
14456
14716
  */
14457
14717
  nextjs?: boolean;
14718
+ /**
14719
+ * Enable react-refresh(HMR) rules.
14720
+ * @default true
14721
+ */
14722
+ refresh?: boolean;
14458
14723
  }
14459
14724
  interface OptionsStylistic {
14460
14725
  indent?: number;
@@ -14597,7 +14862,7 @@ interface OptionsConfig extends OptionsComponentExts {
14597
14862
  * - `eslint-plugin-solid`
14598
14863
  * @default false
14599
14864
  */
14600
- solid?: boolean | OptionsOverrides;
14865
+ solid?: (OptionsFiles & OptionsHasTypeScript & OptionsOverrides) | boolean;
14601
14866
  /**
14602
14867
  * Enable stylistic rules.
14603
14868
  * @see https://eslint.style/
@@ -14693,7 +14958,7 @@ declare const jsonc: (options?: ExtractOptions<OptionsConfig["jsonc"]>) => Promi
14693
14958
 
14694
14959
  declare const jsdoc: (options?: ExtractOptions<OptionsConfig["jsdoc"]>) => Promise<TypedFlatConfigItem[]>;
14695
14960
 
14696
- declare const react: (options?: OptionsFiles & OptionsHasTypeScript & OptionsOverrides & OptionsReact) => Promise<TypedFlatConfigItem[]>;
14961
+ declare const react: (options?: ExtractOptions<OptionsConfig["react"]>) => Promise<TypedFlatConfigItem[]>;
14697
14962
 
14698
14963
  declare const tanstack: (options?: ExtractOptions<OptionsConfig["tanstack"]>) => Promise<TypedFlatConfigItem[]>;
14699
14964
 
@@ -14720,6 +14985,8 @@ declare const yaml: (options?: ExtractOptions<OptionsConfig["yaml"]>) => Promise
14720
14985
 
14721
14986
  declare function vue(options?: ExtractOptions<OptionsConfig["vue"]>): Promise<TypedFlatConfigItem[]>;
14722
14987
 
14988
+ declare const solid: (options?: ExtractOptions<OptionsConfig["solid"]>) => Promise<TypedFlatConfigItem[]>;
14989
+
14723
14990
  /**
14724
14991
  * Construct an array of ESLint flat config items.
14725
14992
  * @param options
@@ -14816,5 +15083,6 @@ declare const isPackageInScope: (name: string) => boolean;
14816
15083
  * @param packages - The packages to ensure are installed.
14817
15084
  */
14818
15085
  declare const ensurePackages: (packages: Array<string | undefined>) => Promise<void>;
15086
+ declare const resolveOptions: <TObject>(option: boolean | TObject | undefined) => TObject;
14819
15087
 
14820
- export { type Awaitable, type ConfigNames, type ExtractOptions, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLES, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, type OptionsAppType, type OptionsComponentExts, type OptionsConfig, type OptionsFiles, type OptionsHasJsx, type OptionsHasTypeScript, type OptionsNode, type OptionsOverrides, type OptionsReact, type OptionsRegExp, type OptionsStylistic, type OptionsTailwindCSS, type OptionsTanstack, type OptionsTypeScriptParserOptions, type OptionsTypeScriptWithTypes, type OptionsTypescript$1 as OptionsTypescript, type OptionsVue, type Prettify, type Rules, type TypedFlatConfigItem, combine, comments, ensurePackages, gitIgnores, ignores, imports, interopDefault, isObject, isPackageInScope, javascript, jsdoc, jsonc, node, perfectionist, react, renamePluginInConfigs, renamePlugins, renameRules, sortPackageJson, sortTsconfig, stylistic, tailwindcss, tanstack, toml, typescript, unicorn, vue, yaml, zayne };
15088
+ export { type Awaitable, type ConfigNames, type ExtractOptions, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLES, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, type OptionsAppType, type OptionsComponentExts, type OptionsConfig, type OptionsFiles, type OptionsHasJsx, type OptionsHasTypeScript, type OptionsNode, type OptionsOverrides, type OptionsReact, type OptionsRegExp, type OptionsStylistic, type OptionsTailwindCSS, type OptionsTanstack, type OptionsTypeScriptParserOptions, type OptionsTypeScriptWithTypes, type OptionsTypescript$1 as OptionsTypescript, type OptionsVue, type Prettify, type Rules, type TypedFlatConfigItem, combine, comments, ensurePackages, gitIgnores, ignores, imports, interopDefault, isObject, isPackageInScope, javascript, jsdoc, jsonc, node, perfectionist, react, renamePluginInConfigs, renamePlugins, renameRules, resolveOptions, solid, sortPackageJson, sortTsconfig, stylistic, tailwindcss, tanstack, toml, typescript, unicorn, vue, yaml, zayne };