@storm-software/eslint 0.170.88 → 0.170.90

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/types.d.cts CHANGED
@@ -4298,967 +4298,267 @@ Backward pagination arguments
4298
4298
  * Validates usage of Error Boundaries instead of try/catch for errors in child components.
4299
4299
  * @see https://eslint-react.xyz/docs/rules/error-boundaries
4300
4300
  */
4301
- 'react-x/error-boundaries'?: Linter.RuleEntry<[]>
4302
- /**
4303
- * Verifies the list of dependencies for Hooks like 'useEffect' and similar.
4304
- * @see https://github.com/facebook/react/issues/14920
4305
- */
4306
- 'react-x/exhaustive-deps'?: Linter.RuleEntry<ReactXExhaustiveDeps>
4307
- /**
4308
- * Validates against assignment/mutation of globals during render, part of ensuring that side effects must run outside of render.
4309
- * @see https://eslint-react.xyz/docs/rules/globals
4310
- */
4311
- 'react-x/globals'?: Linter.RuleEntry<[]>
4312
- /**
4313
- * Validates against mutating props, state, and other values that are immutable.
4314
- * @see https://eslint-react.xyz/docs/rules/immutability
4315
- */
4316
- 'react-x/immutability'?: Linter.RuleEntry<[]>
4317
- /**
4318
- * Disallows accessing 'this.state' inside 'setState' calls.
4319
- * @see https://eslint-react.xyz/docs/rules/no-access-state-in-setstate
4320
- */
4321
- 'react-x/no-access-state-in-setstate'?: Linter.RuleEntry<[]>
4322
- /**
4323
- * Disallows using an item's index in the array as its key.
4324
- * @see https://eslint-react.xyz/docs/rules/no-array-index-key
4325
- */
4326
- 'react-x/no-array-index-key'?: Linter.RuleEntry<[]>
4327
- /**
4328
- * Disallows the use of 'Children.count' from the 'react' package.
4329
- * @see https://eslint-react.xyz/docs/rules/no-children-count
4330
- */
4331
- 'react-x/no-children-count'?: Linter.RuleEntry<[]>
4332
- /**
4333
- * Disallows the use of 'Children.forEach' from the 'react' package.
4334
- * @see https://eslint-react.xyz/docs/rules/no-children-for-each
4335
- */
4336
- 'react-x/no-children-for-each'?: Linter.RuleEntry<[]>
4337
- /**
4338
- * Disallows the use of 'Children.map' from the 'react' package.
4339
- * @see https://eslint-react.xyz/docs/rules/no-children-map
4340
- */
4341
- 'react-x/no-children-map'?: Linter.RuleEntry<[]>
4342
- /**
4343
- * Disallows the use of 'Children.only' from the 'react' package.
4344
- * @see https://eslint-react.xyz/docs/rules/no-children-only
4345
- */
4346
- 'react-x/no-children-only'?: Linter.RuleEntry<[]>
4347
- /**
4348
- * Disallows the use of 'Children.toArray' from the 'react' package.
4349
- * @see https://eslint-react.xyz/docs/rules/no-children-to-array
4350
- */
4351
- 'react-x/no-children-to-array'?: Linter.RuleEntry<[]>
4352
- /**
4353
- * Disallows class components except for error boundaries.
4354
- * @see https://eslint-react.xyz/docs/rules/no-class-component
4355
- */
4356
- 'react-x/no-class-component'?: Linter.RuleEntry<[]>
4357
- /**
4358
- * Disallows 'cloneElement'.
4359
- * @see https://eslint-react.xyz/docs/rules/no-clone-element
4360
- */
4361
- 'react-x/no-clone-element'?: Linter.RuleEntry<[]>
4362
- /**
4363
- * Replaces usage of 'componentWillMount' with 'UNSAFE_componentWillMount'.
4364
- * @see https://eslint-react.xyz/docs/rules/no-component-will-mount
4365
- */
4366
- 'react-x/no-component-will-mount'?: Linter.RuleEntry<[]>
4367
- /**
4368
- * Replaces usage of 'componentWillReceiveProps' with 'UNSAFE_componentWillReceiveProps'.
4369
- * @see https://eslint-react.xyz/docs/rules/no-component-will-receive-props
4370
- */
4371
- 'react-x/no-component-will-receive-props'?: Linter.RuleEntry<[]>
4372
- /**
4373
- * Replaces usage of 'componentWillUpdate' with 'UNSAFE_componentWillUpdate'.
4374
- * @see https://eslint-react.xyz/docs/rules/no-component-will-update
4375
- */
4376
- 'react-x/no-component-will-update'?: Linter.RuleEntry<[]>
4377
- /**
4378
- * Replaces usage of '<Context.Provider>' with '<Context>'.
4379
- * @see https://eslint-react.xyz/docs/rules/no-context-provider
4380
- */
4381
- 'react-x/no-context-provider'?: Linter.RuleEntry<[]>
4382
- /**
4383
- * Disallows 'createRef' in function components and Hooks.
4384
- * @see https://eslint-react.xyz/docs/rules/no-create-ref
4385
- */
4386
- 'react-x/no-create-ref'?: Linter.RuleEntry<[]>
4387
- /**
4388
- * Disallows direct mutation of 'this.state'.
4389
- * @see https://eslint-react.xyz/docs/rules/no-direct-mutation-state
4390
- */
4391
- 'react-x/no-direct-mutation-state'?: Linter.RuleEntry<[]>
4392
- /**
4393
- * Prevents duplicate 'key' props on sibling elements when rendering lists.
4394
- * @see https://eslint-react.xyz/docs/rules/no-duplicate-key
4395
- */
4396
- 'react-x/no-duplicate-key'?: Linter.RuleEntry<[]>
4397
- /**
4398
- * Replaces usage of 'forwardRef' with passing 'ref' as a prop.
4399
- * @see https://eslint-react.xyz/docs/rules/no-forward-ref
4400
- */
4401
- 'react-x/no-forward-ref'?: Linter.RuleEntry<[]>
4402
- /**
4403
- * Prevents implicitly passing the 'children' prop to components.
4404
- * @see https://eslint-react.xyz/docs/rules/no-implicit-children
4405
- */
4406
- 'react-x/no-implicit-children'?: Linter.RuleEntry<[]>
4407
- /**
4408
- * Prevents implicitly passing the 'key' prop to components.
4409
- * @see https://eslint-react.xyz/docs/rules/no-implicit-key
4410
- */
4411
- 'react-x/no-implicit-key'?: Linter.RuleEntry<[]>
4412
- /**
4413
- * Prevents implicitly passing the 'ref' prop to components.
4414
- * @see https://eslint-react.xyz/docs/rules/no-implicit-ref
4415
- */
4416
- 'react-x/no-implicit-ref'?: Linter.RuleEntry<[]>
4417
- /**
4418
- * Prevents problematic leaked values from being rendered.
4419
- * @see https://eslint-react.xyz/docs/rules/no-leaked-conditional-rendering
4420
- */
4421
- 'react-x/no-leaked-conditional-rendering'?: Linter.RuleEntry<[]>
4422
- /**
4423
- * Enforces that all components have a 'displayName' that can be used in DevTools.
4424
- * @see https://eslint-react.xyz/docs/rules/no-missing-component-display-name
4425
- */
4426
- 'react-x/no-missing-component-display-name'?: Linter.RuleEntry<[]>
4427
- /**
4428
- * Enforces that all contexts have a 'displayName' that can be used in DevTools.
4429
- * @see https://eslint-react.xyz/docs/rules/no-missing-context-display-name
4430
- */
4431
- 'react-x/no-missing-context-display-name'?: Linter.RuleEntry<[]>
4432
- /**
4433
- * Disallows missing 'key' on items in list rendering.
4434
- * @see https://eslint-react.xyz/docs/rules/no-missing-key
4435
- */
4436
- 'react-x/no-missing-key'?: Linter.RuleEntry<[]>
4437
- /**
4438
- * Prevents incorrect usage of 'captureOwnerStack'.
4439
- * @see https://eslint-react.xyz/docs/rules/no-misused-capture-owner-stack
4440
- */
4441
- 'react-x/no-misused-capture-owner-stack'?: Linter.RuleEntry<[]>
4442
- /**
4443
- * Disallows nesting component definitions inside other components.
4444
- * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions
4445
- */
4446
- 'react-x/no-nested-component-definitions'?: Linter.RuleEntry<[]>
4447
- /**
4448
- * Disallows nesting lazy component declarations inside other components or hooks.
4449
- * @see https://eslint-react.xyz/docs/rules/no-nested-lazy-component-declarations
4450
- */
4451
- 'react-x/no-nested-lazy-component-declarations'?: Linter.RuleEntry<[]>
4452
- /**
4453
- * Disallows calling 'this.setState' in 'componentDidMount' outside functions such as callbacks.
4454
- * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-mount
4455
- */
4456
- 'react-x/no-set-state-in-component-did-mount'?: Linter.RuleEntry<[]>
4457
- /**
4458
- * Disallows calling 'this.setState' in 'componentDidUpdate' outside functions such as callbacks.
4459
- * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-update
4460
- */
4461
- 'react-x/no-set-state-in-component-did-update'?: Linter.RuleEntry<[]>
4462
- /**
4463
- * Disallows calling 'this.setState' in 'componentWillUpdate' outside functions such as callbacks.
4464
- * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-will-update
4465
- */
4466
- 'react-x/no-set-state-in-component-will-update'?: Linter.RuleEntry<[]>
4467
- /**
4468
- * Enforces that a function with the 'use' prefix uses at least one Hook inside it.
4469
- * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-prefix
4470
- */
4471
- 'react-x/no-unnecessary-use-prefix'?: Linter.RuleEntry<[]>
4472
- /**
4473
- * Warns about the use of 'UNSAFE_componentWillMount' in class components.
4474
- * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-mount
4475
- */
4476
- 'react-x/no-unsafe-component-will-mount'?: Linter.RuleEntry<[]>
4477
- /**
4478
- * Warns about the use of 'UNSAFE_componentWillReceiveProps' in class components.
4479
- * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-receive-props
4480
- */
4481
- 'react-x/no-unsafe-component-will-receive-props'?: Linter.RuleEntry<[]>
4482
- /**
4483
- * Warns about the use of 'UNSAFE_componentWillUpdate' in class components.
4484
- * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-update
4485
- */
4486
- 'react-x/no-unsafe-component-will-update'?: Linter.RuleEntry<[]>
4487
- /**
4488
- * Prevents non-stable values (i.e., object literals) from being used as a value for 'Context.Provider'.
4489
- * @see https://eslint-react.xyz/docs/rules/no-unstable-context-value
4490
- */
4491
- 'react-x/no-unstable-context-value'?: Linter.RuleEntry<[]>
4492
- /**
4493
- * Prevents using referential-type values as default props in object destructuring.
4494
- * @see https://eslint-react.xyz/docs/rules/no-unstable-default-props
4495
- */
4496
- 'react-x/no-unstable-default-props'?: Linter.RuleEntry<ReactXNoUnstableDefaultProps>
4497
- /**
4498
- * Warns about unused class component methods and properties.
4499
- * @see https://eslint-react.xyz/docs/rules/no-unused-class-component-members
4500
- */
4501
- 'react-x/no-unused-class-component-members'?: Linter.RuleEntry<[]>
4502
- /**
4503
- * Warns about component props that are defined but never used.
4504
- * @see https://eslint-react.xyz/docs/rules/no-unused-props
4505
- */
4506
- 'react-x/no-unused-props'?: Linter.RuleEntry<[]>
4507
- /**
4508
- * Warns about state variables that are defined but never used.
4509
- * @see https://eslint-react.xyz/docs/rules/no-unused-state
4510
- */
4511
- 'react-x/no-unused-state'?: Linter.RuleEntry<[]>
4512
- /**
4513
- * Replaces usage of 'useContext' with 'use'.
4514
- * @see https://eslint-react.xyz/docs/rules/no-use-context
4515
- */
4516
- 'react-x/no-use-context'?: Linter.RuleEntry<[]>
4517
- /**
4518
- * Validates that components and hooks are pure by checking that they do not call known-impure functions during render.
4519
- * @see https://eslint-react.xyz/docs/rules/purity
4520
- */
4521
- 'react-x/purity'?: Linter.RuleEntry<[]>
4522
- /**
4523
- * Validates correct usage of refs by checking that 'ref.current' is not read or written during render.
4524
- * @see https://eslint-react.xyz/docs/rules/refs
4525
- */
4526
- 'react-x/refs'?: Linter.RuleEntry<[]>
4527
- /**
4528
- * Enforces the Rules of Hooks.
4529
- * @see https://react.dev/reference/rules/rules-of-hooks
4530
- */
4531
- 'react-x/rules-of-hooks'?: Linter.RuleEntry<ReactXRulesOfHooks>
4532
- /**
4533
- * Validates against setting state synchronously in an effect, which can lead to re-renders that degrade performance.
4534
- * @see https://eslint-react.xyz/docs/rules/set-state-in-effect
4535
- */
4536
- 'react-x/set-state-in-effect'?: Linter.RuleEntry<[]>
4537
- /**
4538
- * Validates against unconditionally setting state during render, which can trigger additional renders and potential infinite render loops.
4539
- * @see https://eslint-react.xyz/docs/rules/set-state-in-render
4540
- */
4541
- 'react-x/set-state-in-render'?: Linter.RuleEntry<[]>
4542
- /**
4543
- * Validates that components are static, not recreated every render.
4544
- * @see https://eslint-react.xyz/docs/rules/static-components
4545
- */
4546
- 'react-x/static-components'?: Linter.RuleEntry<[]>
4547
- /**
4548
- * Validates against syntax that React Compiler does not support.
4549
- * @see https://eslint-react.xyz/docs/rules/unsupported-syntax
4550
- */
4551
- 'react-x/unsupported-syntax'?: Linter.RuleEntry<[]>
4552
- /**
4553
- * Validates that 'useMemo' is called with a callback that returns a value.
4554
- * @see https://eslint-react.xyz/docs/rules/use-memo
4555
- */
4556
- 'react-x/use-memo'?: Linter.RuleEntry<[]>
4557
- /**
4558
- * Enforces correct usage of 'useState', including destructuring, symmetric naming of the value and setter, and wrapping expensive initializers in a lazy initializer function.
4559
- * @see https://eslint-react.xyz/docs/rules/use-state
4560
- */
4561
- 'react-x/use-state'?: Linter.RuleEntry<ReactXUseState>
4562
- /**
4563
- * Disallows DOM elements from using 'dangerouslySetInnerHTML'.
4564
- * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml
4565
- */
4566
- 'react/dom-no-dangerously-set-innerhtml'?: Linter.RuleEntry<[]>
4567
- /**
4568
- * Disallows DOM elements from using 'dangerouslySetInnerHTML' and 'children' at the same time.
4569
- * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml-with-children
4570
- */
4571
- 'react/dom-no-dangerously-set-innerhtml-with-children'?: Linter.RuleEntry<[]>
4572
- /**
4573
- * Disallows 'findDOMNode'.
4574
- * @see https://eslint-react.xyz/docs/rules/dom-no-find-dom-node
4575
- */
4576
- 'react/dom-no-find-dom-node'?: Linter.RuleEntry<[]>
4577
- /**
4578
- * Disallows 'flushSync'.
4579
- * @see https://eslint-react.xyz/docs/rules/dom-no-flush-sync
4580
- */
4581
- 'react/dom-no-flush-sync'?: Linter.RuleEntry<[]>
4582
- /**
4583
- * Replaces usage of 'ReactDOM.hydrate()' with 'hydrateRoot()'.
4584
- * @see https://eslint-react.xyz/docs/rules/dom-no-hydrate
4585
- */
4586
- 'react/dom-no-hydrate'?: Linter.RuleEntry<[]>
4587
- /**
4588
- * Enforces an explicit 'type' attribute for 'button' elements.
4589
- * @see https://eslint-react.xyz/docs/rules/dom-no-missing-button-type
4590
- */
4591
- 'react/dom-no-missing-button-type'?: Linter.RuleEntry<[]>
4592
- /**
4593
- * Enforces an explicit 'sandbox' attribute for 'iframe' elements.
4594
- * @see https://eslint-react.xyz/docs/rules/dom-no-missing-iframe-sandbox
4595
- */
4596
- 'react/dom-no-missing-iframe-sandbox'?: Linter.RuleEntry<[]>
4597
- /**
4598
- * Replaces usage of 'ReactDOM.render()' with 'createRoot(node).render()'.
4599
- * @see https://eslint-react.xyz/docs/rules/dom-no-render
4600
- */
4601
- 'react/dom-no-render'?: Linter.RuleEntry<[]>
4602
- /**
4603
- * Disallows the return value of 'ReactDOM.render'.
4604
- * @see https://eslint-react.xyz/docs/rules/dom-no-render-return-value
4605
- */
4606
- 'react/dom-no-render-return-value'?: Linter.RuleEntry<[]>
4607
- /**
4608
- * Disallows 'javascript:' URLs as attribute values.
4609
- * @see https://eslint-react.xyz/docs/rules/dom-no-script-url
4610
- */
4611
- 'react/dom-no-script-url'?: Linter.RuleEntry<[]>
4612
- /**
4613
- * Disallows the use of string style prop in JSX. Use an object instead.
4614
- * @see https://eslint-react.xyz/docs/rules/dom-no-string-style-prop
4615
- */
4616
- 'react/dom-no-string-style-prop'?: Linter.RuleEntry<[]>
4617
- /**
4618
- * Disallows unknown 'DOM' properties.
4619
- * @see https://eslint-react.xyz/docs/rules/dom-no-unknown-property
4620
- */
4621
- 'react/dom-no-unknown-property'?: Linter.RuleEntry<ReactDomNoUnknownProperty>
4622
- /**
4623
- * Enforces that the 'sandbox' attribute for 'iframe' elements is not set to unsafe combinations.
4624
- * @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-iframe-sandbox
4625
- */
4626
- 'react/dom-no-unsafe-iframe-sandbox'?: Linter.RuleEntry<[]>
4627
- /**
4628
- * Disallows 'target="_blank"' without 'rel="noreferrer noopener"'.
4629
- * @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-target-blank
4630
- */
4631
- 'react/dom-no-unsafe-target-blank'?: Linter.RuleEntry<[]>
4632
- /**
4633
- * Replaces usage of 'useFormState' with 'useActionState'.
4634
- * @see https://eslint-react.xyz/docs/rules/dom-no-use-form-state
4635
- */
4636
- 'react/dom-no-use-form-state'?: Linter.RuleEntry<[]>
4637
- /**
4638
- * Disallows 'children' in void DOM elements.
4639
- * @see https://eslint-react.xyz/docs/rules/dom-no-void-elements-with-children
4640
- */
4641
- 'react/dom-no-void-elements-with-children'?: Linter.RuleEntry<[]>
4642
- /**
4643
- * Validates usage of Error Boundaries instead of try/catch for errors in child components.
4644
- * @see https://eslint-react.xyz/docs/rules/error-boundaries
4645
- */
4646
- 'react/error-boundaries'?: Linter.RuleEntry<[]>
4647
- /**
4648
- * Verifies the list of dependencies for Hooks like 'useEffect' and similar.
4649
- * @see https://github.com/facebook/react/issues/14920
4650
- */
4651
- 'react/exhaustive-deps'?: Linter.RuleEntry<ReactExhaustiveDeps>
4652
- /**
4653
- * Validates against assignment/mutation of globals during render, part of ensuring that side effects must run outside of render.
4654
- * @see https://eslint-react.xyz/docs/rules/globals
4655
- */
4656
- 'react/globals'?: Linter.RuleEntry<[]>
4657
- /**
4658
- * Validates against mutating props, state, and other values that are immutable.
4659
- * @see https://eslint-react.xyz/docs/rules/immutability
4660
- */
4661
- 'react/immutability'?: Linter.RuleEntry<[]>
4662
- /**
4663
- * Disallows passing 'children' as a prop.
4664
- * @see https://eslint-react.xyz/docs/rules/jsx-no-children-prop
4665
- */
4666
- 'react/jsx-no-children-prop'?: Linter.RuleEntry<[]>
4667
- /**
4668
- * Disallows passing 'children' as a prop when children are also passed as nested content.
4669
- * @see https://eslint-react.xyz/docs/rules/jsx-no-children-prop-with-children
4670
- */
4671
- 'react/jsx-no-children-prop-with-children'?: Linter.RuleEntry<[]>
4672
- /**
4673
- * Prevents comment strings from being accidentally inserted into a JSX element's text nodes.
4674
- * @see https://eslint-react.xyz/docs/rules/jsx-no-comment-textnodes
4675
- */
4676
- 'react/jsx-no-comment-textnodes'?: Linter.RuleEntry<[]>
4677
- /**
4678
- * Prevent patterns that cause deoptimization when using the automatic JSX runtime.
4679
- * @see https://eslint-react.xyz/docs/rules/jsx-no-key-after-spread
4680
- */
4681
- 'react/jsx-no-key-after-spread'?: Linter.RuleEntry<[]>
4682
- /**
4683
- * Catches `$` before `{expr}` in JSX — typically from template literal `${expr}` being copy-pasted into JSX without removing the `$`. The `$` "leaks" into the rendered output.
4684
- * @see https://eslint-react.xyz/docs/rules/jsx-no-leaked-dollar
4685
- */
4686
- 'react/jsx-no-leaked-dollar'?: Linter.RuleEntry<[]>
4687
- /**
4688
- * Catches `;` at the start of JSX text nodes — typically from accidentally placing a statement-ending `;` inside JSX. The `;` "leaks" into the rendered output.
4689
- * @see https://eslint-react.xyz/docs/rules/jsx-no-leaked-semicolon
4690
- */
4691
- 'react/jsx-no-leaked-semicolon'?: Linter.RuleEntry<[]>
4692
- /**
4693
- * Disallow JSX namespace syntax, as React does not support them.
4694
- * @see https://eslint-react.xyz/docs/rules/jsx-no-namespace
4695
- */
4696
- 'react/jsx-no-namespace'?: Linter.RuleEntry<[]>
4697
- /**
4698
- * Disallows useless fragment elements.
4699
- * @see https://eslint-react.xyz/docs/rules/jsx-no-useless-fragment
4700
- */
4701
- 'react/jsx-no-useless-fragment'?: Linter.RuleEntry<ReactJsxNoUselessFragment>
4702
- /**
4703
- * Enforces identifier names assigned from `createContext` calls to be a valid component name with the suffix `Context`.
4704
- * @see https://eslint-react.xyz/docs/rules/naming-convention-context-name
4705
- */
4706
- 'react/naming-convention-context-name'?: Linter.RuleEntry<[]>
4707
- /**
4708
- * Enforces identifier names assigned from 'useId' calls to be either 'id' or end with 'Id'.
4709
- * @see https://eslint-react.xyz/docs/rules/naming-convention-id-name
4710
- */
4711
- 'react/naming-convention-id-name'?: Linter.RuleEntry<[]>
4712
- /**
4713
- * Enforces identifier names assigned from 'useRef' calls to be either 'ref' or end with 'Ref'.
4714
- * @see https://eslint-react.xyz/docs/rules/naming-convention-ref-name
4715
- */
4716
- 'react/naming-convention-ref-name'?: Linter.RuleEntry<[]>
4717
- /**
4718
- * Disallows accessing 'this.state' inside 'setState' calls.
4719
- * @see https://eslint-react.xyz/docs/rules/no-access-state-in-setstate
4720
- */
4721
- 'react/no-access-state-in-setstate'?: Linter.RuleEntry<[]>
4722
- /**
4723
- * Disallows using an item's index in the array as its key.
4724
- * @see https://eslint-react.xyz/docs/rules/no-array-index-key
4725
- */
4726
- 'react/no-array-index-key'?: Linter.RuleEntry<[]>
4727
- /**
4728
- * Disallows the use of 'Children.count' from the 'react' package.
4729
- * @see https://eslint-react.xyz/docs/rules/no-children-count
4730
- */
4731
- 'react/no-children-count'?: Linter.RuleEntry<[]>
4732
- /**
4733
- * Disallows the use of 'Children.forEach' from the 'react' package.
4734
- * @see https://eslint-react.xyz/docs/rules/no-children-for-each
4735
- */
4736
- 'react/no-children-for-each'?: Linter.RuleEntry<[]>
4737
- /**
4738
- * Disallows the use of 'Children.map' from the 'react' package.
4739
- * @see https://eslint-react.xyz/docs/rules/no-children-map
4740
- */
4741
- 'react/no-children-map'?: Linter.RuleEntry<[]>
4742
- /**
4743
- * Disallows the use of 'Children.only' from the 'react' package.
4744
- * @see https://eslint-react.xyz/docs/rules/no-children-only
4745
- */
4746
- 'react/no-children-only'?: Linter.RuleEntry<[]>
4747
- /**
4748
- * Disallows the use of 'Children.toArray' from the 'react' package.
4749
- * @see https://eslint-react.xyz/docs/rules/no-children-to-array
4750
- */
4751
- 'react/no-children-to-array'?: Linter.RuleEntry<[]>
4752
- /**
4753
- * Disallows class components except for error boundaries.
4754
- * @see https://eslint-react.xyz/docs/rules/no-class-component
4755
- */
4756
- 'react/no-class-component'?: Linter.RuleEntry<[]>
4757
- /**
4758
- * Disallows 'cloneElement'.
4759
- * @see https://eslint-react.xyz/docs/rules/no-clone-element
4760
- */
4761
- 'react/no-clone-element'?: Linter.RuleEntry<[]>
4762
- /**
4763
- * Replaces usage of 'componentWillMount' with 'UNSAFE_componentWillMount'.
4764
- * @see https://eslint-react.xyz/docs/rules/no-component-will-mount
4765
- */
4766
- 'react/no-component-will-mount'?: Linter.RuleEntry<[]>
4767
- /**
4768
- * Replaces usage of 'componentWillReceiveProps' with 'UNSAFE_componentWillReceiveProps'.
4769
- * @see https://eslint-react.xyz/docs/rules/no-component-will-receive-props
4770
- */
4771
- 'react/no-component-will-receive-props'?: Linter.RuleEntry<[]>
4772
- /**
4773
- * Replaces usage of 'componentWillUpdate' with 'UNSAFE_componentWillUpdate'.
4774
- * @see https://eslint-react.xyz/docs/rules/no-component-will-update
4775
- */
4776
- 'react/no-component-will-update'?: Linter.RuleEntry<[]>
4777
- /**
4778
- * Replaces usage of '<Context.Provider>' with '<Context>'.
4779
- * @see https://eslint-react.xyz/docs/rules/no-context-provider
4780
- */
4781
- 'react/no-context-provider'?: Linter.RuleEntry<[]>
4782
- /**
4783
- * Disallows 'createRef' in function components and Hooks.
4784
- * @see https://eslint-react.xyz/docs/rules/no-create-ref
4785
- */
4786
- 'react/no-create-ref'?: Linter.RuleEntry<[]>
4787
- /**
4788
- * Disallows direct mutation of 'this.state'.
4789
- * @see https://eslint-react.xyz/docs/rules/no-direct-mutation-state
4790
- */
4791
- 'react/no-direct-mutation-state'?: Linter.RuleEntry<[]>
4792
- /**
4793
- * Prevents duplicate 'key' props on sibling elements when rendering lists.
4794
- * @see https://eslint-react.xyz/docs/rules/no-duplicate-key
4795
- */
4796
- 'react/no-duplicate-key'?: Linter.RuleEntry<[]>
4797
- /**
4798
- * Replaces usage of 'forwardRef' with passing 'ref' as a prop.
4799
- * @see https://eslint-react.xyz/docs/rules/no-forward-ref
4800
- */
4801
- 'react/no-forward-ref'?: Linter.RuleEntry<[]>
4802
- /**
4803
- * Prevents implicitly passing the 'children' prop to components.
4804
- * @see https://eslint-react.xyz/docs/rules/no-implicit-children
4805
- */
4806
- 'react/no-implicit-children'?: Linter.RuleEntry<[]>
4807
- /**
4808
- * Prevents implicitly passing the 'key' prop to components.
4809
- * @see https://eslint-react.xyz/docs/rules/no-implicit-key
4810
- */
4811
- 'react/no-implicit-key'?: Linter.RuleEntry<[]>
4812
- /**
4813
- * Prevents implicitly passing the 'ref' prop to components.
4814
- * @see https://eslint-react.xyz/docs/rules/no-implicit-ref
4815
- */
4816
- 'react/no-implicit-ref'?: Linter.RuleEntry<[]>
4817
- /**
4818
- * Prevents problematic leaked values from being rendered.
4819
- * @see https://eslint-react.xyz/docs/rules/no-leaked-conditional-rendering
4820
- */
4821
- 'react/no-leaked-conditional-rendering'?: Linter.RuleEntry<[]>
4822
- /**
4823
- * Enforces that all components have a 'displayName' that can be used in DevTools.
4824
- * @see https://eslint-react.xyz/docs/rules/no-missing-component-display-name
4825
- */
4826
- 'react/no-missing-component-display-name'?: Linter.RuleEntry<[]>
4827
- /**
4828
- * Enforces that all contexts have a 'displayName' that can be used in DevTools.
4829
- * @see https://eslint-react.xyz/docs/rules/no-missing-context-display-name
4830
- */
4831
- 'react/no-missing-context-display-name'?: Linter.RuleEntry<[]>
4832
- /**
4833
- * Disallows missing 'key' on items in list rendering.
4834
- * @see https://eslint-react.xyz/docs/rules/no-missing-key
4835
- */
4836
- 'react/no-missing-key'?: Linter.RuleEntry<[]>
4837
- /**
4838
- * Prevents incorrect usage of 'captureOwnerStack'.
4839
- * @see https://eslint-react.xyz/docs/rules/no-misused-capture-owner-stack
4840
- */
4841
- 'react/no-misused-capture-owner-stack'?: Linter.RuleEntry<[]>
4842
- /**
4843
- * Disallows nesting component definitions inside other components.
4844
- * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions
4845
- */
4846
- 'react/no-nested-component-definitions'?: Linter.RuleEntry<[]>
4847
- /**
4848
- * Disallows nesting lazy component declarations inside other components or hooks.
4849
- * @see https://eslint-react.xyz/docs/rules/no-nested-lazy-component-declarations
4850
- */
4851
- 'react/no-nested-lazy-component-declarations'?: Linter.RuleEntry<[]>
4852
- /**
4853
- * Disallows calling 'this.setState' in 'componentDidMount' outside functions such as callbacks.
4854
- * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-mount
4855
- */
4856
- 'react/no-set-state-in-component-did-mount'?: Linter.RuleEntry<[]>
4857
- /**
4858
- * Disallows calling 'this.setState' in 'componentDidUpdate' outside functions such as callbacks.
4859
- * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-update
4860
- */
4861
- 'react/no-set-state-in-component-did-update'?: Linter.RuleEntry<[]>
4862
- /**
4863
- * Disallows calling 'this.setState' in 'componentWillUpdate' outside functions such as callbacks.
4864
- * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-will-update
4865
- */
4866
- 'react/no-set-state-in-component-will-update'?: Linter.RuleEntry<[]>
4867
- /**
4868
- * Enforces that a function with the 'use' prefix uses at least one Hook inside it.
4869
- * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-prefix
4870
- */
4871
- 'react/no-unnecessary-use-prefix'?: Linter.RuleEntry<[]>
4872
- /**
4873
- * Warns about the use of 'UNSAFE_componentWillMount' in class components.
4874
- * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-mount
4875
- */
4876
- 'react/no-unsafe-component-will-mount'?: Linter.RuleEntry<[]>
4877
- /**
4878
- * Warns about the use of 'UNSAFE_componentWillReceiveProps' in class components.
4879
- * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-receive-props
4880
- */
4881
- 'react/no-unsafe-component-will-receive-props'?: Linter.RuleEntry<[]>
4882
- /**
4883
- * Warns about the use of 'UNSAFE_componentWillUpdate' in class components.
4884
- * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-update
4885
- */
4886
- 'react/no-unsafe-component-will-update'?: Linter.RuleEntry<[]>
4887
- /**
4888
- * Prevents non-stable values (i.e., object literals) from being used as a value for 'Context.Provider'.
4889
- * @see https://eslint-react.xyz/docs/rules/no-unstable-context-value
4890
- */
4891
- 'react/no-unstable-context-value'?: Linter.RuleEntry<[]>
4892
- /**
4893
- * Prevents using referential-type values as default props in object destructuring.
4894
- * @see https://eslint-react.xyz/docs/rules/no-unstable-default-props
4895
- */
4896
- 'react/no-unstable-default-props'?: Linter.RuleEntry<ReactNoUnstableDefaultProps>
4897
- /**
4898
- * Warns about unused class component methods and properties.
4899
- * @see https://eslint-react.xyz/docs/rules/no-unused-class-component-members
4900
- */
4901
- 'react/no-unused-class-component-members'?: Linter.RuleEntry<[]>
4902
- /**
4903
- * Warns about component props that are defined but never used.
4904
- * @see https://eslint-react.xyz/docs/rules/no-unused-props
4905
- */
4906
- 'react/no-unused-props'?: Linter.RuleEntry<[]>
4907
- /**
4908
- * Warns about state variables that are defined but never used.
4909
- * @see https://eslint-react.xyz/docs/rules/no-unused-state
4910
- */
4911
- 'react/no-unused-state'?: Linter.RuleEntry<[]>
4912
- /**
4913
- * Replaces usage of 'useContext' with 'use'.
4914
- * @see https://eslint-react.xyz/docs/rules/no-use-context
4915
- */
4916
- 'react/no-use-context'?: Linter.RuleEntry<[]>
4917
- /**
4918
- * Validates that components and hooks are pure by checking that they do not call known-impure functions during render.
4919
- * @see https://eslint-react.xyz/docs/rules/purity
4920
- */
4921
- 'react/purity'?: Linter.RuleEntry<[]>
4922
- /**
4923
- * Validates correct usage of refs by checking that 'ref.current' is not read or written during render.
4924
- * @see https://eslint-react.xyz/docs/rules/refs
4925
- */
4926
- 'react/refs'?: Linter.RuleEntry<[]>
4927
- /**
4928
- * Validates and transforms React Client/Server Function definitions.
4929
- * @see https://eslint-react.xyz/docs/rules/rsc-function-definition
4930
- */
4931
- 'react/rsc-function-definition'?: Linter.RuleEntry<[]>
4932
- /**
4933
- * Enforces the Rules of Hooks.
4934
- * @see https://react.dev/reference/rules/rules-of-hooks
4935
- */
4936
- 'react/rules-of-hooks'?: Linter.RuleEntry<ReactRulesOfHooks>
4937
- /**
4938
- * Validates against setting state synchronously in an effect, which can lead to re-renders that degrade performance.
4939
- * @see https://eslint-react.xyz/docs/rules/set-state-in-effect
4940
- */
4941
- 'react/set-state-in-effect'?: Linter.RuleEntry<[]>
4942
- /**
4943
- * Validates against unconditionally setting state during render, which can trigger additional renders and potential infinite render loops.
4944
- * @see https://eslint-react.xyz/docs/rules/set-state-in-render
4945
- */
4946
- 'react/set-state-in-render'?: Linter.RuleEntry<[]>
4947
- /**
4948
- * Validates that components are static, not recreated every render.
4949
- * @see https://eslint-react.xyz/docs/rules/static-components
4950
- */
4951
- 'react/static-components'?: Linter.RuleEntry<[]>
4952
- /**
4953
- * Validates against syntax that React Compiler does not support.
4954
- * @see https://eslint-react.xyz/docs/rules/unsupported-syntax
4955
- */
4956
- 'react/unsupported-syntax'?: Linter.RuleEntry<[]>
4957
- /**
4958
- * Validates that 'useMemo' is called with a callback that returns a value.
4959
- * @see https://eslint-react.xyz/docs/rules/use-memo
4960
- */
4961
- 'react/use-memo'?: Linter.RuleEntry<[]>
4962
- /**
4963
- * Enforces correct usage of 'useState', including destructuring, symmetric naming of the value and setter, and wrapping expensive initializers in a lazy initializer function.
4964
- * @see https://eslint-react.xyz/docs/rules/use-state
4965
- */
4966
- 'react/use-state'?: Linter.RuleEntry<ReactUseState>
4967
- /**
4968
- * Enforces that every 'addEventListener' in a component or custom hook has a corresponding 'removeEventListener'.
4969
- * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-event-listener
4970
- */
4971
- 'react/web-api-no-leaked-event-listener'?: Linter.RuleEntry<[]>
4972
- /**
4973
- * Enforces that every 'fetch' in a component or custom hook has a corresponding 'AbortController' abort in the cleanup function.
4974
- * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-fetch
4975
- */
4976
- 'react/web-api-no-leaked-fetch'?: Linter.RuleEntry<[]>
4977
- /**
4978
- * Enforces that every 'IntersectionObserver' created in a component or custom hook has a corresponding 'IntersectionObserver.disconnect()'.
4979
- * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-intersection-observer
4980
- */
4981
- 'react/web-api-no-leaked-intersection-observer'?: Linter.RuleEntry<[]>
4982
- /**
4983
- * Enforces that every 'setInterval' in a component or custom hook has a corresponding 'clearInterval'.
4984
- * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-interval
4985
- */
4986
- 'react/web-api-no-leaked-interval'?: Linter.RuleEntry<[]>
4987
- /**
4988
- * Enforces that every 'ResizeObserver' created in a component or custom hook has a corresponding 'ResizeObserver.disconnect()'.
4989
- * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-resize-observer
4990
- */
4991
- 'react/web-api-no-leaked-resize-observer'?: Linter.RuleEntry<[]>
4992
- /**
4993
- * Enforces that every 'setTimeout' in a component or custom hook has a corresponding 'clearTimeout'.
4994
- * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-timeout
4995
- */
4996
- 'react/web-api-no-leaked-timeout'?: Linter.RuleEntry<[]>
4997
- /**
4998
- * Validates usage of Error Boundaries instead of try/catch for errors in child components.
4999
- * @see https://eslint-react.xyz/docs/rules/error-boundaries
5000
- */
5001
- 'react/x-error-boundaries'?: Linter.RuleEntry<[]>
4301
+ 'react/error-boundaries'?: Linter.RuleEntry<[]>
5002
4302
  /**
5003
4303
  * Verifies the list of dependencies for Hooks like 'useEffect' and similar.
5004
4304
  * @see https://github.com/facebook/react/issues/14920
5005
4305
  */
