@whoj/eslint-config 2.0.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,9 +1,10 @@
1
1
  import { Linter } from 'eslint';
2
- import { StylisticCustomizeOptions } from '@stylistic/eslint-plugin';
2
+ import { FlatConfigComposer } from 'eslint-flat-config-utils';
3
3
  import { ParserOptions } from '@typescript-eslint/parser';
4
4
  import { FlatGitignoreOptions } from 'eslint-config-flat-gitignore';
5
+ import { StylisticCustomizeOptions } from '@stylistic/eslint-plugin';
5
6
  import { Options } from 'eslint-processor-vue-blocks';
6
- import { FlatConfigComposer } from 'eslint-flat-config-utils';
7
+ import { NuxtESLintConfigOptions, NuxtESLintFeaturesOptions } from '@nuxt/eslint-config/flat';
7
8
 
8
9
  /* eslint-disable */
9
10
  /* prettier-ignore */
@@ -15,61 +16,6 @@ interface RuleOptions {
15
16
  * @see https://eslint.org/docs/latest/rules/accessor-pairs
16
17
  */
17
18
  'accessor-pairs'?: Linter.RuleEntry<AccessorPairs>
18
- /**
19
- * Having line breaks styles to object, array and named imports
20
- * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/consistent-chaining.md
21
- */
22
- 'antfu/consistent-chaining'?: Linter.RuleEntry<AntfuConsistentChaining>
23
- /**
24
- * Having line breaks styles to object, array and named imports
25
- * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/consistent-list-newline.md
26
- */
27
- 'antfu/consistent-list-newline'?: Linter.RuleEntry<AntfuConsistentListNewline>
28
- /**
29
- * Enforce Anthony's style of curly bracket
30
- * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/curly.md
31
- */
32
- 'antfu/curly'?: Linter.RuleEntry<[]>
33
- /**
34
- * Newline after if
35
- * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/if-newline.md
36
- */
37
- 'antfu/if-newline'?: Linter.RuleEntry<[]>
38
- /**
39
- * Fix duplication in imports
40
- * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/import-dedupe.md
41
- */
42
- 'antfu/import-dedupe'?: Linter.RuleEntry<[]>
43
- /**
44
- * Enforce consistent indentation in `unindent` template tag
45
- * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/indent-unindent.md
46
- */
47
- 'antfu/indent-unindent'?: Linter.RuleEntry<AntfuIndentUnindent>
48
- /**
49
- * Prevent importing modules in `dist` folder
50
- * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-import-dist.test.ts
51
- */
52
- 'antfu/no-import-dist'?: Linter.RuleEntry<[]>
53
- /**
54
- * Prevent importing modules in `node_modules` folder by relative or absolute path
55
- * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-import-node-modules-by-path.test.ts
56
- */
57
- 'antfu/no-import-node-modules-by-path'?: Linter.RuleEntry<[]>
58
- /**
59
- * Prevent using top-level await
60
- * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-top-level-await.test.ts
61
- */
62
- 'antfu/no-top-level-await'?: Linter.RuleEntry<[]>
63
- /**
64
- * Do not use `exports =`
65
- * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-ts-export-equal.test.ts
66
- */
67
- 'antfu/no-ts-export-equal'?: Linter.RuleEntry<[]>
68
- /**
69
- * Enforce top-level functions to be declared with function keyword
70
- * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/top-level-function.md
71
- */
72
- 'antfu/top-level-function'?: Linter.RuleEntry<[]>
73
19
  /**
74
20
  * Enforce linebreaks after opening and before closing array brackets
75
21
  * @see https://eslint.org/docs/latest/rules/array-bracket-newline
@@ -4934,6 +4880,11 @@ interface RuleOptions {
4934
4880
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-spy-on.md
4935
4881
  */
4936
4882
  'test/prefer-spy-on'?: Linter.RuleEntry<[]>
4883
+ /**
4884
+ * enforce using `toBe(true)` and `toBe(false)` over matchers that coerce types to boolean
4885
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-strict-boolean-matchers.md
4886
+ */
4887
+ 'test/prefer-strict-boolean-matchers'?: Linter.RuleEntry<[]>
4937
4888
  /**
4938
4889
  * enforce strict equal over equal
4939
4890
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-strict-equal.md
@@ -7782,6 +7733,61 @@ interface RuleOptions {
7782
7733
  * @see https://eslint.vuejs.org/rules/valid-v-text.html
7783
7734
  */
7784
7735
  'vue/valid-v-text'?: Linter.RuleEntry<[]>
7736
+ /**
7737
+ * Having line breaks styles to object, array and named imports
7738
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/consistent-chaining.md
7739
+ */
7740
+ 'whoj/consistent-chaining'?: Linter.RuleEntry<WhojConsistentChaining>
7741
+ /**
7742
+ * Having line breaks styles to object, array and named imports
7743
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/consistent-list-newline.md
7744
+ */
7745
+ 'whoj/consistent-list-newline'?: Linter.RuleEntry<WhojConsistentListNewline>
7746
+ /**
7747
+ * Enforce Anthony's style of curly bracket
7748
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/curly.md
7749
+ */
7750
+ 'whoj/curly'?: Linter.RuleEntry<[]>
7751
+ /**
7752
+ * Newline after if
7753
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/if-newline.md
7754
+ */
7755
+ 'whoj/if-newline'?: Linter.RuleEntry<[]>
7756
+ /**
7757
+ * Fix duplication in imports
7758
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/import-dedupe.md
7759
+ */
7760
+ 'whoj/import-dedupe'?: Linter.RuleEntry<[]>
7761
+ /**
7762
+ * Enforce consistent indentation in `unindent` template tag
7763
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/indent-unindent.md
7764
+ */
7765
+ 'whoj/indent-unindent'?: Linter.RuleEntry<WhojIndentUnindent>
7766
+ /**
7767
+ * Prevent importing modules in `dist` folder
7768
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-import-dist.test.ts
7769
+ */
7770
+ 'whoj/no-import-dist'?: Linter.RuleEntry<[]>
7771
+ /**
7772
+ * Prevent importing modules in `node_modules` folder by relative or absolute path
7773
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-import-node-modules-by-path.test.ts
7774
+ */
7775
+ 'whoj/no-import-node-modules-by-path'?: Linter.RuleEntry<[]>
7776
+ /**
7777
+ * Prevent using top-level await
7778
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-top-level-await.test.ts
7779
+ */
7780
+ 'whoj/no-top-level-await'?: Linter.RuleEntry<[]>
7781
+ /**
7782
+ * Do not use `exports =`
7783
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-ts-export-equal.test.ts
7784
+ */
7785
+ 'whoj/no-ts-export-equal'?: Linter.RuleEntry<[]>
7786
+ /**
7787
+ * Enforce top-level functions to be declared with function keyword
7788
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/top-level-function.md
7789
+ */
7790
+ 'whoj/top-level-function'?: Linter.RuleEntry<[]>
7785
7791
  /**
7786
7792
  * Require parentheses around immediate `function` invocations
7787
7793
  * @see https://eslint.org/docs/latest/rules/wrap-iife
@@ -7954,39 +7960,6 @@ type AccessorPairs = []|[{
7954
7960
  setWithoutGet?: boolean
7955
7961
  enforceForClassMembers?: boolean
7956
7962
  }]
7957
- // ----- antfu/consistent-chaining -----
7958
- type AntfuConsistentChaining = []|[{
7959
-
7960
- allowLeadingPropertyAccess?: boolean
7961
- }]
7962
- // ----- antfu/consistent-list-newline -----
7963
- type AntfuConsistentListNewline = []|[{
7964
- ArrayExpression?: boolean
7965
- ArrayPattern?: boolean
7966
- ArrowFunctionExpression?: boolean
7967
- CallExpression?: boolean
7968
- ExportNamedDeclaration?: boolean
7969
- FunctionDeclaration?: boolean
7970
- FunctionExpression?: boolean
7971
- ImportDeclaration?: boolean
7972
- JSONArrayExpression?: boolean
7973
- JSONObjectExpression?: boolean
7974
- JSXOpeningElement?: boolean
7975
- NewExpression?: boolean
7976
- ObjectExpression?: boolean
7977
- ObjectPattern?: boolean
7978
- TSFunctionType?: boolean
7979
- TSInterfaceDeclaration?: boolean
7980
- TSTupleType?: boolean
7981
- TSTypeLiteral?: boolean
7982
- TSTypeParameterDeclaration?: boolean
7983
- TSTypeParameterInstantiation?: boolean
7984
- }]
7985
- // ----- antfu/indent-unindent -----
7986
- type AntfuIndentUnindent = []|[{
7987
- indent?: number
7988
- tags?: string[]
7989
- }]
7990
7963
  // ----- array-bracket-newline -----
7991
7964
  type ArrayBracketNewline = []|[(("always" | "never" | "consistent") | {
7992
7965
  multiline?: boolean
@@ -16030,6 +16003,39 @@ type VueValidVOn = []|[{
16030
16003
  type VueValidVSlot = []|[{
16031
16004
  allowModifiers?: boolean
16032
16005
  }]
16006
+ // ----- whoj/consistent-chaining -----
16007
+ type WhojConsistentChaining = []|[{
16008
+
16009
+ allowLeadingPropertyAccess?: boolean
16010
+ }]
16011
+ // ----- whoj/consistent-list-newline -----
16012
+ type WhojConsistentListNewline = []|[{
16013
+ ArrayExpression?: boolean
16014
+ ArrayPattern?: boolean
16015
+ ArrowFunctionExpression?: boolean
16016
+ CallExpression?: boolean
16017
+ ExportNamedDeclaration?: boolean
16018
+ FunctionDeclaration?: boolean
16019
+ FunctionExpression?: boolean
16020
+ ImportDeclaration?: boolean
16021
+ JSONArrayExpression?: boolean
16022
+ JSONObjectExpression?: boolean
16023
+ JSXOpeningElement?: boolean
16024
+ NewExpression?: boolean
16025
+ ObjectExpression?: boolean
16026
+ ObjectPattern?: boolean
16027
+ TSFunctionType?: boolean
16028
+ TSInterfaceDeclaration?: boolean
16029
+ TSTupleType?: boolean
16030
+ TSTypeLiteral?: boolean
16031
+ TSTypeParameterDeclaration?: boolean
16032
+ TSTypeParameterInstantiation?: boolean
16033
+ }]
16034
+ // ----- whoj/indent-unindent -----
16035
+ type WhojIndentUnindent = []|[{
16036
+ indent?: number
16037
+ tags?: string[]
16038
+ }]
16033
16039
  // ----- wrap-iife -----
16034
16040
  type WrapIife = []|[("outside" | "inside" | "any")]|[("outside" | "inside" | "any"), {
16035
16041
  functionPrototypeMethods?: boolean
@@ -16252,7 +16258,7 @@ type Yoda = []|[("always" | "never")]|[("always" | "never"), {
16252
16258
  onlyEquality?: boolean
16253
16259
  }]
16254
16260
  // Names of all the configs
16255
- type ConfigNames = 'antfu/astro/setup' | 'antfu/astro/rules' | 'antfu/eslint-comments/rules' | 'antfu/formatter/setup' | 'antfu/imports/rules' | 'antfu/javascript/setup' | 'antfu/javascript/rules' | 'antfu/jsx/setup' | 'antfu/jsdoc/rules' | 'antfu/jsonc/setup' | 'antfu/jsonc/rules' | 'antfu/markdown/setup' | 'antfu/markdown/processor' | 'antfu/markdown/parser' | 'antfu/markdown/disables' | 'antfu/node/rules' | 'antfu/perfectionist/setup' | 'antfu/react/setup' | 'antfu/react/rules' | 'antfu/solid/setup' | 'antfu/solid/rules' | 'antfu/sort/package-json' | 'antfu/stylistic/rules' | 'antfu/svelte/setup' | 'antfu/svelte/rules' | 'antfu/test/setup' | 'antfu/test/rules' | 'antfu/toml/setup' | 'antfu/toml/rules' | 'antfu/regexp/rules' | 'antfu/typescript/setup' | 'antfu/typescript/parser' | 'antfu/typescript/rules' | 'antfu/unicorn/rules' | 'antfu/unocss' | 'antfu/vue/setup' | 'antfu/vue/rules' | 'antfu/yaml/setup' | 'antfu/yaml/rules'
16261
+ type ConfigNames = 'whoj/astro/setup' | 'whoj/astro/rules' | 'whoj/eslint-comments/rules' | 'whoj/formatter/setup' | 'whoj/imports/rules' | 'whoj/javascript/setup' | 'whoj/javascript/rules' | 'whoj/jsx/setup' | 'whoj/jsdoc/rules' | 'whoj/jsonc/setup' | 'whoj/jsonc/rules' | 'whoj/markdown/setup' | 'whoj/markdown/processor' | 'whoj/markdown/parser' | 'whoj/markdown/disables' | 'whoj/node/rules' | 'whoj/perfectionist/setup' | 'whoj/react/setup' | 'whoj/react/rules' | 'whoj/solid/setup' | 'whoj/solid/rules' | 'whoj/sort/package-json' | 'whoj/stylistic/rules' | 'whoj/svelte/setup' | 'whoj/svelte/rules' | 'whoj/test/setup' | 'whoj/test/rules' | 'whoj/toml/setup' | 'whoj/toml/rules' | 'whoj/regexp/rules' | 'whoj/typescript/setup' | 'whoj/typescript/parser' | 'whoj/typescript/rules' | 'whoj/unicorn/rules' | 'whoj/unocss' | 'whoj/vue/setup' | 'whoj/vue/rules' | 'whoj/yaml/setup' | 'whoj/yaml/rules'
16256
16262
 
16257
16263
  /**
16258
16264
  * Vendor types from Prettier so we don't rely on the dependency.
@@ -16390,6 +16396,9 @@ interface OptionsFiles {
16390
16396
  */
16391
16397
  files?: string[];
16392
16398
  }
