@isentinel/eslint-config 5.0.0-beta.9 → 5.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/dist/index.d.mts +470 -170
  2. package/dist/index.mjs +85 -12
  3. package/package.json +11 -20
package/dist/index.d.mts CHANGED
@@ -6,7 +6,7 @@ import { ParserOptions } from "@typescript-eslint/parser";
6
6
  import { ESLintReactSettings } from "@eslint-react/shared";
7
7
  import { Linter } from "eslint";
8
8
  import { SetRequired } from "type-fest";
9
- import { FormatOptions, FormatOptions as OxfmtOptions } from "oxfmt";
9
+ import { FormatConfig, JsdocConfig } from "oxfmt";
10
10
 
11
11
  //#region node_modules/.pnpm/eslint-config-flat-gitignore@2.2.1_patch_hash=c7d784543e27da90b953f5e150d47a6fa9a846f45_39ed1056e1e5a66a5a4d407c54396e05/node_modules/eslint-config-flat-gitignore/dist/index.d.mts
12
12
  interface FlatGitignoreOptions {
@@ -46,11 +46,29 @@ interface FlatGitignoreOptions {
46
46
  cwd?: string;
47
47
  }
48
48
  //#endregion
49
+ //#region src/utils.d.ts
50
+ type ExtractRuleOptions<T> = T extends Linter.RuleEntry<infer U> ? U : never;
51
+ declare function isInGitHooksOrLintStaged(): boolean;
52
+ declare function isInAgentSession(): boolean;
53
+ declare function isInEditorEnvironment(): boolean;
54
+ /**
55
+ * Oxfmt's generated types widen `jsdoc.commentLineStrategy` and
56
+ * `jsdoc.lineWrappingStyle` to `string`, but its JSON schema (and therefore the
57
+ * generated `oxfmt/oxfmt` rule type) keep them as literal enums. Re-narrow them
58
+ * so option objects remain assignable to the rule.
59
+ */
60
+ type OxfmtOptions = Omit<FormatConfig, "jsdoc"> & {
61
+ jsdoc?: boolean | (Omit<JsdocConfig, "commentLineStrategy" | "lineWrappingStyle"> & {
62
+ commentLineStrategy?: "keep" | "multiline" | "singleLine";
63
+ lineWrappingStyle?: "balance" | "greedy";
64
+ });
65
+ };
66
+ //#endregion
49
67
  //#region src/configs/oxfmt.d.ts
50
68
  declare function oxfmt(options?: OptionsComponentExtensions & OptionsFiles & OptionsOverrides & {
51
69
  formatters?: OptionsFormatters | true;
52
- oxfmtConfigOptions?: FormatOptions;
53
- oxfmtOptions?: FormatOptions;
70
+ oxfmtConfigOptions?: OxfmtOptions;
71
+ oxfmtOptions?: OxfmtOptions;
54
72
  prettierOptions?: Options;
55
73
  }): Promise<Array<TypedFlatConfigItem>>;
56
74
  //#endregion
@@ -2903,343 +2921,477 @@ interface RuleOptions {
2903
2921
  'oxfmt/oxfmt'?: Linter.RuleEntry<OxfmtOxfmt>;
2904
2922
  /**
2905
2923
  * Enforce that names for bin properties are in kebab case.
2906
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/bin-name-casing.md
2924
+ * @see https://eslint-plugin-package-json.dev/rules/bin-name-casing
2907
2925
  */
2908
2926
  'package-json/bin-name-casing'?: Linter.RuleEntry<[]>;
2909
2927
  /**
2910
2928
  * Enforce consistent format for the exports field (implicit or explicit subpaths).
2911
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/exports-subpaths-style.md
2929
+ * @see https://eslint-plugin-package-json.dev/rules/exports-subpaths-style
2912
2930
  */
2913
2931
  'package-json/exports-subpaths-style'?: Linter.RuleEntry<PackageJsonExportsSubpathsStyle>;
2914
2932
  /**
2915
2933
  * Reports on unnecessary empty arrays and objects.
2916
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/no-empty-fields.md
2934
+ * @see https://eslint-plugin-package-json.dev/rules/no-empty-fields
2917
2935
  */
2918
2936
  'package-json/no-empty-fields'?: Linter.RuleEntry<PackageJsonNoEmptyFields>;
2919
2937
  /**
2920
2938
  * Prevents adding unnecessary / redundant files.
2921
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/no-redundant-files.md
2939
+ * @see https://eslint-plugin-package-json.dev/rules/no-redundant-files
2922
2940
  */
2923
2941
  'package-json/no-redundant-files'?: Linter.RuleEntry<[]>;
2924
2942
  /**
2925
2943
  * Warns when publishConfig.access is used in unscoped packages.
2926
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/no-redundant-publishConfig.md
2944
+ * @see https://eslint-plugin-package-json.dev/rules/no-redundant-publishConfig
2927
2945
  */
2928
2946
  'package-json/no-redundant-publishConfig'?: Linter.RuleEntry<[]>;
2929
2947
  /**
2930
2948
  * Package properties should be declared in standard order
2931
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/order-properties.md
2949
+ * @see https://eslint-plugin-package-json.dev/rules/order-properties
2932
2950
  */
2933
2951
  'package-json/order-properties'?: Linter.RuleEntry<PackageJsonOrderProperties>;
2934
2952
  /**
2935
2953
  * Enforce either object or shorthand declaration for repository.
2936
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/repository-shorthand.md
2954
+ * @see https://eslint-plugin-package-json.dev/rules/repository-shorthand
2937
2955
  */
2938
2956
  'package-json/repository-shorthand'?: Linter.RuleEntry<PackageJsonRepositoryShorthand>;
2939
2957
  /**
2940
2958
  * Ensures that proper attribution is included, requiring that either `author` or `contributors` is defined, and that if `contributors` is present, it should include at least one contributor.
2941
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-attribution.md
2959
+ * @see https://eslint-plugin-package-json.dev/rules/require-attribution
2942
2960
  */
2943
2961
  'package-json/require-attribution'?: Linter.RuleEntry<PackageJsonRequireAttribution>;
2944
2962
  /**
2945
2963
  * Requires the `author` property to be present.
2946
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-author.md
2964
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-author
2947
2965
  */
2948
2966
  'package-json/require-author'?: Linter.RuleEntry<PackageJsonRequireAuthor>;
2967
+ /**
2968
+ * Requires the `bin` property to be present.
2969
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-bin
2970
+ */
2971
+ 'package-json/require-bin'?: Linter.RuleEntry<PackageJsonRequireBin>;
2972
+ /**
2973
+ * Requires the `browser` property to be present.
2974
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-browser
2975
+ */
2976
+ 'package-json/require-browser'?: Linter.RuleEntry<PackageJsonRequireBrowser>;
2949
2977
  /**
2950
2978
  * Requires the `bugs` property to be present.
2951
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-bugs.md
2979
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-bugs
2952
2980
  */
2953
2981
  'package-json/require-bugs'?: Linter.RuleEntry<PackageJsonRequireBugs>;
2954
2982
  /**
2955
2983
  * Requires the `bundleDependencies` property to be present.
2956
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-bundleDependencies.md
2984
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-bundleDependencies
2957
2985
  */
2958
2986
  'package-json/require-bundleDependencies'?: Linter.RuleEntry<PackageJsonRequireBundleDependencies>;
2987
+ /**
2988
+ * Requires the `config` property to be present.
2989
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-config
2990
+ */
2991
+ 'package-json/require-config'?: Linter.RuleEntry<PackageJsonRequireConfig>;
2992
+ /**
2993
+ * Requires the `contributors` property to be present.
2994
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-contributors
2995
+ */
2996
+ 'package-json/require-contributors'?: Linter.RuleEntry<PackageJsonRequireContributors>;
2997
+ /**
2998
+ * Requires the `cpu` property to be present.
2999
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-cpu
3000
+ */
3001
+ 'package-json/require-cpu'?: Linter.RuleEntry<PackageJsonRequireCpu>;
2959
3002
  /**
2960
3003
  * Requires the `dependencies` property to be present.
2961
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-dependencies.md
3004
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-dependencies
2962
3005
  */
2963
3006
  'package-json/require-dependencies'?: Linter.RuleEntry<PackageJsonRequireDependencies>;
2964
3007
  /**
2965
3008
  * Requires the `description` property to be present.
2966
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-description.md
3009
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-description
2967
3010
  */
2968
3011
  'package-json/require-description'?: Linter.RuleEntry<PackageJsonRequireDescription>;
2969
3012
  /**
2970
3013
  * Requires the `devDependencies` property to be present.
2971
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-devDependencies.md
3014
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-devDependencies
2972
3015
  */
2973
3016
  'package-json/require-devDependencies'?: Linter.RuleEntry<PackageJsonRequireDevDependencies>;
3017
+ /**
3018
+ * Requires the `devEngines` property to be present.
3019
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-devEngines
3020
+ */
3021
+ 'package-json/require-devEngines'?: Linter.RuleEntry<PackageJsonRequireDevEngines>;
3022
+ /**
3023
+ * Requires the `directories` property to be present.
3024
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-directories
3025
+ */
3026
+ 'package-json/require-directories'?: Linter.RuleEntry<PackageJsonRequireDirectories>;
2974
3027
  /**
2975
3028
  * Requires the `engines` property to be present.
2976
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-engines.md
3029
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-engines
2977
3030
  */
2978
3031
  'package-json/require-engines'?: Linter.RuleEntry<PackageJsonRequireEngines>;
2979
3032
  /**
2980
3033
  * Requires the `exports` property to be present.
2981
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-exports.md
3034
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-exports
2982
3035
  */
2983
3036
  'package-json/require-exports'?: Linter.RuleEntry<PackageJsonRequireExports>;
2984
3037
  /**
2985
3038
  * Requires the `files` property to be present.
2986
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-files.md
3039
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-files
2987
3040
  */
2988
3041
  'package-json/require-files'?: Linter.RuleEntry<PackageJsonRequireFiles>;
3042
+ /**
3043
+ * Requires the `funding` property to be present.
3044
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-funding
3045
+ */
3046
+ 'package-json/require-funding'?: Linter.RuleEntry<PackageJsonRequireFunding>;
3047
+ /**
3048
+ * Requires the `gypfile` property to be present.
3049
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-gypfile
3050
+ */
3051
+ 'package-json/require-gypfile'?: Linter.RuleEntry<PackageJsonRequireGypfile>;
2989
3052
  /**
2990
3053
  * Requires the `homepage` property to be present.
2991
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-homepage.md
3054
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-homepage
2992
3055
  */
2993
3056
  'package-json/require-homepage'?: Linter.RuleEntry<PackageJsonRequireHomepage>;
2994
3057
  /**
2995
3058
  * Requires the `keywords` property to be present.
2996
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-keywords.md
3059
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-keywords
2997
3060
  */
2998
3061
  'package-json/require-keywords'?: Linter.RuleEntry<PackageJsonRequireKeywords>;
3062
+ /**
3063
+ * Requires the `libc` property to be present.
3064
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-libc
3065
+ */
3066
+ 'package-json/require-libc'?: Linter.RuleEntry<PackageJsonRequireLibc>;
2999
3067
  /**
3000
3068
  * Requires the `license` property to be present.
3001
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-license.md
3069
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-license
3002
3070
  */
3003
3071
  'package-json/require-license'?: Linter.RuleEntry<PackageJsonRequireLicense>;
3072
+ /**
3073
+ * Requires the `main` property to be present.
3074
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-main
3075
+ */
3076
+ 'package-json/require-main'?: Linter.RuleEntry<PackageJsonRequireMain>;
3077
+ /**
3078
+ * Requires the `man` property to be present.
3079
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-man
3080
+ */
3081
+ 'package-json/require-man'?: Linter.RuleEntry<PackageJsonRequireMan>;
3082
+ /**
3083
+ * Requires the `module` property to be present.
3084
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-module
3085
+ */
3086
+ 'package-json/require-module'?: Linter.RuleEntry<PackageJsonRequireModule>;
3004
3087
  /**
3005
3088
  * Requires the `name` property to be present.
3006
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-name.md
3089
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-name
3007
3090
  */
3008
3091
  'package-json/require-name'?: Linter.RuleEntry<PackageJsonRequireName>;
3009
3092
  /**
3010
3093
  * Requires the `optionalDependencies` property to be present.
3011
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-optionalDependencies.md
3094
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-optionalDependencies
3012
3095
  */
3013
3096
  'package-json/require-optionalDependencies'?: Linter.RuleEntry<PackageJsonRequireOptionalDependencies>;
3097
+ /**
3098
+ * Requires the `os` property to be present.
3099
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-os
3100
+ */
3101
+ 'package-json/require-os'?: Linter.RuleEntry<PackageJsonRequireOs>;
3102
+ /**
3103
+ * Requires the `packageManager` property to be present.
3104
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-packageManager
3105
+ */
3106
+ 'package-json/require-packageManager'?: Linter.RuleEntry<PackageJsonRequirePackageManager>;
3014
3107
  /**
3015
3108
  * Requires the `peerDependencies` property to be present.
3016
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-peerDependencies.md
3109
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-peerDependencies
3017
3110
  */
3018
3111
  'package-json/require-peerDependencies'?: Linter.RuleEntry<PackageJsonRequirePeerDependencies>;
3112
+ /**
3113
+ * Requires the `peerDependenciesMeta` property to be present.
3114
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-peerDependenciesMeta
3115
+ */
3116
+ 'package-json/require-peerDependenciesMeta'?: Linter.RuleEntry<PackageJsonRequirePeerDependenciesMeta>;
3117
+ /**
3118
+ * Requires the `private` property to be present.
3119
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-private
3120
+ */
3121
+ 'package-json/require-private'?: Linter.RuleEntry<[]>;
3122
+ /**
3123
+ * Requires the `publishConfig` property to be present.
3124
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-publishConfig
3125
+ */
3126
+ 'package-json/require-publishConfig'?: Linter.RuleEntry<PackageJsonRequirePublishConfig>;
3019
3127
  /**
3020
3128
  * Requires the `repository` property to be present.
3021
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-repository.md
3129
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-repository
3022
3130
  */
3023
3131
  'package-json/require-repository'?: Linter.RuleEntry<PackageJsonRequireRepository>;
3024
3132
  /**
3025
3133
  * Requires the `scripts` property to be present.
3026
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-scripts.md
3134
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-scripts
3027
3135
  */
3028
3136
  'package-json/require-scripts'?: Linter.RuleEntry<PackageJsonRequireScripts>;
3029
3137
  /**
3030
3138
  * Requires the `sideEffects` property to be present.
3031
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-sideEffects.md
3139
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-sideEffects
3032
3140
  */
3033
3141
  'package-json/require-sideEffects'?: Linter.RuleEntry<PackageJsonRequireSideEffects>;
3034
3142
  /**
3035
3143
  * Requires the `type` property to be present.
3036
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-type.md
3144
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-type
3037
3145
  */
3038
3146
  'package-json/require-type'?: Linter.RuleEntry<PackageJsonRequireType>;
3039
3147
  /**
3040
3148
  * Requires the `types` property to be present.
3041
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-types.md
3149
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-types
3042
3150
  */
3043
3151
  'package-json/require-types'?: Linter.RuleEntry<PackageJsonRequireTypes>;
3044
3152
  /**
3045
3153
  * Requires the `version` property to be present.
3046
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/require-version.md
3154
+ * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-version
3047
3155
  */
3048
3156
  'package-json/require-version'?: Linter.RuleEntry<PackageJsonRequireVersion>;
3049
3157
  /**
3050
3158
  * Restricts the range of dependencies to allow or disallow specific types of ranges.
3051
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/restrict-dependency-ranges.md
3159
+ * @see https://eslint-plugin-package-json.dev/rules/restrict-dependency-ranges
3052
3160
  */
3053
3161
  'package-json/restrict-dependency-ranges'?: Linter.RuleEntry<PackageJsonRestrictDependencyRanges>;
3054
3162
  /**
3055
3163
  * Disallows unnecessary properties in private packages.
3056
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/restrict-private-properties.md
3164
+ * @see https://eslint-plugin-package-json.dev/rules/restrict-private-properties
3057
3165
  */
3058
3166
  'package-json/restrict-private-properties'?: Linter.RuleEntry<PackageJsonRestrictPrivateProperties>;
3167
+ /**
3168
+ * Disallows specified top-level properties in package.json.
3169
+ * @see https://eslint-plugin-package-json.dev/rules/restrict-top-level-properties
3170
+ */
3171
+ 'package-json/restrict-top-level-properties'?: Linter.RuleEntry<PackageJsonRestrictTopLevelProperties>;
3059
3172
  /**
3060
3173
  * Enforce that names for `scripts` are in kebab case (optionally separated by colons).
3061
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/scripts-name-casing.md
3174
+ * @see https://eslint-plugin-package-json.dev/rules/scripts-name-casing
3062
3175
  */
3063
3176
  'package-json/scripts-name-casing'?: Linter.RuleEntry<[]>;
3064
3177
  /**
3065
3178
  * Selected collections must be in a consistent order (lexicographical for most; lifecycle-aware for scripts).
3066
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/sort-collections.md
3179
+ * @see https://eslint-plugin-package-json.dev/rules/sort-collections
3067
3180
  */
3068
3181
  'package-json/sort-collections'?: Linter.RuleEntry<PackageJsonSortCollections>;
3069
3182
  /**
3070
3183
  * Requires that all peer dependencies are also declared as dev dependencies
3071
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/specify-peers-locally.md
3184
+ * @see https://eslint-plugin-package-json.dev/rules/specify-peers-locally
3072
3185
  */
3073
3186
  'package-json/specify-peers-locally'?: Linter.RuleEntry<[]>;
3074
3187
  /**
3075
3188
  * Checks a dependency isn't specified more than once (i.e. in `dependencies` and `devDependencies`)
3076
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/unique-dependencies.md
3189
+ * @see https://eslint-plugin-package-json.dev/rules/unique-dependencies
3077
3190
  */
3078
3191
  'package-json/unique-dependencies'?: Linter.RuleEntry<[]>;
3079
3192
  /**
3080
3193
  * Enforce that the `author` property is valid.
3081
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-author.md
3194
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-author
3082
3195
  */
3083
3196
  'package-json/valid-author'?: Linter.RuleEntry<[]>;
3084
3197
  /**
3085
3198
  * Enforce that the `bin` property is valid.
3086
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-bin.md
3199
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-bin
3087
3200
  */
3088
3201
  'package-json/valid-bin'?: Linter.RuleEntry<[]>;
3089
3202
  /**
3090
- * Enforce that the `bundleDependencies` (also: `bundledDependencies`) property is valid.
3091
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-bundleDependencies.md
3203
+ * Enforce that the `browser` property is valid.
3204
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-browser
3205
+ */
3206
+ 'package-json/valid-browser'?: Linter.RuleEntry<[]>;
3207
+ /**
3208
+ * Enforce that the `bugs` property is valid.
3209
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-bugs
3210
+ */
3211
+ 'package-json/valid-bugs'?: Linter.RuleEntry<[]>;
3212
+ /**
3213
+ * Enforce that the `bundleDependencies` (also `bundledDependencies`) property is valid.
3214
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-bundleDependencies
3092
3215
  */
3093
3216
  'package-json/valid-bundleDependencies'?: Linter.RuleEntry<[]>;
3094
3217
  /**
3095
3218
  * Enforce that the `config` property is valid.
3096
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-config.md
3219
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-config
3097
3220
  */
3098
3221
  'package-json/valid-config'?: Linter.RuleEntry<[]>;
3099
3222
  /**
3100
3223
  * Enforce that the `contributors` property is valid.
3101
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-contributors.md
3224
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-contributors
3102
3225
  */
3103
3226
  'package-json/valid-contributors'?: Linter.RuleEntry<[]>;
3104
3227
  /**
3105
3228
  * Enforce that the `cpu` property is valid.
3106
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-cpu.md
3229
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-cpu
3107
3230
  */
3108
3231
  'package-json/valid-cpu'?: Linter.RuleEntry<[]>;
3109
3232
  /**
3110
3233
  * Enforce that the `dependencies` property is valid.
3111
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-dependencies.md
3234
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-dependencies
3112
3235
  */
3113
3236
  'package-json/valid-dependencies'?: Linter.RuleEntry<[]>;
3114
3237
  /**
3115
3238
  * Enforce that the `description` property is valid.
3116
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-description.md
3239
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-description
3117
3240
  */
3118
3241
  'package-json/valid-description'?: Linter.RuleEntry<[]>;
3119
3242
  /**
3120
3243
  * Enforce that the `devDependencies` property is valid.
3121
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-devDependencies.md
3244
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-devDependencies
3122
3245
  */
3123
3246
  'package-json/valid-devDependencies'?: Linter.RuleEntry<[]>;
3247
+ /**
3248
+ * Enforce that the `devEngines` property is valid.
3249
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-devEngines
3250
+ */
3251
+ 'package-json/valid-devEngines'?: Linter.RuleEntry<[]>;
3124
3252
  /**
3125
3253
  * Enforce that the `directories` property is valid.
3126
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-directories.md
3254
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-directories
3127
3255
  */
3128
3256
  'package-json/valid-directories'?: Linter.RuleEntry<[]>;
3129
3257
  /**
3130
3258
  * Enforce that the `engines` property is valid.
3131
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-engines.md
3259
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-engines
3132
3260
  */
3133
3261
  'package-json/valid-engines'?: Linter.RuleEntry<[]>;
3134
3262
  /**
3135
3263
  * Enforce that the `exports` property is valid.
3136
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-exports.md
3264
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-exports
3137
3265
  */
3138
3266
  'package-json/valid-exports'?: Linter.RuleEntry<[]>;
3139
3267
  /**
3140
3268
  * Enforce that the `files` property is valid.
3141
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-files.md
3269
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-files
3142
3270
  */
3143
3271
  'package-json/valid-files'?: Linter.RuleEntry<[]>;
3272
+ /**
3273
+ * Enforce that the `funding` property is valid.
3274
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-funding
3275
+ */
3276
+ 'package-json/valid-funding'?: Linter.RuleEntry<[]>;
3277
+ /**
3278
+ * Enforce that the `gypfile` property is valid.
3279
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-gypfile
3280
+ */
3281
+ 'package-json/valid-gypfile'?: Linter.RuleEntry<[]>;
3144
3282
  /**
3145
3283
  * Enforce that the `homepage` property is valid.
3146
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-homepage.md
3284
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-homepage
3147
3285
  */
3148
3286
  'package-json/valid-homepage'?: Linter.RuleEntry<[]>;
3149
3287
  /**
3150
3288
  * Enforce that the `keywords` property is valid.
3151
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-keywords.md
3289
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-keywords
3152
3290
  */
3153
3291
  'package-json/valid-keywords'?: Linter.RuleEntry<[]>;
3292
+ /**
3293
+ * Enforce that the `libc` property is valid.
3294
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-libc
3295
+ */
3296
+ 'package-json/valid-libc'?: Linter.RuleEntry<[]>;
3154
3297
  /**
3155
3298
  * Enforce that the `license` property is valid.
3156
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-license.md
3299
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-license
3157
3300
  */
3158
3301
  'package-json/valid-license'?: Linter.RuleEntry<[]>;
3159
3302
  /**
3160
3303
  * Enforce that the `main` property is valid.
3161
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-main.md
3304
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-main
3162
3305
  */
3163
3306
  'package-json/valid-main'?: Linter.RuleEntry<[]>;
3164
3307
  /**
3165
3308
  * Enforce that the `man` property is valid.
3166
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-man.md
3309
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-man
3167
3310
  */
3168
3311
  'package-json/valid-man'?: Linter.RuleEntry<[]>;
3169
3312
  /**
3170
3313
  * Enforce that the `module` property is valid.
3171
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-module.md
3314
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-module
3172
3315
  */
3173
3316
  'package-json/valid-module'?: Linter.RuleEntry<[]>;
3174
3317
  /**
3175
- * Enforce that package names are valid npm package names
3176
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-name.md
3318
+ * Enforce that the `name` property is valid.
3319
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-name
3177
3320
  */
3178
3321
  'package-json/valid-name'?: Linter.RuleEntry<[]>;
3179
3322
  /**
3180
3323
  * Enforce that the `optionalDependencies` property is valid.
3181
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-optionalDependencies.md
3324
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-optionalDependencies
3182
3325
  */
3183
3326
  'package-json/valid-optionalDependencies'?: Linter.RuleEntry<[]>;
3184
3327
  /**
3185
3328
  * Enforce that the `os` property is valid.
3186
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-os.md
3329
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-os
3187
3330
  */
3188
3331
  'package-json/valid-os'?: Linter.RuleEntry<[]>;
3189
3332
  /**
3190
- * Enforce that package.json has all properties required by the npm spec
3191
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-package-definition.md
3192
- * @deprecated
3333
+ * Enforce that the `packageManager` property is valid.
3334
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-packageManager
3193
3335
  */
3194
- 'package-json/valid-package-definition'?: Linter.RuleEntry<PackageJsonValidPackageDefinition>;
3336
+ 'package-json/valid-packageManager'?: Linter.RuleEntry<[]>;
3195
3337
  /**
3196
3338
  * Enforce that the `peerDependencies` property is valid.
3197
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-peerDependencies.md
3339
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-peerDependencies
3198
3340
  */
3199
3341
  'package-json/valid-peerDependencies'?: Linter.RuleEntry<[]>;
3342
+ /**
3343
+ * Enforce that the `peerDependenciesMeta` property is valid.
3344
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-peerDependenciesMeta
3345
+ */
3346
+ 'package-json/valid-peerDependenciesMeta'?: Linter.RuleEntry<[]>;
3347
+ /**
3348
+ * Enforces that any dependencies declared in `peerDependenciesMeta` are also defined in the package's `peerDependencies`.
3349
+ * @see https://eslint-plugin-package-json.dev/rules/valid-peerDependenciesMeta-relationship
3350
+ */
3351
+ 'package-json/valid-peerDependenciesMeta-relationship'?: Linter.RuleEntry<[]>;
3200
3352
  /**
3201
3353
  * Enforce that the `private` property is valid.
3202
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-private.md
3354
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-private
3203
3355
  */
3204
3356
  'package-json/valid-private'?: Linter.RuleEntry<[]>;
3205
3357
  /**
3206
3358
  * Enforce that the `publishConfig` property is valid.
3207
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-publishConfig.md
3359
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-publishConfig
3208
3360
  */
3209
3361
  'package-json/valid-publishConfig'?: Linter.RuleEntry<[]>;
3210
3362
  /**
3211
3363
  * Enforce that the `repository` property is valid.
3212
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-repository.md
3364
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-repository
3213
3365
  */
3214
3366
  'package-json/valid-repository'?: Linter.RuleEntry<[]>;
3215
3367
  /**
3216
3368
  * Enforce that if repository directory is specified, it matches the path to the package.json file
3217
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-repository-directory.md
3369
+ * @see https://eslint-plugin-package-json.dev/rules/valid-repository-directory
3218
3370
  */
3219
3371
  'package-json/valid-repository-directory'?: Linter.RuleEntry<[]>;
3220
3372
  /**
3221
3373
  * Enforce that the `scripts` property is valid.
3222
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-scripts.md
3374
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-scripts
3223
3375
  */
3224
3376
  'package-json/valid-scripts'?: Linter.RuleEntry<[]>;
3225
3377
  /**
3226
3378
  * Enforce that the `sideEffects` property is valid.
3227
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-sideEffects.md
3379
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-sideEffects
3228
3380
  */
3229
3381
  'package-json/valid-sideEffects'?: Linter.RuleEntry<[]>;
3230
3382
  /**
3231
3383
  * Enforce that the `type` property is valid.
3232
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-type.md
3384
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-type
3233
3385
  */
3234
3386
  'package-json/valid-type'?: Linter.RuleEntry<[]>;
3235
3387
  /**
3236
- * Enforce that package versions are valid semver specifiers
3237
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-version.md
3388
+ * Enforce that the `version` property is valid.
3389
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-version
3238
3390
  */
3239
3391
  'package-json/valid-version'?: Linter.RuleEntry<[]>;
3240
3392
  /**
3241
3393
  * Enforce that the `workspaces` property is valid.
3242
- * @see https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/blob/HEAD/docs/rules/valid-workspaces.md
3394
+ * @see https://eslint-plugin-package-json.dev/rules/valid-properties/valid-workspaces
3243
3395
  */
3244
3396
  'package-json/valid-workspaces'?: Linter.RuleEntry<[]>;
3245
3397
  /**
@@ -6145,357 +6297,357 @@ interface RuleOptions {
6145
6297
  'template-tag-spacing'?: Linter.RuleEntry<TemplateTagSpacing>;
6146
6298
  /**
6147
6299
  * Enforce `test` and `it` usage conventions
6148
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/consistent-test-it.md
6300
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/consistent-test-it.md
6149
6301
  */
6150
6302
  'test/consistent-test-it'?: Linter.RuleEntry<TestConsistentTestIt>;
6151
6303
  /**
6152
6304
  * Enforce assertion to be made in a test body
6153
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/expect-expect.md
6305
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/expect-expect.md
6154
6306
  */
6155
6307
  'test/expect-expect'?: Linter.RuleEntry<TestExpectExpect>;
6156
6308
  /**
6157
6309
  * Enforces a maximum number assertion calls in a test body
6158
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/max-expects.md
6310
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/max-expects.md
6159
6311
  */
6160
6312
  'test/max-expects'?: Linter.RuleEntry<TestMaxExpects>;
6161
6313
  /**
6162
6314
  * Enforces a maximum depth to nested describe calls
6163
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/max-nested-describe.md
6315
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/max-nested-describe.md
6164
6316
  */
6165
6317
  'test/max-nested-describe'?: Linter.RuleEntry<TestMaxNestedDescribe>;
6166
6318
  /**
6167
6319
  * Disallow alias methods
6168
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-alias-methods.md
6320
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-alias-methods.md
6169
6321
  */
6170
6322
  'test/no-alias-methods'?: Linter.RuleEntry<[]>;
6171
6323
  /**
6172
6324
  * Disallow commented out tests
6173
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-commented-out-tests.md
6325
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-commented-out-tests.md
6174
6326
  */
6175
6327
  'test/no-commented-out-tests'?: Linter.RuleEntry<[]>;
6176
6328
  /**
6177
6329
  * Disallow calling `expect` conditionally
6178
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-conditional-expect.md
6330
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-conditional-expect.md
6179
6331
  */
6180
6332
  'test/no-conditional-expect'?: Linter.RuleEntry<[]>;
6181
6333
  /**
6182
6334
  * Disallow conditional logic in tests
6183
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-conditional-in-test.md
6335
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-conditional-in-test.md
6184
6336
  */
6185
6337
  'test/no-conditional-in-test'?: Linter.RuleEntry<TestNoConditionalInTest>;
6186
6338
  /**
6187
6339
  * Disallow confusing usages of jest.setTimeout
6188
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-confusing-set-timeout.md
6340
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-confusing-set-timeout.md
6189
6341
  */
6190
6342
  'test/no-confusing-set-timeout'?: Linter.RuleEntry<[]>;
6191
6343
  /**
6192
6344
  * Disallow use of deprecated functions
6193
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-deprecated-functions.md
6345
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-deprecated-functions.md
6194
6346
  */
6195
6347
  'test/no-deprecated-functions'?: Linter.RuleEntry<[]>;
6196
6348
  /**
6197
6349
  * Disallow disabled tests
6198
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-disabled-tests.md
6350
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-disabled-tests.md
6199
6351
  */
6200
6352
  'test/no-disabled-tests'?: Linter.RuleEntry<[]>;
6201
6353
  /**
6202
6354
  * Disallow using a callback in asynchronous tests and hooks
6203
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-done-callback.md
6355
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-done-callback.md
6204
6356
  */
6205
6357
  'test/no-done-callback'?: Linter.RuleEntry<[]>;
6206
6358
  /**
6207
6359
  * Disallow duplicate setup and teardown hooks
6208
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-duplicate-hooks.md
6360
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-duplicate-hooks.md
6209
6361
  */
6210
6362
  'test/no-duplicate-hooks'?: Linter.RuleEntry<[]>;
6211
6363
  /**
6212
6364
  * Disallow using equality matchers on error types
6213
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-error-equal.md
6365
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-error-equal.md
6214
6366
  */
6215
6367
  'test/no-error-equal'?: Linter.RuleEntry<[]>;
6216
6368
  /**
6217
6369
  * Disallow using `exports` in files containing tests
6218
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-export.md
6370
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-export.md
6219
6371
  */
6220
6372
  'test/no-export'?: Linter.RuleEntry<[]>;
6221
6373
  /**
6222
6374
  * Disallow focused tests
6223
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-focused-tests.md
6375
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-focused-tests.md
6224
6376
  */
6225
6377
  'test/no-focused-tests'?: Linter.RuleEntry<[]>;
6226
6378
  /**
6227
6379
  * Disallow setup and teardown hooks
6228
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-hooks.md
6380
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-hooks.md
6229
6381
  */
6230
6382
  'test/no-hooks'?: Linter.RuleEntry<TestNoHooks>;
6231
6383
  /**
6232
6384
  * Disallow identical titles
6233
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-identical-title.md
6385
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-identical-title.md
6234
6386
  */
6235
6387
  'test/no-identical-title'?: Linter.RuleEntry<[]>;
6236
6388
  /**
6237
6389
  * Disallow string interpolation inside snapshots
6238
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-interpolation-in-snapshots.md
6390
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-interpolation-in-snapshots.md
6239
6391
  */
6240
6392
  'test/no-interpolation-in-snapshots'?: Linter.RuleEntry<[]>;
6241
6393
  /**
6242
6394
  * Disallow Jasmine globals
6243
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-jasmine-globals.md
6395
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-jasmine-globals.md
6244
6396
  */
6245
6397
  'test/no-jasmine-globals'?: Linter.RuleEntry<[]>;
6246
6398
  /**
6247
6399
  * Disallow large snapshots
6248
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-large-snapshots.md
6400
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-large-snapshots.md
6249
6401
  */
6250
6402
  'test/no-large-snapshots'?: Linter.RuleEntry<TestNoLargeSnapshots>;
6251
6403
  /**
6252
6404
  * Disallow manually importing from `__mocks__`
6253
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-mocks-import.md
6405
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-mocks-import.md
6254
6406
  */
6255
6407
  'test/no-mocks-import'?: Linter.RuleEntry<[]>;
6256
6408
  /**
6257
6409
  * Disallow specific `jest.` methods
6258
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-restricted-jest-methods.md
6410
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-restricted-jest-methods.md
6259
6411
  */
6260
6412
  'test/no-restricted-jest-methods'?: Linter.RuleEntry<TestNoRestrictedJestMethods>;
6261
6413
  /**
6262
6414
  * Disallow specific matchers & modifiers
6263
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-restricted-matchers.md
6415
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-restricted-matchers.md
6264
6416
  */
6265
6417
  'test/no-restricted-matchers'?: Linter.RuleEntry<TestNoRestrictedMatchers>;
6266
6418
  /**
6267
6419
  * Disallow using `expect` outside of `it` or `test` blocks
6268
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-standalone-expect.md
6420
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-standalone-expect.md
6269
6421
  */
6270
6422
  'test/no-standalone-expect'?: Linter.RuleEntry<TestNoStandaloneExpect>;
6271
6423
  /**
6272
6424
  * Require using `.only` and `.skip` over `f` and `x`
6273
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-test-prefixes.md
6425
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-test-prefixes.md
6274
6426
  */
6275
6427
  'test/no-test-prefixes'?: Linter.RuleEntry<[]>;
6276
6428
  /**
6277
6429
  * Disallow explicitly returning from tests
6278
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-test-return-statement.md
6430
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-test-return-statement.md
6279
6431
  */
6280
6432
  'test/no-test-return-statement'?: Linter.RuleEntry<[]>;
6281
6433
  /**
6282
6434
  * Disallow unnecessary assertions based on types
6283
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-unnecessary-assertion.md
6435
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-unnecessary-assertion.md
6284
6436
  */
6285
6437
  'test/no-unnecessary-assertion'?: Linter.RuleEntry<[]>;
6286
6438
  /**
6287
6439
  * Disallow unnecessary async function wrapper for expected promises
6288
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-unneeded-async-expect-function.md
6440
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-unneeded-async-expect-function.md
6289
6441
  */
6290
6442
  'test/no-unneeded-async-expect-function'?: Linter.RuleEntry<[]>;
6291
6443
  /**
6292
6444
  * Disallow using `jest.mock()` factories without an explicit type parameter
6293
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/no-untyped-mock-factory.md
6445
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/no-untyped-mock-factory.md
6294
6446
  */
6295
6447
  'test/no-untyped-mock-factory'?: Linter.RuleEntry<[]>;
6296
6448
  /**
6297
6449
  * Enforce padding around `afterAll` blocks
6298
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/padding-around-after-all-blocks.md
6450
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/padding-around-after-all-blocks.md
6299
6451
  */
6300
6452
  'test/padding-around-after-all-blocks'?: Linter.RuleEntry<[]>;
6301
6453
  /**
6302
6454
  * Enforce padding around `afterEach` blocks
6303
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/padding-around-after-each-blocks.md
6455
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/padding-around-after-each-blocks.md
6304
6456
  */
6305
6457
  'test/padding-around-after-each-blocks'?: Linter.RuleEntry<[]>;
6306
6458
  /**
6307
6459
  * Enforce padding around Jest functions
6308
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/padding-around-all.md
6460
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/padding-around-all.md
6309
6461
  */
6310
6462
  'test/padding-around-all'?: Linter.RuleEntry<[]>;
6311
6463
  /**
6312
6464
  * Enforce padding around `beforeAll` blocks
6313
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/padding-around-before-all-blocks.md
6465
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/padding-around-before-all-blocks.md
6314
6466
  */
6315
6467
  'test/padding-around-before-all-blocks'?: Linter.RuleEntry<[]>;
6316
6468
  /**
6317
6469
  * Enforce padding around `beforeEach` blocks
6318
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/padding-around-before-each-blocks.md
6470
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/padding-around-before-each-blocks.md
6319
6471
  */
6320
6472
  'test/padding-around-before-each-blocks'?: Linter.RuleEntry<[]>;
6321
6473
  /**
6322
6474
  * Enforce padding around `describe` blocks
6323
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/padding-around-describe-blocks.md
6475
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/padding-around-describe-blocks.md
6324
6476
  */
6325
6477
  'test/padding-around-describe-blocks'?: Linter.RuleEntry<[]>;
6326
6478
  /**
6327
6479
  * Enforce padding around `expect` groups
6328
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/padding-around-expect-groups.md
6480
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/padding-around-expect-groups.md
6329
6481
  */
6330
6482
  'test/padding-around-expect-groups'?: Linter.RuleEntry<[]>;
6331
6483
  /**
6332
6484
  * Enforce padding around `test` and `it` blocks
6333
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/padding-around-test-blocks.md
6485
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/padding-around-test-blocks.md
6334
6486
  */
6335
6487
  'test/padding-around-test-blocks'?: Linter.RuleEntry<[]>;
6336
6488
  /**
6337
6489
  * Suggest using `toHaveBeenCalledWith()`
6338
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-called-with.md
6490
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-called-with.md
6339
6491
  */
6340
6492
  'test/prefer-called-with'?: Linter.RuleEntry<[]>;
6341
6493
  /**
6342
6494
  * Suggest using the built-in comparison matchers
6343
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-comparison-matcher.md
6495
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-comparison-matcher.md
6344
6496
  */
6345
6497
  'test/prefer-comparison-matcher'?: Linter.RuleEntry<[]>;
6346
6498
  /**
6347
6499
  * Prefer using `.each` rather than manual loops
6348
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-each.md
6500
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-each.md
6349
6501
  */
6350
6502
  'test/prefer-each'?: Linter.RuleEntry<[]>;
6351
6503
  /**
6352
6504
  * Prefer having the last statement in a test be an assertion
6353
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-ending-with-an-expect.md
6505
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-ending-with-an-expect.md
6354
6506
  */
6355
6507
  'test/prefer-ending-with-an-expect'?: Linter.RuleEntry<TestPreferEndingWithAnExpect>;
6356
6508
  /**
6357
6509
  * Suggest using the built-in equality matchers
6358
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-equality-matcher.md
6510
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-equality-matcher.md
6359
6511
  */
6360
6512
  'test/prefer-equality-matcher'?: Linter.RuleEntry<[]>;
6361
6513
  /**
6362
6514
  * Suggest using `expect.assertions()` OR `expect.hasAssertions()`
6363
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-expect-assertions.md
6515
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-expect-assertions.md
6364
6516
  */
6365
6517
  'test/prefer-expect-assertions'?: Linter.RuleEntry<TestPreferExpectAssertions>;
6366
6518
  /**
6367
6519
  * Prefer `await expect(...).resolves` over `expect(await ...)` syntax
6368
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-expect-resolves.md
6520
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-expect-resolves.md
6369
6521
  */
6370
6522
  'test/prefer-expect-resolves'?: Linter.RuleEntry<[]>;
6371
6523
  /**
6372
6524
  * Prefer having hooks in a consistent order
6373
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-hooks-in-order.md
6525
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-hooks-in-order.md
6374
6526
  */
6375
6527
  'test/prefer-hooks-in-order'?: Linter.RuleEntry<[]>;
6376
6528
  /**
6377
6529
  * Suggest having hooks before any test cases
6378
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-hooks-on-top.md
6530
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-hooks-on-top.md
6379
6531
  */
6380
6532
  'test/prefer-hooks-on-top'?: Linter.RuleEntry<[]>;
6381
6533
  /**
6382
6534
  * Prefer importing Jest globals
6383
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-importing-jest-globals.md
6535
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-importing-jest-globals.md
6384
6536
  */
6385
6537
  'test/prefer-importing-jest-globals'?: Linter.RuleEntry<TestPreferImportingJestGlobals>;
6386
6538
  /**
6387
6539
  * Prefer `jest.mocked()` over `fn as jest.Mock`
6388
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-jest-mocked.md
6540
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-jest-mocked.md
6389
6541
  */
6390
6542
  'test/prefer-jest-mocked'?: Linter.RuleEntry<[]>;
6391
6543
  /**
6392
6544
  * Enforce lowercase test names
6393
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-lowercase-title.md
6545
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-lowercase-title.md
6394
6546
  */
6395
6547
  'test/prefer-lowercase-title'?: Linter.RuleEntry<TestPreferLowercaseTitle>;
6396
6548
  /**
6397
6549
  * Prefer mock resolved/rejected shorthands for promises
6398
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-mock-promise-shorthand.md
6550
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-mock-promise-shorthand.md
6399
6551
  */
6400
6552
  'test/prefer-mock-promise-shorthand'?: Linter.RuleEntry<[]>;
6401
6553
  /**
6402
6554
  * Prefer mock return shorthands
6403
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-mock-return-shorthand.md
6555
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-mock-return-shorthand.md
6404
6556
  */
6405
6557
  'test/prefer-mock-return-shorthand'?: Linter.RuleEntry<[]>;
6406
6558
  /**
6407
6559
  * Prefer including a hint with external snapshots
6408
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-snapshot-hint.md
6560
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-snapshot-hint.md
6409
6561
  */
6410
6562
  'test/prefer-snapshot-hint'?: Linter.RuleEntry<TestPreferSnapshotHint>;
6411
6563
  /**
6412
6564
  * Suggest using `jest.spyOn()`
6413
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-spy-on.md
6565
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-spy-on.md
6414
6566
  */
6415
6567
  'test/prefer-spy-on'?: Linter.RuleEntry<[]>;
6416
6568
  /**
6417
6569
  * Suggest using `toStrictEqual()`
6418
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-strict-equal.md
6570
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-strict-equal.md
6419
6571
  */
6420
6572
  'test/prefer-strict-equal'?: Linter.RuleEntry<[]>;
6421
6573
  /**
6422
6574
  * Suggest using `toBe()` for primitive literals
6423
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-to-be.md
6575
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-to-be.md
6424
6576
  */
6425
6577
  'test/prefer-to-be'?: Linter.RuleEntry<[]>;
6426
6578
  /**
6427
6579
  * Suggest using `toContain()`
6428
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-to-contain.md
6580
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-to-contain.md
6429
6581
  */
6430
6582
  'test/prefer-to-contain'?: Linter.RuleEntry<[]>;
6431
6583
  /**
6432
6584
  * Suggest using `toHaveBeenCalled`
6433
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-to-have-been-called.md
6585
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-to-have-been-called.md
6434
6586
  */
6435
6587
  'test/prefer-to-have-been-called'?: Linter.RuleEntry<[]>;
6436
6588
  /**
6437
6589
  * Suggest using `toHaveBeenCalledTimes()`
6438
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-to-have-been-called-times.md
6590
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-to-have-been-called-times.md
6439
6591
  */
6440
6592
  'test/prefer-to-have-been-called-times'?: Linter.RuleEntry<[]>;
6441
6593
  /**
6442
6594
  * Suggest using `toHaveLength()`
6443
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-to-have-length.md
6595
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-to-have-length.md
6444
6596
  */
6445
6597
  'test/prefer-to-have-length'?: Linter.RuleEntry<[]>;
6446
6598
  /**
6447
6599
  * Suggest using `test.todo`
6448
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/prefer-todo.md
6600
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/prefer-todo.md
6449
6601
  */
6450
6602
  'test/prefer-todo'?: Linter.RuleEntry<[]>;
6451
6603
  /**
6452
6604
  * Require setup and teardown code to be within a hook
6453
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/require-hook.md
6605
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/require-hook.md
6454
6606
  */
6455
6607
  'test/require-hook'?: Linter.RuleEntry<TestRequireHook>;
6456
6608
  /**
6457
6609
  * Require a message for `toThrow()`
6458
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/require-to-throw-message.md
6610
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/require-to-throw-message.md
6459
6611
  */
6460
6612
  'test/require-to-throw-message'?: Linter.RuleEntry<[]>;
6461
6613
  /**
6462
6614
  * Require test cases and hooks to be inside a `describe` block
6463
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/require-top-level-describe.md
6615
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/require-top-level-describe.md
6464
6616
  */
6465
6617
  'test/require-top-level-describe'?: Linter.RuleEntry<TestRequireTopLevelDescribe>;
6466
6618
  /**
6467
6619
  * Enforce unbound methods are called with their expected scope
6468
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/unbound-method.md
6620
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/unbound-method.md
6469
6621
  */
6470
6622
  'test/unbound-method'?: Linter.RuleEntry<TestUnboundMethod>;
6471
6623
  /**
6472
6624
  * Enforce valid `describe()` callback
6473
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/valid-describe-callback.md
6625
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/valid-describe-callback.md
6474
6626
  */
6475
6627
  'test/valid-describe-callback'?: Linter.RuleEntry<[]>;
6476
6628
  /**
6477
6629
  * Enforce valid `expect()` usage
6478
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/valid-expect.md
6630
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/valid-expect.md
6479
6631
  */
6480
6632
  'test/valid-expect'?: Linter.RuleEntry<TestValidExpect>;
6481
6633
  /**
6482
6634
  * Require promises that have expectations in their chain to be valid
6483
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/valid-expect-in-promise.md
6635
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/valid-expect-in-promise.md
6484
6636
  */
6485
6637
  'test/valid-expect-in-promise'?: Linter.RuleEntry<[]>;
6486
6638
  /**
6487
6639
  * Require that `resolve` and `reject` modifiers are present (and only) for promise-like types
6488
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/valid-expect-with-promise.md
6640
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/valid-expect-with-promise.md
6489
6641
  */
6490
6642
  'test/valid-expect-with-promise'?: Linter.RuleEntry<[]>;
6491
6643
  /**
6492
6644
  * Disallow mocking of non-existing module paths
6493
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/valid-mock-module-path.md
6645
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/valid-mock-module-path.md
6494
6646
  */
6495
6647
  'test/valid-mock-module-path'?: Linter.RuleEntry<TestValidMockModulePath>;
6496
6648
  /**
6497
6649
  * Enforce valid titles
6498
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.0/docs/rules/valid-title.md
6650
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.2/docs/rules/valid-title.md
6499
6651
  */
6500
6652
  'test/valid-title'?: Linter.RuleEntry<TestValidTitle>;
6501
6653
  /**
@@ -8286,7 +8438,7 @@ interface RuleOptions {
8286
8438
  */
8287
8439
  'vitest/prefer-expect-resolves'?: Linter.RuleEntry<[]>;
8288
8440
  /**
8289
- * enforce using `expectTypeOf` instead of `expect(typeof ...)`
8441
+ * enforce using `expect(...).toBeTypeOf(...)` instead of `expect(typeof ...).toBe(...)`
8290
8442
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-expect-type-of.md
8291
8443
  */
8292
8444
  'vitest/prefer-expect-type-of'?: Linter.RuleEntry<[]>;
@@ -8425,6 +8577,11 @@ interface RuleOptions {
8425
8577
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-top-level-describe.md
8426
8578
  */
8427
8579
  'vitest/require-top-level-describe'?: Linter.RuleEntry<VitestRequireTopLevelDescribe>;
8580
+ /**
8581
+ * enforce unbound methods are called with their expected scope
8582
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/unbound-method.md
8583
+ */
8584
+ 'vitest/unbound-method'?: Linter.RuleEntry<VitestUnboundMethod>;
8428
8585
  /**
8429
8586
  * enforce valid describe callback
8430
8587
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-describe-callback.md
@@ -11786,15 +11943,28 @@ type OxfmtOxfmt = [] | [{
11786
11943
  htmlWhitespaceSensitivity?: ("css" | "ignore" | "strict");
11787
11944
  ignorePatterns?: string[];
11788
11945
  insertFinalNewline?: boolean;
11946
+ jsdoc?: (boolean | {
11947
+ addDefaultToDescription?: boolean;
11948
+ bracketSpacing?: boolean;
11949
+ capitalizeDescriptions?: boolean;
11950
+ commentLineStrategy?: ("singleLine" | "multiline" | "keep");
11951
+ descriptionTag?: boolean;
11952
+ descriptionWithDot?: boolean;
11953
+ keepUnparsableExampleIndent?: boolean;
11954
+ lineWrappingStyle?: ("greedy" | "balance");
11955
+ preferCodeFences?: boolean;
11956
+ separateReturnsFromParam?: boolean;
11957
+ separateTagGroups?: boolean;
11958
+ });
11789
11959
  jsxSingleQuote?: boolean;
11790
- objectWrap?: ("preserve" | "collapse" | "always");
11960
+ objectWrap?: ("preserve" | "collapse");
11791
11961
  printWidth?: number;
11792
11962
  proseWrap?: ("always" | "never" | "preserve");
11793
11963
  quoteProps?: ("as-needed" | "consistent" | "preserve");
11794
11964
  semi?: boolean;
11795
11965
  singleAttributePerLine?: boolean;
11796
11966
  singleQuote?: boolean;
11797
- sortImports?: {
11967
+ sortImports?: (boolean | {
11798
11968
  customGroups?: {
11799
11969
  elementNamePattern?: string[];
11800
11970
  groupName?: string;
@@ -11811,24 +11981,37 @@ type OxfmtOxfmt = [] | [{
11811
11981
  partitionByComment?: boolean;
11812
11982
  partitionByNewline?: boolean;
11813
11983
  sortSideEffects?: boolean;
11814
- };
11984
+ });
11815
11985
  sortPackageJson?: (boolean | {
11816
11986
  sortScripts?: boolean;
11817
11987
  });
11818
- sortTailwindcss?: {
11988
+ sortTailwindcss?: (boolean | {
11819
11989
  attributes?: string[];
11820
11990
  config?: string;
11821
11991
  functions?: string[];
11822
11992
  preserveDuplicates?: boolean;
11823
11993
  preserveWhitespace?: boolean;
11824
11994
  stylesheet?: string;
11825
- };
11995
+ });
11996
+ svelte?: (boolean | {
11997
+ allowShorthand?: boolean;
11998
+ indentScriptAndStyle?: boolean;
11999
+ sortOrder?: string;
12000
+ });
11826
12001
  tabWidth?: number;
11827
12002
  trailingComma?: ("all" | "es5" | "none");
11828
12003
  useTabs?: boolean;
11829
12004
  vueIndentScriptAndStyle?: boolean;
11830
12005
  configPath?: string;
12006
+ disableNestedConfig?: boolean;
12007
+ editorconfig?: (boolean | {
12008
+ cwd?: string;
12009
+ onlyCwd?: boolean;
12010
+ });
12011
+ ignorePath?: (string | string[]);
12012
+ respectOxfmtDefaultIgnores?: boolean;
11831
12013
  useConfig?: boolean;
12014
+ withNodeModules?: boolean;
11832
12015
  overrides?: {
11833
12016
  excludeFiles?: string[];
11834
12017
  files: string[];
@@ -11841,15 +12024,28 @@ type OxfmtOxfmt = [] | [{
11841
12024
  htmlWhitespaceSensitivity?: ("css" | "ignore" | "strict");
11842
12025
  ignorePatterns?: string[];
11843
12026
  insertFinalNewline?: boolean;
12027
+ jsdoc?: (boolean | {
12028
+ addDefaultToDescription?: boolean;
12029
+ bracketSpacing?: boolean;
12030
+ capitalizeDescriptions?: boolean;
12031
+ commentLineStrategy?: ("singleLine" | "multiline" | "keep");
12032
+ descriptionTag?: boolean;
12033
+ descriptionWithDot?: boolean;
12034
+ keepUnparsableExampleIndent?: boolean;
12035
+ lineWrappingStyle?: ("greedy" | "balance");
12036
+ preferCodeFences?: boolean;
12037
+ separateReturnsFromParam?: boolean;
12038
+ separateTagGroups?: boolean;
12039
+ });
11844
12040
  jsxSingleQuote?: boolean;
11845
- objectWrap?: ("preserve" | "collapse" | "always");
12041
+ objectWrap?: ("preserve" | "collapse");
11846
12042
  printWidth?: number;
11847
12043
  proseWrap?: ("always" | "never" | "preserve");
11848
12044
  quoteProps?: ("as-needed" | "consistent" | "preserve");
11849
12045
  semi?: boolean;
11850
12046
  singleAttributePerLine?: boolean;
11851
12047
  singleQuote?: boolean;
11852
- sortImports?: {
12048
+ sortImports?: (boolean | {
11853
12049
  customGroups?: {
11854
12050
  elementNamePattern?: string[];
11855
12051
  groupName?: string;
@@ -11866,18 +12062,23 @@ type OxfmtOxfmt = [] | [{
11866
12062
  partitionByComment?: boolean;
11867
12063
  partitionByNewline?: boolean;
11868
12064
  sortSideEffects?: boolean;
11869
- };
12065
+ });
11870
12066
  sortPackageJson?: (boolean | {
11871
12067
  sortScripts?: boolean;
11872
12068
  });
11873
- sortTailwindcss?: {
12069
+ sortTailwindcss?: (boolean | {
11874
12070
  attributes?: string[];
11875
12071
  config?: string;
11876
12072
  functions?: string[];
11877
12073
  preserveDuplicates?: boolean;
11878
12074
  preserveWhitespace?: boolean;
11879
12075
  stylesheet?: string;
11880
- };
12076
+ });
12077
+ svelte?: (boolean | {
12078
+ allowShorthand?: boolean;
12079
+ indentScriptAndStyle?: boolean;
12080
+ sortOrder?: string;
12081
+ });
11881
12082
  tabWidth?: number;
11882
12083
  trailingComma?: ("all" | "es5" | "none");
11883
12084
  useTabs?: boolean;
@@ -11892,7 +12093,7 @@ type PackageJsonNoEmptyFields = [] | [{
11892
12093
  ignoreProperties?: string[];
11893
12094
  }]; // ----- package-json/order-properties -----
11894
12095
  type PackageJsonOrderProperties = [] | [{
11895
- order?: (("legacy" | "sort-package-json") | string[]);
12096
+ order?: ("sort-package-json" | string[]);
11896
12097
  }]; // ----- package-json/repository-shorthand -----
11897
12098
  type PackageJsonRepositoryShorthand = [] | [{
11898
12099
  form?: ("object" | "shorthand");
@@ -11903,12 +12104,27 @@ type PackageJsonRequireAttribution = [] | [{
11903
12104
  }]; // ----- package-json/require-author -----
11904
12105
  type PackageJsonRequireAuthor = [] | [{
11905
12106
  ignorePrivate?: boolean;
12107
+ }]; // ----- package-json/require-bin -----
12108
+ type PackageJsonRequireBin = [] | [{
12109
+ ignorePrivate?: boolean;
12110
+ }]; // ----- package-json/require-browser -----
12111
+ type PackageJsonRequireBrowser = [] | [{
12112
+ ignorePrivate?: boolean;
11906
12113
  }]; // ----- package-json/require-bugs -----
11907
12114
  type PackageJsonRequireBugs = [] | [{
11908
12115
  ignorePrivate?: boolean;
11909
12116
  }]; // ----- package-json/require-bundleDependencies -----
11910
12117
  type PackageJsonRequireBundleDependencies = [] | [{
11911
12118
  ignorePrivate?: boolean;
12119
+ }]; // ----- package-json/require-config -----
12120
+ type PackageJsonRequireConfig = [] | [{
12121
+ ignorePrivate?: boolean;
12122
+ }]; // ----- package-json/require-contributors -----
12123
+ type PackageJsonRequireContributors = [] | [{
12124
+ ignorePrivate?: boolean;
12125
+ }]; // ----- package-json/require-cpu -----
12126
+ type PackageJsonRequireCpu = [] | [{
12127
+ ignorePrivate?: boolean;
11912
12128
  }]; // ----- package-json/require-dependencies -----
11913
12129
  type PackageJsonRequireDependencies = [] | [{
11914
12130
  ignorePrivate?: boolean;
@@ -11918,6 +12134,12 @@ type PackageJsonRequireDescription = [] | [{
11918
12134
  }]; // ----- package-json/require-devDependencies -----
11919
12135
  type PackageJsonRequireDevDependencies = [] | [{
11920
12136
  ignorePrivate?: boolean;
12137
+ }]; // ----- package-json/require-devEngines -----
12138
+ type PackageJsonRequireDevEngines = [] | [{
12139
+ ignorePrivate?: boolean;
12140
+ }]; // ----- package-json/require-directories -----
12141
+ type PackageJsonRequireDirectories = [] | [{
12142
+ ignorePrivate?: boolean;
11921
12143
  }]; // ----- package-json/require-engines -----
11922
12144
  type PackageJsonRequireEngines = [] | [{
11923
12145
  ignorePrivate?: boolean;
@@ -11927,24 +12149,54 @@ type PackageJsonRequireExports = [] | [{
11927
12149
  }]; // ----- package-json/require-files -----
11928
12150
  type PackageJsonRequireFiles = [] | [{
11929
12151
  ignorePrivate?: boolean;
12152
+ }]; // ----- package-json/require-funding -----
12153
+ type PackageJsonRequireFunding = [] | [{
12154
+ ignorePrivate?: boolean;
12155
+ }]; // ----- package-json/require-gypfile -----
12156
+ type PackageJsonRequireGypfile = [] | [{
12157
+ ignorePrivate?: boolean;
11930
12158
  }]; // ----- package-json/require-homepage -----
11931
12159
  type PackageJsonRequireHomepage = [] | [{
11932
12160
  ignorePrivate?: boolean;
11933
12161
  }]; // ----- package-json/require-keywords -----
11934
12162
  type PackageJsonRequireKeywords = [] | [{
11935
12163
  ignorePrivate?: boolean;
12164
+ }]; // ----- package-json/require-libc -----
12165
+ type PackageJsonRequireLibc = [] | [{
12166
+ ignorePrivate?: boolean;
11936
12167
  }]; // ----- package-json/require-license -----
11937
12168
  type PackageJsonRequireLicense = [] | [{
11938
12169
  ignorePrivate?: boolean;
12170
+ }]; // ----- package-json/require-main -----
12171
+ type PackageJsonRequireMain = [] | [{
12172
+ ignorePrivate?: boolean;
12173
+ }]; // ----- package-json/require-man -----
12174
+ type PackageJsonRequireMan = [] | [{
12175
+ ignorePrivate?: boolean;
12176
+ }]; // ----- package-json/require-module -----
12177
+ type PackageJsonRequireModule = [] | [{
12178
+ ignorePrivate?: boolean;
11939
12179
  }]; // ----- package-json/require-name -----
11940
12180
  type PackageJsonRequireName = [] | [{
11941
12181
  ignorePrivate?: boolean;
11942
12182
  }]; // ----- package-json/require-optionalDependencies -----
11943
12183
  type PackageJsonRequireOptionalDependencies = [] | [{
11944
12184
  ignorePrivate?: boolean;
12185
+ }]; // ----- package-json/require-os -----
12186
+ type PackageJsonRequireOs = [] | [{
12187
+ ignorePrivate?: boolean;
12188
+ }]; // ----- package-json/require-packageManager -----
12189
+ type PackageJsonRequirePackageManager = [] | [{
12190
+ ignorePrivate?: boolean;
11945
12191
  }]; // ----- package-json/require-peerDependencies -----
11946
12192
  type PackageJsonRequirePeerDependencies = [] | [{
11947
12193
  ignorePrivate?: boolean;
12194
+ }]; // ----- package-json/require-peerDependenciesMeta -----
12195
+ type PackageJsonRequirePeerDependenciesMeta = [] | [{
12196
+ ignorePrivate?: boolean;
12197
+ }]; // ----- package-json/require-publishConfig -----
12198
+ type PackageJsonRequirePublishConfig = [] | [{
12199
+ ignorePrivate?: boolean;
11948
12200
  }]; // ----- package-json/require-repository -----
11949
12201
  type PackageJsonRequireRepository = [] | [{
11950
12202
  ignorePrivate?: boolean;
@@ -11977,11 +12229,14 @@ type PackageJsonRestrictDependencyRanges = [] | [({
11977
12229
  }[])]; // ----- package-json/restrict-private-properties -----
11978
12230
  type PackageJsonRestrictPrivateProperties = [] | [{
11979
12231
  blockedProperties?: string[];
12232
+ }]; // ----- package-json/restrict-top-level-properties -----
12233
+ type PackageJsonRestrictTopLevelProperties = [] | [{
12234
+ ban?: (string | {
12235
+ message?: string;
12236
+ property: string;
12237
+ })[];
11980
12238
  }]; // ----- package-json/sort-collections -----
11981
- type PackageJsonSortCollections = [] | [string[]]; // ----- package-json/valid-package-definition -----
11982
- type PackageJsonValidPackageDefinition = [] | [{
11983
- ignoreProperties?: string[];
11984
- }]; // ----- padded-blocks -----
12239
+ type PackageJsonSortCollections = [] | [string[]]; // ----- padded-blocks -----
11985
12240
  type PaddedBlocks = [] | [(("always" | "never") | {
11986
12241
  blocks?: ("always" | "never");
11987
12242
  switches?: ("always" | "never");
@@ -16932,6 +17187,18 @@ type TsPreferOptionalChain = [] | [{
16932
17187
  requireNullish?: boolean;
16933
17188
  }]; // ----- ts/prefer-promise-reject-errors -----
16934
17189
  type TsPreferPromiseRejectErrors = [] | [{
17190
+ allow?: (string | {
17191
+ from: "file";
17192
+ name: (string | [string, ...(string)[]]);
17193
+ path?: string;
17194
+ } | {
17195
+ from: "lib";
17196
+ name: (string | [string, ...(string)[]]);
17197
+ } | {
17198
+ from: "package";
17199
+ name: (string | [string, ...(string)[]]);
17200
+ package: string;
17201
+ })[];
16935
17202
  allowEmptyReject?: boolean;
16936
17203
  allowThrowingAny?: boolean;
16937
17204
  allowThrowingUnknown?: boolean;
@@ -17357,6 +17624,9 @@ type VitestRequireMockTypeParameters = [] | [{
17357
17624
  }]; // ----- vitest/require-top-level-describe -----
17358
17625
  type VitestRequireTopLevelDescribe = [] | [{
17359
17626
  maxNumberOfTopLevelDescribes?: number;
17627
+ }]; // ----- vitest/unbound-method -----
17628
+ type VitestUnboundMethod = [] | [{
17629
+ ignoreStatic?: boolean;
17360
17630
  }]; // ----- vitest/valid-expect -----
17361
17631
  type VitestValidExpect = [] | [{
17362
17632
  alwaysAwait?: boolean;
@@ -17576,12 +17846,6 @@ type Yoda = [] | [("always" | "never")] | [("always" | "never"), {
17576
17846
  }]; // Names of all the configs
17577
17847
  type ConfigNames = 'isentinel/cease-nonsense' | 'isentinel/eslint/comments' | 'isentinel/eslint/comments/src' | 'isentinel/eslint-plugin/setup' | 'isentinel/eslint-plugin/rules' | 'isentinel/flawless/setup' | 'isentinel/flawless/ts/rules-type-aware' | 'isentinel/flawless/tsx/rules-type-aware' | 'isentinel/gitignore' | 'isentinel/ignores' | 'isentinel/imports/rules' | 'isentinel/imports/game' | 'isentinel/javascript/setup' | 'isentinel/javascript/rules' | 'isentinel/jsdoc/setup' | 'isentinel/jsdoc' | 'isentinel/jsonc/setup' | 'isentinel/jsonc/rules' | 'isentinel/markdown/setup' | 'isentinel/markdown/processor' | 'isentinel/markdown/parser' | 'isentinel/markdown/disables' | 'isentinel/node/rules' | 'isentinel/oxfmt/setup' | 'isentinel/oxfmt/javascript' | 'isentinel/oxfmt/typescript' | 'isentinel/oxfmt/css' | 'isentinel/oxfmt/scss' | 'isentinel/oxfmt/less' | 'isentinel/oxfmt/html' | 'isentinel/oxfmt/markdown' | 'isentinel/oxfmt/graphql' | 'isentinel/oxfmt/json' | 'isentinel/oxfmt/yaml' | 'isentinel/package-json/setup' | 'isentinel/package-json' | 'isentinel/perfectionist/setup' | 'isentinel/perfectionist' | 'isentinel/perfectionist/jsx' | 'isentinel/pnpm/setup' | 'isentinel/pnpm/package-json' | 'isentinel/pnpm/pnpm-workspace-yaml' | 'isentinel/promise' | 'isentinel/react/setup' | 'isentinel/react/setup/naming' | 'isentinel/react/rules' | 'isentinel/react/type-aware-rules' | 'isentinel/roblox/setup' | 'isentinel/roblox/parser' | 'isentinel/roblox/type-aware-parser' | 'isentinel/roblox' | 'isentinel/roblox/rules-type-aware' | 'isentinel/roblox/format-lua/setup' | 'isentinel/roblox/format-lua' | 'isentinel/sonarjs' | 'isentinel/spelling/setup' | 'isentinel/spelling' | 'isentinel/stylistic/setup' | 'isentinel/stylistic' | 'isentinel/stylistic/ts' | 'isentinel/stylistic/js' | 'isentinel/stylistic/markdown-code' | 'isentinel/test/jest/setup' | 'isentinel/test/jest/rules' | 'isentinel/test/vitest/setup' | 'isentinel/test/vitest/rules' | 'isentinel/toml/setup' | 'isentinel/toml/rules' | 'isentinel/typescript/setup' | 'isentinel/typescript/parser' | 'isentinel/typescript/type-aware-parser' | 'isentinel/typescript/rules' | 'isentinel/typescript/rules-type-aware' | 'isentinel/typescript/erasable-syntax-only' | 'isentinel/unicorn' | 'isentinel/unicorn/root' | 'isentinel/yaml/setup' | 'isentinel/yaml/rules';
17578
17848
  //#endregion
17579
- //#region src/utils.d.ts
17580
- type ExtractRuleOptions<T> = T extends Linter.RuleEntry<infer U> ? U : never;
17581
- declare function isInGitHooksOrLintStaged(): boolean;
17582
- declare function isInAgentSession(): boolean;
17583
- declare function isInEditorEnvironment(): boolean;
17584
- //#endregion
17585
17849
  //#region src/types.d.ts
17586
17850
  type Awaitable<T> = Promise<T> | T;
17587
17851
  interface JsdocOptions {
@@ -17725,6 +17989,24 @@ interface OptionsJest {
17725
17989
  * @default false
17726
17990
  */
17727
17991
  extended?: boolean;
17992
+ /**
17993
+ * Glob patterns for files that should be considered test files for Jest.
17994
+ *
17995
+ * @default ["**\/*.{test,spec}.{ts,tsx,js,jsx}"]
17996
+ */
17997
+ files?: Array<Array<string> | string>;
17998
+ /**
17999
+ * Glob patterns for test files that the Jest rules should not apply to.
18000
+ *
18001
+ * Excludes matching files from the Jest config only (not globally).
18002
+ */
18003
+ ignores?: Array<string>;
18004
+ /**
18005
+ * Rule overrides applied to the Jest config only.
18006
+ *
18007
+ * Takes precedence over the shared `test.overrides`.
18008
+ */
18009
+ overrides?: TypedFlatConfigItem["rules"];
17728
18010
  }
17729
18011
  interface OptionsVitest {
17730
18012
  /**
@@ -17735,6 +18017,24 @@ interface OptionsVitest {
17735
18017
  * @default false
17736
18018
  */
17737
18019
  extended?: boolean;
18020
+ /**
18021
+ * Glob patterns for files that should be considered test files for Vitest.
18022
+ *
18023
+ * @default ["**\/*.{test,spec}.{ts,tsx,js,jsx}"]
18024
+ */
18025
+ files?: Array<Array<string> | string>;
18026
+ /**
18027
+ * Glob patterns for test files that the Vitest rules should not apply to.
18028
+ *
18029
+ * Excludes matching files from the Vitest config only (not globally).
18030
+ */
18031
+ ignores?: Array<string>;
18032
+ /**
18033
+ * Rule overrides applied to the Vitest config only.
18034
+ *
18035
+ * Takes precedence over the shared `test.overrides`.
18036
+ */
18037
+ overrides?: TypedFlatConfigItem["rules"];
17738
18038
  /**
17739
18039
  * Enable typecheck rules for Vitest.
17740
18040
  *