5006
- 'react/x-exhaustive-deps'?: Linter.RuleEntry<ReactXExhaustiveDeps>
4306
+ 'react/exhaustive-deps'?: Linter.RuleEntry<ReactExhaustiveDeps>
5007
4307
  /**
5008
4308
  * Validates against assignment/mutation of globals during render, part of ensuring that side effects must run outside of render.
5009
4309
  * @see https://eslint-react.xyz/docs/rules/globals
5010
4310
  */
5011
- 'react/x-globals'?: Linter.RuleEntry<[]>
4311
+ 'react/globals'?: Linter.RuleEntry<[]>
5012
4312
  /**
5013
4313
  * Validates against mutating props, state, and other values that are immutable.
5014
4314
  * @see https://eslint-react.xyz/docs/rules/immutability
5015
4315
  */
5016
- 'react/x-immutability'?: Linter.RuleEntry<[]>
4316
+ 'react/immutability'?: Linter.RuleEntry<[]>
5017
4317
  /**
5018
4318
  * Disallows accessing 'this.state' inside 'setState' calls.
5019
4319
  * @see https://eslint-react.xyz/docs/rules/no-access-state-in-setstate
5020
4320
  */
5021
- 'react/x-no-access-state-in-setstate'?: Linter.RuleEntry<[]>
4321
+ 'react/no-access-state-in-setstate'?: Linter.RuleEntry<[]>
5022
4322
  /**
5023
4323
  * Disallows using an item's index in the array as its key.
5024
4324
  * @see https://eslint-react.xyz/docs/rules/no-array-index-key
5025
4325
  */