16399
+ interface OptionsNuxt extends Omit<NuxtESLintConfigOptions, 'features'> {
16400
+ features?: Omit<NuxtESLintFeaturesOptions, 'standalone'>;
16401
+ }
16393
16402
  interface OptionsVue extends OptionsOverrides {
16394
16403
  /**
16395
16404
  * Create virtual files for Vue SFC blocks to enable linting.
@@ -16520,7 +16529,7 @@ interface OptionsHasTypeScript {
16520
16529
  interface OptionsStylistic {
16521
16530
  stylistic?: boolean | StylisticConfig;
16522
16531
  }
16523
- interface StylisticConfig extends Pick<StylisticCustomizeOptions, 'indent' | 'quotes' | 'jsx' | 'semi'> {
16532
+ interface StylisticConfig extends Pick<StylisticCustomizeOptions, 'indent' | 'quotes' | 'jsx' | 'semi' | 'commaDangle'> {
16524
16533
  }
16525
16534
  interface OptionsOverrides {
16526
16535
  overrides?: TypedFlatConfigItem['rules'];
@@ -16612,6 +16621,12 @@ interface OptionsConfig extends OptionsComponentExts, OptionsProjectType {
16612
16621
  * @default auto-detect based on the dependencies
16613
16622
  */
16614
16623
  vue?: boolean | OptionsVue;
16624
+ /**
16625
+ * Enable Nuxt support.
16626
+ *
16627
+ * @default auto-detect based on the dependencies
16628
+ */
16629
+ nuxt?: boolean | OptionsNuxt;
16615
16630
  /**
16616
16631
  * Enable JSONC support.
16617
16632
  *
@@ -16766,85 +16781,11 @@ declare const defaultPluginRenaming: {
16766
16781
  * @returns {Promise<TypedFlatConfigItem[]>}
16767
16782
  * The merged ESLint configurations.
16768
16783
  */
16769
- declare function antfu(options?: OptionsConfig & Omit<TypedFlatConfigItem, 'files'>, ...userConfigs: Awaitable<TypedFlatConfigItem | TypedFlatConfigItem[] | FlatConfigComposer<any, any> | Linter.Config[]>[]): FlatConfigComposer<TypedFlatConfigItem, ConfigNames>;
16784
+ declare function whoj(options?: OptionsConfig & Omit<TypedFlatConfigItem, 'files'>, ...userConfigs: Awaitable<TypedFlatConfigItem | TypedFlatConfigItem[] | FlatConfigComposer<any, any> | Linter.Config[]>[]): FlatConfigComposer<TypedFlatConfigItem, ConfigNames>;
16770
16785
  type ResolvedOptions<T> = T extends boolean ? never : NonNullable<T>;
16771
16786
  declare function resolveSubOptions<K extends keyof OptionsConfig>(options: OptionsConfig, key: K): ResolvedOptions<OptionsConfig[K]>;
16772
16787
  declare function getOverrides<K extends keyof OptionsConfig>(options: OptionsConfig, key: K): Partial<Linter.RulesRecord & RuleOptions>;
16773
16788
 
16774
- declare function astro(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
16775
-
16776
- declare function command(): Promise<TypedFlatConfigItem[]>;
16777
-
16778
- declare function comments(): Promise<TypedFlatConfigItem[]>;
16779
-
16780
- declare function disables(): Promise<TypedFlatConfigItem[]>;
16781
-
16782
- declare function formatters(options?: OptionsFormatters | true, stylistic?: StylisticConfig): Promise<TypedFlatConfigItem[]>;
16783
-
16784
- declare function ignores(userIgnores?: string[]): Promise<TypedFlatConfigItem[]>;
16785
-
16786
- declare function imports(options?: OptionsStylistic): Promise<TypedFlatConfigItem[]>;
16787
-
16788
- declare function javascript(options?: OptionsIsInEditor & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
16789
-
16790
- declare function jsdoc(options?: OptionsStylistic): Promise<TypedFlatConfigItem[]>;
16791
-
16792
- declare function jsonc(options?: OptionsFiles & OptionsStylistic & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
16793
-
16794
- declare function jsx(): Promise<TypedFlatConfigItem[]>;
16795
-
16796
- declare function markdown(options?: OptionsFiles & OptionsComponentExts & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
16797
-
16798
- declare function node(): Promise<TypedFlatConfigItem[]>;
16799
-
16800
- /**
16801
- * Perfectionist plugin for props and items sorting.
16802
- *
16803
- * @see https://github.com/azat-io/eslint-plugin-perfectionist
16804
- */
16805
- declare function perfectionist(): Promise<TypedFlatConfigItem[]>;
16806
-
16807
- declare function react(options?: OptionsTypeScriptParserOptions & OptionsTypeScriptWithTypes & OptionsOverrides & OptionsFiles): Promise<TypedFlatConfigItem[]>;
16808
-
16809
- declare function regexp(options?: OptionsRegExp & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
16810
-
16811
- declare function solid(options?: OptionsHasTypeScript & OptionsOverrides & OptionsFiles & OptionsTypeScriptWithTypes): Promise<TypedFlatConfigItem[]>;
16812
-
16813
- /**
16814
- * Sort package.json
16815
- *
16816
- * Requires `jsonc` config
16817
- */
16818
- declare function sortPackageJson(): Promise<TypedFlatConfigItem[]>;
16819
- /**
16820
- * Sort tsconfig.json
16821
- *
16822
- * Requires `jsonc` config
16823
- */
16824
- declare function sortTsconfig(): TypedFlatConfigItem[];
16825
-
16826
- declare const StylisticConfigDefaults: StylisticConfig;
16827
- interface StylisticOptions extends StylisticConfig, OptionsOverrides {
16828
- lessOpinionated?: boolean;
16829
- }
16830
- declare function stylistic(options?: StylisticOptions): Promise<TypedFlatConfigItem[]>;
16831
-
16832
- declare function svelte(options?: OptionsHasTypeScript & OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
16833
-
16834
- declare function test(options?: OptionsFiles & OptionsIsInEditor & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
16835
-
16836
- declare function toml(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
16837
-
16838
- declare function typescript(options?: OptionsFiles & OptionsComponentExts & OptionsOverrides & OptionsTypeScriptWithTypes & OptionsTypeScriptParserOptions & OptionsProjectType): Promise<TypedFlatConfigItem[]>;
16839
-
16840
- declare function unicorn(options?: OptionsUnicorn): Promise<TypedFlatConfigItem[]>;
16841
-
16842
- declare function unocss(options?: OptionsUnoCSS): Promise<TypedFlatConfigItem[]>;
16843
-
16844
- declare function vue(options?: OptionsVue & OptionsHasTypeScript & OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
16845
-
16846
- declare function yaml(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
16847
-
16848
16789
  declare const GLOB_SRC_EXT = "?([cm])[jt]s?(x)";
16849
16790
  declare const GLOB_SRC = "**/*.?([cm])[jt]s?(x)";
16850
16791
  declare const GLOB_JS = "**/*.?([cm])js";
@@ -16948,4 +16889,80 @@ declare function ensurePackages(packages: (string | undefined)[]): Promise<void>
16948
16889
  declare function isInEditorEnv(): boolean;
16949
16890
  declare function isInGitHooksOrLintStaged(): boolean;
16950
16891
 
16951
- export { type Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, type OptionsComponentExts, type OptionsConfig, type OptionsFiles, type OptionsFormatters, type OptionsHasTypeScript, type OptionsIsInEditor, type OptionsOverrides, type OptionsProjectType, type OptionsRegExp, type OptionsStylistic, type OptionsTypeScriptParserOptions, type OptionsTypeScriptWithTypes, type OptionsTypescript, type OptionsUnicorn, type OptionsUnoCSS, type OptionsVue, type ResolvedOptions, type Rules, type StylisticConfig, StylisticConfigDefaults, type StylisticOptions, type TypedFlatConfigItem, antfu, astro, combine, command, comments, antfu as default, defaultPluginRenaming, disables, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, node, parserPlain, perfectionist, react, regexp, renamePluginInConfigs, renameRules, resolveSubOptions, solid, sortPackageJson, sortTsconfig, stylistic, svelte, test, toArray, toml, typescript, unicorn, unocss, vue, yaml };
16892
+ declare function jsx(): Promise<TypedFlatConfigItem[]>;
16893
+
16894
+ declare function vue(options?: OptionsVue & OptionsHasTypeScript & OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
16895
+
16896
+ declare function node(): Promise<TypedFlatConfigItem[]>;
16897
+
16898
+ declare function nuxt({ dirs, features }?: OptionsNuxt): Promise<TypedFlatConfigItem[]>;
16899
+
16900
+ /**
16901
+ * Sort package.json
16902
+ *
16903
+ * Requires `jsonc` config
16904
+ */
16905
+ declare function sortPackageJson(): Promise<TypedFlatConfigItem[]>;
16906
+ /**
16907
+ * Sort tsconfig.json
16908
+ *
16909
+ * Requires `jsonc` config
16910
+ */
16911
+ declare function sortTsconfig(): TypedFlatConfigItem[];
16912
+
16913
+ declare function test(options?: OptionsFiles & OptionsIsInEditor & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
16914
+
16915
+ declare function toml(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
16916
+
16917
+ declare function yaml(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
16918
+
16919
+ declare function astro(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
16920
+
16921
+ declare function jsdoc(options?: OptionsStylistic): Promise<TypedFlatConfigItem[]>;
16922
+
16923
+ declare function jsonc(options?: OptionsFiles & OptionsStylistic & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
16924
+
16925
+ declare function react(options?: OptionsTypeScriptParserOptions & OptionsTypeScriptWithTypes & OptionsOverrides & OptionsFiles): Promise<TypedFlatConfigItem[]>;
16926
+
16927
+ declare function solid(options?: OptionsHasTypeScript & OptionsOverrides & OptionsFiles & OptionsTypeScriptWithTypes): Promise<TypedFlatConfigItem[]>;
16928
+
16929
+ declare function regexp(options?: OptionsRegExp & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
16930
+
16931
+ declare function svelte(options?: OptionsHasTypeScript & OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
16932
+
16933
+ declare function unocss(options?: OptionsUnoCSS): Promise<TypedFlatConfigItem[]>;
16934
+
16935
+ declare function command(): Promise<TypedFlatConfigItem[]>;
16936
+
16937
+ declare function ignores(userIgnores?: string[]): Promise<TypedFlatConfigItem[]>;
16938
+
16939
+ declare function imports(options?: OptionsStylistic): Promise<TypedFlatConfigItem[]>;
16940
+
16941
+ declare function unicorn(options?: OptionsUnicorn): Promise<TypedFlatConfigItem[]>;
16942
+
16943
+ declare function comments(): Promise<TypedFlatConfigItem[]>;
16944
+
16945
+ declare function disables(): Promise<TypedFlatConfigItem[]>;
16946
+
16947
+ declare function markdown(options?: OptionsFiles & OptionsComponentExts & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
16948
+
16949
+ declare const StylisticConfigDefaults: StylisticConfig;
16950
+ interface StylisticOptions extends StylisticConfig, OptionsOverrides {
16951
+ lessOpinionated?: boolean;
16952
+ }
16953
+ declare function stylistic(options?: StylisticOptions): Promise<TypedFlatConfigItem[]>;
16954
+
16955
+ declare function formatters(options?: OptionsFormatters | true, stylistic?: StylisticConfig): Promise<TypedFlatConfigItem[]>;
16956
+
16957
+ declare function javascript(options?: OptionsIsInEditor & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
16958
+
16959
+ declare function typescript(options?: OptionsFiles & OptionsComponentExts & OptionsOverrides & OptionsTypeScriptWithTypes & OptionsTypeScriptParserOptions & OptionsProjectType): Promise<TypedFlatConfigItem[]>;
16960
+
16961
+ /**
16962
+ * Perfectionist plugin for props and items sorting.
16963
+ *
16964
+ * @see https://github.com/azat-io/eslint-plugin-perfectionist
16965
+ */
16966
+ declare function perfectionist(): TypedFlatConfigItem[];
16967
+
16968
+ export { type Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, type OptionsComponentExts, type OptionsConfig, type OptionsFiles, type OptionsFormatters, type OptionsHasTypeScript, type OptionsIsInEditor, type OptionsNuxt, type OptionsOverrides, type OptionsProjectType, type OptionsRegExp, type OptionsStylistic, type OptionsTypeScriptParserOptions, type OptionsTypeScriptWithTypes, type OptionsTypescript, type OptionsUnicorn, type OptionsUnoCSS, type OptionsVue, type ResolvedOptions, type Rules, type StylisticConfig, StylisticConfigDefaults, type StylisticOptions, type TypedFlatConfigItem, astro, combine, command, comments, whoj as default, defaultPluginRenaming, disables, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, node, nuxt, parserPlain, perfectionist, react, regexp, renamePluginInConfigs, renameRules, resolveSubOptions, solid, sortPackageJson, sortTsconfig, stylistic, svelte, test, toArray, toml, typescript, unicorn, unocss, vue, whoj, yaml };