5026
- 'react/x-no-array-index-key'?: Linter.RuleEntry<[]>
4326
+ 'react/no-array-index-key'?: Linter.RuleEntry<[]>
5027
4327
  /**
5028
4328
  * Disallows the use of 'Children.count' from the 'react' package.
5029
4329
  * @see https://eslint-react.xyz/docs/rules/no-children-count
5030
4330
  */
5031
- 'react/x-no-children-count'?: Linter.RuleEntry<[]>
4331
+ 'react/no-children-count'?: Linter.RuleEntry<[]>
5032
4332
  /**
5033
4333
  * Disallows the use of 'Children.forEach' from the 'react' package.
5034
4334
  * @see https://eslint-react.xyz/docs/rules/no-children-for-each
5035
4335
  */
5036
- 'react/x-no-children-for-each'?: Linter.RuleEntry<[]>
4336
+ 'react/no-children-for-each'?: Linter.RuleEntry<[]>
5037
4337
  /**
5038
4338
  * Disallows the use of 'Children.map' from the 'react' package.
5039
4339
  * @see https://eslint-react.xyz/docs/rules/no-children-map
5040
4340
  */
5041
- 'react/x-no-children-map'?: Linter.RuleEntry<[]>
4341
+ 'react/no-children-map'?: Linter.RuleEntry<[]>
5042
4342
  /**
5043
4343
  * Disallows the use of 'Children.only' from the 'react' package.
5044
4344
  * @see https://eslint-react.xyz/docs/rules/no-children-only
5045
4345
  */
5046
- 'react/x-no-children-only'?: Linter.RuleEntry<[]>
4346
+ 'react/no-children-only'?: Linter.RuleEntry<[]>
5047
4347
  /**
5048
4348
  * Disallows the use of 'Children.toArray' from the 'react' package.
5049
4349
  * @see https://eslint-react.xyz/docs/rules/no-children-to-array
5050
4350
  */
5051
- 'react/x-no-children-to-array'?: Linter.RuleEntry<[]>
4351
+ 'react/no-children-to-array'?: Linter.RuleEntry<[]>
5052
4352
  /**
5053
4353
  * Disallows class components except for error boundaries.
5054
4354
  * @see https://eslint-react.xyz/docs/rules/no-class-component
5055
4355
  */
5056
- 'react/x-no-class-component'?: Linter.RuleEntry<[]>
4356
+ 'react/no-class-component'?: Linter.RuleEntry<[]>
5057
4357
  /**
5058
4358
  * Disallows 'cloneElement'.
5059
4359
  * @see https://eslint-react.xyz/docs/rules/no-clone-element
5060
4360
  */
5061
- 'react/x-no-clone-element'?: Linter.RuleEntry<[]>
4361
+ 'react/no-clone-element'?: Linter.RuleEntry<[]>
5062
4362
  /**
5063
4363
  * Replaces usage of 'componentWillMount' with 'UNSAFE_componentWillMount'.
5064
4364
  * @see https://eslint-react.xyz/docs/rules/no-component-will-mount
5065
4365
  */
5066
- 'react/x-no-component-will-mount'?: Linter.RuleEntry<[]>
4366
+ 'react/no-component-will-mount'?: Linter.RuleEntry<[]>
5067
4367
  /**
5068
4368
  * Replaces usage of 'componentWillReceiveProps' with 'UNSAFE_componentWillReceiveProps'.
5069
4369
  * @see https://eslint-react.xyz/docs/rules/no-component-will-receive-props
5070
4370
  */
5071
- 'react/x-no-component-will-receive-props'?: Linter.RuleEntry<[]>
4371
+ 'react/no-component-will-receive-props'?: Linter.RuleEntry<[]>
5072
4372
  /**
5073
4373
  * Replaces usage of 'componentWillUpdate' with 'UNSAFE_componentWillUpdate'.
5074
4374
  * @see https://eslint-react.xyz/docs/rules/no-component-will-update
5075
4375
  */
5076
- 'react/x-no-component-will-update'?: Linter.RuleEntry<[]>
4376
+ 'react/no-component-will-update'?: Linter.RuleEntry<[]>
5077
4377
  /**
5078
4378
  * Replaces usage of '<Context.Provider>' with '<Context>'.
5079
4379
  * @see https://eslint-react.xyz/docs/rules/no-context-provider
5080
4380
  */
5081
- 'react/x-no-context-provider'?: Linter.RuleEntry<[]>
4381
+ 'react/no-context-provider'?: Linter.RuleEntry<[]>
5082
4382
  /**
5083
4383
  * Disallows 'createRef' in function components and Hooks.
5084
4384
  * @see https://eslint-react.xyz/docs/rules/no-create-ref
5085
4385
  */
5086
- 'react/x-no-create-ref'?: Linter.RuleEntry<[]>
4386
+ 'react/no-create-ref'?: Linter.RuleEntry<[]>
5087
4387
  /**
5088
4388
  * Disallows direct mutation of 'this.state'.
5089
4389
  * @see https://eslint-react.xyz/docs/rules/no-direct-mutation-state
5090
4390
  */
5091
- 'react/x-no-direct-mutation-state'?: Linter.RuleEntry<[]>
4391
+ 'react/no-direct-mutation-state'?: Linter.RuleEntry<[]>
5092
4392
  /**
5093
4393
  * Prevents duplicate 'key' props on sibling elements when rendering lists.
5094
4394
  * @see https://eslint-react.xyz/docs/rules/no-duplicate-key
5095
4395
  */
5096
- 'react/x-no-duplicate-key'?: Linter.RuleEntry<[]>
4396
+ 'react/no-duplicate-key'?: Linter.RuleEntry<[]>
5097
4397
  /**
5098
4398
  * Replaces usage of 'forwardRef' with passing 'ref' as a prop.
5099
4399
  * @see https://eslint-react.xyz/docs/rules/no-forward-ref
5100
4400
  */
5101
- 'react/x-no-forward-ref'?: Linter.RuleEntry<[]>
4401
+ 'react/no-forward-ref'?: Linter.RuleEntry<[]>
5102
4402
  /**
5103
4403
  * Prevents implicitly passing the 'children' prop to components.
5104
4404
  * @see https://eslint-react.xyz/docs/rules/no-implicit-children
5105
4405
  */
5106
- 'react/x-no-implicit-children'?: Linter.RuleEntry<[]>
4406
+ 'react/no-implicit-children'?: Linter.RuleEntry<[]>
5107
4407
  /**
5108
4408
  * Prevents implicitly passing the 'key' prop to components.
5109
4409
  * @see https://eslint-react.xyz/docs/rules/no-implicit-key
5110
4410
  */
5111
- 'react/x-no-implicit-key'?: Linter.RuleEntry<[]>
4411
+ 'react/no-implicit-key'?: Linter.RuleEntry<[]>
5112
4412
  /**
5113
4413
  * Prevents implicitly passing the 'ref' prop to components.
5114
4414
  * @see https://eslint-react.xyz/docs/rules/no-implicit-ref
5115
4415
  */
5116
- 'react/x-no-implicit-ref'?: Linter.RuleEntry<[]>
4416
+ 'react/no-implicit-ref'?: Linter.RuleEntry<[]>
5117
4417
  /**
5118
4418
  * Prevents problematic leaked values from being rendered.
5119
4419
  * @see https://eslint-react.xyz/docs/rules/no-leaked-conditional-rendering
5120
4420
  */
5121
- 'react/x-no-leaked-conditional-rendering'?: Linter.RuleEntry<[]>
4421
+ 'react/no-leaked-conditional-rendering'?: Linter.RuleEntry<[]>
5122
4422
  /**
5123
4423
  * Enforces that all components have a 'displayName' that can be used in DevTools.
5124
4424
  * @see https://eslint-react.xyz/docs/rules/no-missing-component-display-name
5125
4425
  */
5126
- 'react/x-no-missing-component-display-name'?: Linter.RuleEntry<[]>
4426
+ 'react/no-missing-component-display-name'?: Linter.RuleEntry<[]>
5127
4427
  /**
5128
4428
  * Enforces that all contexts have a 'displayName' that can be used in DevTools.
5129
4429
  * @see https://eslint-react.xyz/docs/rules/no-missing-context-display-name
5130
4430
  */
5131
- 'react/x-no-missing-context-display-name'?: Linter.RuleEntry<[]>
4431
+ 'react/no-missing-context-display-name'?: Linter.RuleEntry<[]>
5132
4432
  /**
5133
4433
  * Disallows missing 'key' on items in list rendering.
5134
4434
  * @see https://eslint-react.xyz/docs/rules/no-missing-key
5135
4435
  */
5136
- 'react/x-no-missing-key'?: Linter.RuleEntry<[]>
4436
+ 'react/no-missing-key'?: Linter.RuleEntry<[]>
5137
4437
  /**
5138
4438
  * Prevents incorrect usage of 'captureOwnerStack'.
5139
4439
  * @see https://eslint-react.xyz/docs/rules/no-misused-capture-owner-stack
5140
4440
  */
5141
- 'react/x-no-misused-capture-owner-stack'?: Linter.RuleEntry<[]>
4441
+ 'react/no-misused-capture-owner-stack'?: Linter.RuleEntry<[]>
5142
4442
  /**
5143
4443
  * Disallows nesting component definitions inside other components.
5144
4444
  * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions
5145
4445
  */
5146
- 'react/x-no-nested-component-definitions'?: Linter.RuleEntry<[]>
4446
+ 'react/no-nested-component-definitions'?: Linter.RuleEntry<[]>
5147
4447
  /**
5148
4448
  * Disallows nesting lazy component declarations inside other components or hooks.
5149
4449
  * @see https://eslint-react.xyz/docs/rules/no-nested-lazy-component-declarations
5150
4450
  */
5151
- 'react/x-no-nested-lazy-component-declarations'?: Linter.RuleEntry<[]>
4451
+ 'react/no-nested-lazy-component-declarations'?: Linter.RuleEntry<[]>
5152
4452
  /**
5153
4453
  * Disallows calling 'this.setState' in 'componentDidMount' outside functions such as callbacks.
5154
4454
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-mount
5155
4455
  */
5156
- 'react/x-no-set-state-in-component-did-mount'?: Linter.RuleEntry<[]>
4456
+ 'react/no-set-state-in-component-did-mount'?: Linter.RuleEntry<[]>
5157
4457
  /**
5158
4458
  * Disallows calling 'this.setState' in 'componentDidUpdate' outside functions such as callbacks.
5159
4459
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-update
5160
4460
  */
5161
- 'react/x-no-set-state-in-component-did-update'?: Linter.RuleEntry<[]>
4461
+ 'react/no-set-state-in-component-did-update'?: Linter.RuleEntry<[]>
5162
4462
  /**
5163
4463
  * Disallows calling 'this.setState' in 'componentWillUpdate' outside functions such as callbacks.
5164
4464
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-will-update
5165
4465
  */
5166
- 'react/x-no-set-state-in-component-will-update'?: Linter.RuleEntry<[]>
4466
+ 'react/no-set-state-in-component-will-update'?: Linter.RuleEntry<[]>
5167
4467
  /**
5168
4468
  * Enforces that a function with the 'use' prefix uses at least one Hook inside it.
5169
4469
  * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-prefix
5170
4470
  */
5171
- 'react/x-no-unnecessary-use-prefix'?: Linter.RuleEntry<[]>
4471
+ 'react/no-unnecessary-use-prefix'?: Linter.RuleEntry<[]>
5172
4472
  /**
5173
4473
  * Warns about the use of 'UNSAFE_componentWillMount' in class components.
5174
4474
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-mount
5175
4475
  */
5176
- 'react/x-no-unsafe-component-will-mount'?: Linter.RuleEntry<[]>
4476
+ 'react/no-unsafe-component-will-mount'?: Linter.RuleEntry<[]>
5177
4477
  /**
5178
4478
  * Warns about the use of 'UNSAFE_componentWillReceiveProps' in class components.
5179
4479
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-receive-props
5180
4480
  */
5181
- 'react/x-no-unsafe-component-will-receive-props'?: Linter.RuleEntry<[]>
4481
+ 'react/no-unsafe-component-will-receive-props'?: Linter.RuleEntry<[]>
5182
4482
  /**
5183
4483
  * Warns about the use of 'UNSAFE_componentWillUpdate' in class components.
5184
4484
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-update
5185
4485
  */
5186
- 'react/x-no-unsafe-component-will-update'?: Linter.RuleEntry<[]>
4486
+ 'react/no-unsafe-component-will-update'?: Linter.RuleEntry<[]>
5187
4487
  /**
5188
4488
  * Prevents non-stable values (i.e., object literals) from being used as a value for 'Context.Provider'.
5189
4489
  * @see https://eslint-react.xyz/docs/rules/no-unstable-context-value
5190
4490
  */
5191
- 'react/x-no-unstable-context-value'?: Linter.RuleEntry<[]>
4491
+ 'react/no-unstable-context-value'?: Linter.RuleEntry<[]>
5192
4492
  /**
5193
4493
  * Prevents using referential-type values as default props in object destructuring.
5194
4494
  * @see https://eslint-react.xyz/docs/rules/no-unstable-default-props
5195
4495
  */
5196
- 'react/x-no-unstable-default-props'?: Linter.RuleEntry<ReactXNoUnstableDefaultProps>
4496
+ 'react/no-unstable-default-props'?: Linter.RuleEntry<ReactNoUnstableDefaultProps>
5197
4497
  /**
5198
4498
  * Warns about unused class component methods and properties.
5199
4499
  * @see https://eslint-react.xyz/docs/rules/no-unused-class-component-members
5200
4500
  */
5201
- 'react/x-no-unused-class-component-members'?: Linter.RuleEntry<[]>
4501
+ 'react/no-unused-class-component-members'?: Linter.RuleEntry<[]>
5202
4502
  /**
5203
4503
  * Warns about component props that are defined but never used.
5204
4504
  * @see https://eslint-react.xyz/docs/rules/no-unused-props
5205
4505
  */
5206
- 'react/x-no-unused-props'?: Linter.RuleEntry<[]>
4506
+ 'react/no-unused-props'?: Linter.RuleEntry<[]>
5207
4507
  /**
5208
4508
  * Warns about state variables that are defined but never used.
5209
4509
  * @see https://eslint-react.xyz/docs/rules/no-unused-state
5210
4510
  */
5211
- 'react/x-no-unused-state'?: Linter.RuleEntry<[]>
4511
+ 'react/no-unused-state'?: Linter.RuleEntry<[]>
5212
4512
  /**
5213
4513
  * Replaces usage of 'useContext' with 'use'.
5214
4514
  * @see https://eslint-react.xyz/docs/rules/no-use-context
5215
4515
  */
5216
- 'react/x-no-use-context'?: Linter.RuleEntry<[]>
4516
+ 'react/no-use-context'?: Linter.RuleEntry<[]>
5217
4517
  /**
5218
4518
  * Validates that components and hooks are pure by checking that they do not call known-impure functions during render.
5219
4519
  * @see https://eslint-react.xyz/docs/rules/purity
5220
4520
  */
5221
- 'react/x-purity'?: Linter.RuleEntry<[]>
4521
+ 'react/purity'?: Linter.RuleEntry<[]>
5222
4522
  /**
5223
4523
  * Validates correct usage of refs by checking that 'ref.current' is not read or written during render.
5224
4524
  * @see https://eslint-react.xyz/docs/rules/refs
5225
4525
  */
5226
- 'react/x-refs'?: Linter.RuleEntry<[]>
4526
+ 'react/refs'?: Linter.RuleEntry<[]>
5227
4527
  /**
5228
4528
  * Enforces the Rules of Hooks.
5229
4529
  * @see https://react.dev/reference/rules/rules-of-hooks
5230
4530
  */
5231
- 'react/x-rules-of-hooks'?: Linter.RuleEntry<ReactXRulesOfHooks>
4531
+ 'react/rules-of-hooks'?: Linter.RuleEntry<ReactRulesOfHooks>
5232
4532
  /**
5233
4533
  * Validates against setting state synchronously in an effect, which can lead to re-renders that degrade performance.
5234
4534
  * @see https://eslint-react.xyz/docs/rules/set-state-in-effect
5235
4535
  */
5236
- 'react/x-set-state-in-effect'?: Linter.RuleEntry<[]>
4536
+ 'react/set-state-in-effect'?: Linter.RuleEntry<[]>
5237
4537
  /**
5238
4538
  * Validates against unconditionally setting state during render, which can trigger additional renders and potential infinite render loops.
5239
4539
  * @see https://eslint-react.xyz/docs/rules/set-state-in-render
5240
4540
  */
5241
- 'react/x-set-state-in-render'?: Linter.RuleEntry<[]>
4541
+ 'react/set-state-in-render'?: Linter.RuleEntry<[]>
5242
4542
  /**
5243
4543
  * Validates that components are static, not recreated every render.
5244
4544
  * @see https://eslint-react.xyz/docs/rules/static-components
5245
4545
  */
5246
- 'react/x-static-components'?: Linter.RuleEntry<[]>
4546
+ 'react/static-components'?: Linter.RuleEntry<[]>
5247
4547
  /**
5248
4548
  * Validates against syntax that React Compiler does not support.
5249
4549
  * @see https://eslint-react.xyz/docs/rules/unsupported-syntax
5250
4550
  */
5251
- 'react/x-unsupported-syntax'?: Linter.RuleEntry<[]>
4551
+ 'react/unsupported-syntax'?: Linter.RuleEntry<[]>
5252
4552
  /**
5253
4553
  * Validates that 'useMemo' is called with a callback that returns a value.
5254
4554
  * @see https://eslint-react.xyz/docs/rules/use-memo
5255
4555
  */
5256
- 'react/x-use-memo'?: Linter.RuleEntry<[]>
4556
+ 'react/use-memo'?: Linter.RuleEntry<[]>
5257
4557
  /**
5258
4558
  * Enforces correct usage of 'useState', including destructuring, symmetric naming of the value and setter, and wrapping expensive initializers in a lazy initializer function.
5259
4559
  * @see https://eslint-react.xyz/docs/rules/use-state
5260
4560
  */
5261
- 'react/x-use-state'?: Linter.RuleEntry<ReactXUseState>
4561
+ 'react/use-state'?: Linter.RuleEntry<ReactUseState>
5262
4562
  /**
5263
4563
  * disallow confusing quantifiers
5264
4564
  * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/confusing-quantifier.html
@@ -15241,6 +14541,11 @@ type Radix = []|[("always" | "as-needed")]
15241
14541
  type ReactCompilerReactCompiler = []|[{
15242
14542
  [k: string]: unknown | undefined
15243
14543
  }]
14544
+ // ----- react-dom/no-unknown-property -----
14545
+ type ReactDomNoUnknownProperty = []|[{
14546
+ ignore?: string[]
14547
+ requireDataLowercase?: boolean
14548
+ }]
15244
14549
  // ----- react-hooks/capitalized-calls -----
15245
14550
  type ReactHooksCapitalizedCalls = []|[{
15246
14551
  [k: string]: unknown | undefined
@@ -15356,6 +14661,13 @@ type ReactHooksUseMemo = []|[{
15356
14661
  type ReactHooksVoidUseMemo = []|[{
15357
14662
  [k: string]: unknown | undefined
15358
14663
  }]
14664
+ // ----- react-jsx/no-useless-fragment -----
14665
+ type ReactJsxNoUselessFragment = []|[{
14666
+
14667
+ allowEmptyFragment?: boolean
14668
+
14669
+ allowExpressions?: boolean
14670
+ }]
15359
14671
  // ----- react-native/no-raw-text -----
15360
14672
  type ReactNativeNoRawText = []|[{
15361
14673
  skip?: string[]
@@ -15377,16 +14689,6 @@ type ReactRefreshOnlyExportComponents = []|[{
15377
14689
  allowConstantExport?: boolean
15378
14690
  checkJS?: boolean
15379
14691
  }]
15380
- // ----- react-dom/no-unknown-property -----
15381
- type ReactDomNoUnknownProperty = []|[{
15382
- ignore?: string[]
15383
- requireDataLowercase?: boolean
15384
- }]
15385
- // ----- react/dom-no-unknown-property -----
15386
- type ReactDomNoUnknownProperty = []|[{
15387
- ignore?: string[]
15388
- requireDataLowercase?: boolean
15389
- }]
15390
14692
  // ----- react/exhaustive-deps -----
15391
14693
  type ReactExhaustiveDeps = []|[{
15392
14694
  additionalHooks?: string
@@ -15394,20 +14696,6 @@ type ReactExhaustiveDeps = []|[{
15394
14696
  experimental_autoDependenciesHooks?: string[]
15395
14697
  requireExplicitEffectDeps?: boolean
15396
14698
  }]
15397
- // ----- react-jsx/no-useless-fragment -----
15398
- type ReactJsxNoUselessFragment = []|[{
15399
-
15400
- allowEmptyFragment?: boolean
15401
-
15402
- allowExpressions?: boolean
15403
- }]
15404
- // ----- react/jsx-no-useless-fragment -----
15405
- type ReactJsxNoUselessFragment = []|[{
15406
-
15407
- allowEmptyFragment?: boolean
15408
-
15409
- allowExpressions?: boolean
15410
- }]
15411
14699
  // ----- react/no-unstable-default-props -----
15412
14700
  type ReactNoUnstableDefaultProps = []|[{
15413
14701
  safeDefaultProps?: string[]
@@ -15422,48 +14710,6 @@ type ReactUseState = []|[{
15422
14710
  enforceLazyInitialization?: boolean
15423
14711
  enforceSetterName?: boolean
15424
14712
  }]
15425
- // ----- react-x/exhaustive-deps -----
15426
- type ReactXExhaustiveDeps = []|[{
15427
- additionalHooks?: string
15428
- enableDangerousAutofixThisMayCauseInfiniteLoops?: boolean
15429
- experimental_autoDependenciesHooks?: string[]
15430
- requireExplicitEffectDeps?: boolean
15431
- }]
15432
- // ----- react/x-exhaustive-deps -----
15433
- type ReactXExhaustiveDeps = []|[{
15434
- additionalHooks?: string
15435
- enableDangerousAutofixThisMayCauseInfiniteLoops?: boolean
15436
- experimental_autoDependenciesHooks?: string[]
15437
- requireExplicitEffectDeps?: boolean
15438
- }]
15439
- // ----- react-x/no-unstable-default-props -----
15440
- type ReactXNoUnstableDefaultProps = []|[{
15441
- safeDefaultProps?: string[]
15442
- }]
15443
- // ----- react/x-no-unstable-default-props -----
15444
- type ReactXNoUnstableDefaultProps = []|[{
15445
- safeDefaultProps?: string[]
15446
- }]
15447
- // ----- react-x/rules-of-hooks -----
15448
- type ReactXRulesOfHooks = []|[{
15449
- additionalHooks?: string
15450
- }]
15451
- // ----- react/x-rules-of-hooks -----
15452
- type ReactXRulesOfHooks = []|[{
15453
- additionalHooks?: string
15454
- }]
15455
- // ----- react-x/use-state -----
15456
- type ReactXUseState = []|[{
15457
- enforceAssignment?: boolean
15458
- enforceLazyInitialization?: boolean
15459
- enforceSetterName?: boolean
15460
- }]
15461
- // ----- react/x-use-state -----
15462
- type ReactXUseState = []|[{
15463
- enforceAssignment?: boolean
15464
- enforceLazyInitialization?: boolean
15465
- enforceSetterName?: boolean
15466
- }]
15467
14713
  // ----- regexp/hexadecimal-escape -----
15468
14714
  type RegexpHexadecimalEscape = []|[("always" | "never")]
15469
14715
  // ----- regexp/letter-case -----