@minko-fe/eslint-config
Version:
485 lines (457 loc) • 24.3 kB
TypeScript
import * as eslint from 'eslint';
import { Linter } from 'eslint';
import * as eslint_plugin_antfu from 'eslint-plugin-antfu';
import * as _pluginReact from 'eslint-plugin-react';
import * as _pluginNode from 'eslint-plugin-n';
import * as _parserAstro from 'astro-eslint-parser';
import * as eslintPluginImportX from 'eslint-plugin-import-x';
export { eslintPluginImportX as pluginImport };
import * as eslintPluginJsonc from 'eslint-plugin-jsonc';
export { eslintPluginJsonc as pluginJsonc };
import * as eslintPluginYml from 'eslint-plugin-yml';
export { eslintPluginYml as pluginYml };
import * as jsoncEslintParser from 'jsonc-eslint-parser';
export { jsoncEslintParser as parserJsonc };
import * as vueEslintParser from 'vue-eslint-parser';
export { vueEslintParser as parserVue };
import * as yamlEslintParser from 'yaml-eslint-parser';
export { yamlEslintParser as parserYml };
export { default as tseslint } from 'typescript-eslint';
declare function resolveAstro(): Promise<Linter.Config[]>;
declare const comments: Linter.Config[];
interface FlatConfigItem {
ignores: string[];
}
declare const ignores: Linter.Config[];
declare const gitignores: FlatConfigItem[];
declare const imports: Linter.Config[];
declare const javascript: Linter.Config[];
declare const jsonc: Linter.Config[];
declare const markdown: Linter.Config[];
declare const node: Linter.Config[];
declare const sortImports: Linter.Config[];
declare const sortObjects: Linter.Config[];
declare const prettier: Linter.Config[];
declare const react: Linter.Config[];
declare const sortPackageJson: Linter.Config[];
declare const sortTsconfig: Linter.Config[];
declare function asyncSvelte(): Promise<Linter.Config[]>;
declare const typescriptCore: Linter.Config[];
declare const typescript: Linter.Config[];
declare const unicorn: Linter.Config[];
declare function getVueVersion(): number;
declare const reactivityTransform: Linter.Config[];
declare const vue: Linter.Config[];
declare const yml: Linter.Config[];
declare const isInEditor: boolean;
declare const hasTypeScript: boolean;
declare const hasVue: boolean;
declare const hasReact: boolean;
declare const hasSvelte: boolean;
declare const hasSveltePrettier: boolean;
declare const hasAstro: boolean;
declare const hasAstroPrettier: boolean;
declare const hasTailwindcss: boolean;
declare const hasTailwindcssPrettire: boolean;
declare const GLOB_SRC_EXT = "?([cm])[jt]s?(x)";
declare const GLOB_SRC = "**/*.?([cm])[jt]s?(x)";
declare const GLOB_JS = "**/*.?([cm])js";
declare const GLOB_JSX = "**/*.?([cm])jsx";
declare const GLOB_TS = "**/*.?([cm])ts";
declare const GLOB_TSX = "**/*.?([cm])tsx";
declare const GLOB_ASTRO = "**/*.astro";
declare const GLOB_SVELTE = "**/*.svelte";
declare const GLOB_STYLE = "**/*.{c,le,sc}ss";
declare const GLOB_CSS = "**/*.css";
declare const GLOB_LESS = "**/*.less";
declare const GLOB_SCSS = "**/*.scss";
declare const GLOB_JSON = "**/*.json";
declare const GLOB_JSON5 = "**/*.json5";
declare const GLOB_JSONC = "**/*.jsonc";
declare const GLOB_MARKDOWN = "**/*.md";
declare const GLOB_VUE = "**/*.vue";
declare const GLOB_YAML = "**/*.y?(a)ml";
declare const GLOB_HTML = "**/*.htm?(l)";
declare const GLOB_ALL_SRC: string[];
declare const GLOB_TSCONFIG: string[];
declare const GLOB_PACKAGEJSON = /** @type {const} */ "**/package.json";
declare const GLOB_NODE_MODULES = /** @type {const} */ "**/node_modules";
declare const GLOB_DIST = /** @type {const} */ "**/dist";
declare const GLOB_LOCKFILE: string[];
declare const GLOB_EXCLUDE: string[];
declare const pluginAntfu: typeof eslint_plugin_antfu.default;
declare const pluginComments: any;
declare const pluginMarkdown: any;
declare const pluginUnicorn: eslint.ESLint.Plugin & {
configs: {
recommended: eslint.Linter.FlatConfig;
all: eslint.Linter.FlatConfig;
"flat/all": eslint.Linter.FlatConfig;
"flat/recommended": eslint.Linter.FlatConfig;
};
};
declare const pluginVue: {
meta: any;
configs: {
base: eslint.Linter.LegacyConfig;
essential: eslint.Linter.LegacyConfig;
"no-layout-rules": eslint.Linter.LegacyConfig;
recommended: eslint.Linter.LegacyConfig;
"strongly-recommended": eslint.Linter.LegacyConfig;
"vue3-essential": eslint.Linter.LegacyConfig;
"vue3-recommended": eslint.Linter.LegacyConfig;
"vue3-strongly-recommended": eslint.Linter.LegacyConfig;
"flat/base": eslint.Linter.FlatConfig[];
"flat/vue2-essential": eslint.Linter.FlatConfig[];
"flat/vue2-recommended": eslint.Linter.FlatConfig[];
"flat/vue2-strongly-recommended": eslint.Linter.FlatConfig[];
"flat/essential": eslint.Linter.FlatConfig[];
"flat/recommended": eslint.Linter.FlatConfig[];
"flat/strongly-recommended": eslint.Linter.FlatConfig[];
};
rules: Record<string, any>;
processors: {
".vue": any;
vue: any;
};
environments: {
"setup-compiler-macros": {
globals: {
defineProps: "readonly";
defineEmits: "readonly";
defineExpose: "readonly";
withDefaults: "readonly";
};
};
};
};
declare const pluginReact: {
deprecatedRules: Partial<{
'boolean-prop-naming': eslint.Rule.RuleModule;
'button-has-type': eslint.Rule.RuleModule;
'checked-requires-onchange-or-readonly': eslint.Rule.RuleModule;
'default-props-match-prop-types': eslint.Rule.RuleModule;
'destructuring-assignment': eslint.Rule.RuleModule;
'display-name': eslint.Rule.RuleModule;
'forbid-component-props': eslint.Rule.RuleModule;
'forbid-dom-props': eslint.Rule.RuleModule;
'forbid-elements': eslint.Rule.RuleModule;
'forbid-foreign-prop-types': eslint.Rule.RuleModule;
'forbid-prop-types': eslint.Rule.RuleModule;
'forward-ref-uses-ref': eslint.Rule.RuleModule;
'function-component-definition': eslint.Rule.RuleModule;
'hook-use-state': eslint.Rule.RuleModule;
'iframe-missing-sandbox': eslint.Rule.RuleModule;
'jsx-boolean-value': eslint.Rule.RuleModule;
'jsx-child-element-spacing': eslint.Rule.RuleModule;
'jsx-closing-bracket-location': eslint.Rule.RuleModule;
'jsx-closing-tag-location': eslint.Rule.RuleModule;
'jsx-curly-spacing': eslint.Rule.RuleModule;
'jsx-curly-newline': eslint.Rule.RuleModule;
'jsx-equals-spacing': eslint.Rule.RuleModule;
'jsx-filename-extension': eslint.Rule.RuleModule;
'jsx-first-prop-new-line': eslint.Rule.RuleModule;
'jsx-handler-names': eslint.Rule.RuleModule;
'jsx-indent': eslint.Rule.RuleModule;
'jsx-indent-props': eslint.Rule.RuleModule;
'jsx-key': eslint.Rule.RuleModule;
'jsx-max-depth': eslint.Rule.RuleModule;
'jsx-max-props-per-line': eslint.Rule.RuleModule;
'jsx-newline': eslint.Rule.RuleModule;
'jsx-no-bind': eslint.Rule.RuleModule;
'jsx-no-comment-textnodes': eslint.Rule.RuleModule;
'jsx-no-constructed-context-values': eslint.Rule.RuleModule;
'jsx-no-duplicate-props': eslint.Rule.RuleModule;
'jsx-no-leaked-render': eslint.Rule.RuleModule;
'jsx-no-literals': eslint.Rule.RuleModule;
'jsx-no-script-url': eslint.Rule.RuleModule;
'jsx-no-target-blank': eslint.Rule.RuleModule;
'jsx-no-useless-fragment': eslint.Rule.RuleModule;
'jsx-one-expression-per-line': eslint.Rule.RuleModule;
'jsx-no-undef': eslint.Rule.RuleModule;
'jsx-curly-brace-presence': eslint.Rule.RuleModule;
'jsx-pascal-case': eslint.Rule.RuleModule;
'jsx-fragments': eslint.Rule.RuleModule;
'jsx-props-no-multi-spaces': eslint.Rule.RuleModule;
'jsx-props-no-spreading': eslint.Rule.RuleModule;
'jsx-props-no-spread-multi': eslint.Rule.RuleModule;
'jsx-sort-default-props': eslint.Rule.RuleModule;
'jsx-sort-props': eslint.Rule.RuleModule;
'jsx-space-before-closing': eslint.Rule.RuleModule;
'jsx-tag-spacing': eslint.Rule.RuleModule;
'jsx-uses-react': eslint.Rule.RuleModule;
'jsx-uses-vars': eslint.Rule.RuleModule;
'jsx-wrap-multilines': eslint.Rule.RuleModule;
'no-invalid-html-attribute': eslint.Rule.RuleModule;
'no-access-state-in-setstate': eslint.Rule.RuleModule;
'no-adjacent-inline-elements': eslint.Rule.RuleModule;
'no-array-index-key': eslint.Rule.RuleModule;
'no-arrow-function-lifecycle': eslint.Rule.RuleModule;
'no-children-prop': eslint.Rule.RuleModule;
'no-danger': eslint.Rule.RuleModule;
'no-danger-with-children': eslint.Rule.RuleModule;
'no-deprecated': eslint.Rule.RuleModule;
'no-did-mount-set-state': eslint.Rule.RuleModule;
'no-did-update-set-state': eslint.Rule.RuleModule;
'no-direct-mutation-state': eslint.Rule.RuleModule;
'no-find-dom-node': eslint.Rule.RuleModule;
'no-is-mounted': eslint.Rule.RuleModule;
'no-multi-comp': eslint.Rule.RuleModule;
'no-namespace': eslint.Rule.RuleModule;
'no-set-state': eslint.Rule.RuleModule;
'no-string-refs': eslint.Rule.RuleModule;
'no-redundant-should-component-update': eslint.Rule.RuleModule;
'no-render-return-value': eslint.Rule.RuleModule;
'no-this-in-sfc': eslint.Rule.RuleModule;
'no-typos': eslint.Rule.RuleModule;
'no-unescaped-entities': eslint.Rule.RuleModule;
'no-unknown-property': eslint.Rule.RuleModule;
'no-unsafe': eslint.Rule.RuleModule;
'no-unstable-nested-components': eslint.Rule.RuleModule;
'no-unused-class-component-methods': eslint.Rule.RuleModule;
'no-unused-prop-types': eslint.Rule.RuleModule;
'no-unused-state': eslint.Rule.RuleModule;
'no-object-type-as-default-prop': eslint.Rule.RuleModule;
'no-will-update-set-state': eslint.Rule.RuleModule;
'prefer-es6-class': eslint.Rule.RuleModule;
'prefer-exact-props': eslint.Rule.RuleModule;
'prefer-read-only-props': eslint.Rule.RuleModule;
'prefer-stateless-function': eslint.Rule.RuleModule;
'prop-types': eslint.Rule.RuleModule;
'react-in-jsx-scope': eslint.Rule.RuleModule;
'require-default-props': eslint.Rule.RuleModule;
'require-optimization': eslint.Rule.RuleModule;
'require-render-return': eslint.Rule.RuleModule;
'self-closing-comp': eslint.Rule.RuleModule;
'sort-comp': eslint.Rule.RuleModule;
'sort-default-props': eslint.Rule.RuleModule;
'sort-prop-types': eslint.Rule.RuleModule;
'state-in-constructor': eslint.Rule.RuleModule;
'static-property-placement': eslint.Rule.RuleModule;
'style-prop-object': eslint.Rule.RuleModule;
'void-dom-elements-no-children': eslint.Rule.RuleModule;
}>;
rules: {
'boolean-prop-naming': eslint.Rule.RuleModule;
'button-has-type': eslint.Rule.RuleModule;
'checked-requires-onchange-or-readonly': eslint.Rule.RuleModule;
'default-props-match-prop-types': eslint.Rule.RuleModule;
'destructuring-assignment': eslint.Rule.RuleModule;
'display-name': eslint.Rule.RuleModule;
'forbid-component-props': eslint.Rule.RuleModule;
'forbid-dom-props': eslint.Rule.RuleModule;
'forbid-elements': eslint.Rule.RuleModule;
'forbid-foreign-prop-types': eslint.Rule.RuleModule;
'forbid-prop-types': eslint.Rule.RuleModule;
'forward-ref-uses-ref': eslint.Rule.RuleModule;
'function-component-definition': eslint.Rule.RuleModule;
'hook-use-state': eslint.Rule.RuleModule;
'iframe-missing-sandbox': eslint.Rule.RuleModule;
'jsx-boolean-value': eslint.Rule.RuleModule;
'jsx-child-element-spacing': eslint.Rule.RuleModule;
'jsx-closing-bracket-location': eslint.Rule.RuleModule;
'jsx-closing-tag-location': eslint.Rule.RuleModule;
'jsx-curly-spacing': eslint.Rule.RuleModule;
'jsx-curly-newline': eslint.Rule.RuleModule;
'jsx-equals-spacing': eslint.Rule.RuleModule;
'jsx-filename-extension': eslint.Rule.RuleModule;
'jsx-first-prop-new-line': eslint.Rule.RuleModule;
'jsx-handler-names': eslint.Rule.RuleModule;
'jsx-indent': eslint.Rule.RuleModule;
'jsx-indent-props': eslint.Rule.RuleModule;
'jsx-key': eslint.Rule.RuleModule;
'jsx-max-depth': eslint.Rule.RuleModule;
'jsx-max-props-per-line': eslint.Rule.RuleModule;
'jsx-newline': eslint.Rule.RuleModule;
'jsx-no-bind': eslint.Rule.RuleModule;
'jsx-no-comment-textnodes': eslint.Rule.RuleModule;
'jsx-no-constructed-context-values': eslint.Rule.RuleModule;
'jsx-no-duplicate-props': eslint.Rule.RuleModule;
'jsx-no-leaked-render': eslint.Rule.RuleModule;
'jsx-no-literals': eslint.Rule.RuleModule;
'jsx-no-script-url': eslint.Rule.RuleModule;
'jsx-no-target-blank': eslint.Rule.RuleModule;
'jsx-no-useless-fragment': eslint.Rule.RuleModule;
'jsx-one-expression-per-line': eslint.Rule.RuleModule;
'jsx-no-undef': eslint.Rule.RuleModule;
'jsx-curly-brace-presence': eslint.Rule.RuleModule;
'jsx-pascal-case': eslint.Rule.RuleModule;
'jsx-fragments': eslint.Rule.RuleModule;
'jsx-props-no-multi-spaces': eslint.Rule.RuleModule;
'jsx-props-no-spreading': eslint.Rule.RuleModule;
'jsx-props-no-spread-multi': eslint.Rule.RuleModule;
'jsx-sort-default-props': eslint.Rule.RuleModule;
'jsx-sort-props': eslint.Rule.RuleModule;
'jsx-space-before-closing': eslint.Rule.RuleModule;
'jsx-tag-spacing': eslint.Rule.RuleModule;
'jsx-uses-react': eslint.Rule.RuleModule;
'jsx-uses-vars': eslint.Rule.RuleModule;
'jsx-wrap-multilines': eslint.Rule.RuleModule;
'no-invalid-html-attribute': eslint.Rule.RuleModule;
'no-access-state-in-setstate': eslint.Rule.RuleModule;
'no-adjacent-inline-elements': eslint.Rule.RuleModule;
'no-array-index-key': eslint.Rule.RuleModule;
'no-arrow-function-lifecycle': eslint.Rule.RuleModule;
'no-children-prop': eslint.Rule.RuleModule;
'no-danger': eslint.Rule.RuleModule;
'no-danger-with-children': eslint.Rule.RuleModule;
'no-deprecated': eslint.Rule.RuleModule;
'no-did-mount-set-state': eslint.Rule.RuleModule;
'no-did-update-set-state': eslint.Rule.RuleModule;
'no-direct-mutation-state': eslint.Rule.RuleModule;
'no-find-dom-node': eslint.Rule.RuleModule;
'no-is-mounted': eslint.Rule.RuleModule;
'no-multi-comp': eslint.Rule.RuleModule;
'no-namespace': eslint.Rule.RuleModule;
'no-set-state': eslint.Rule.RuleModule;
'no-string-refs': eslint.Rule.RuleModule;
'no-redundant-should-component-update': eslint.Rule.RuleModule;
'no-render-return-value': eslint.Rule.RuleModule;
'no-this-in-sfc': eslint.Rule.RuleModule;
'no-typos': eslint.Rule.RuleModule;
'no-unescaped-entities': eslint.Rule.RuleModule;
'no-unknown-property': eslint.Rule.RuleModule;
'no-unsafe': eslint.Rule.RuleModule;
'no-unstable-nested-components': eslint.Rule.RuleModule;
'no-unused-class-component-methods': eslint.Rule.RuleModule;
'no-unused-prop-types': eslint.Rule.RuleModule;
'no-unused-state': eslint.Rule.RuleModule;
'no-object-type-as-default-prop': eslint.Rule.RuleModule;
'no-will-update-set-state': eslint.Rule.RuleModule;
'prefer-es6-class': eslint.Rule.RuleModule;
'prefer-exact-props': eslint.Rule.RuleModule;
'prefer-read-only-props': eslint.Rule.RuleModule;
'prefer-stateless-function': eslint.Rule.RuleModule;
'prop-types': eslint.Rule.RuleModule;
'react-in-jsx-scope': eslint.Rule.RuleModule;
'require-default-props': eslint.Rule.RuleModule;
'require-optimization': eslint.Rule.RuleModule;
'require-render-return': eslint.Rule.RuleModule;
'self-closing-comp': eslint.Rule.RuleModule;
'sort-comp': eslint.Rule.RuleModule;
'sort-default-props': eslint.Rule.RuleModule;
'sort-prop-types': eslint.Rule.RuleModule;
'state-in-constructor': eslint.Rule.RuleModule;
'static-property-placement': eslint.Rule.RuleModule;
'style-prop-object': eslint.Rule.RuleModule;
'void-dom-elements-no-children': eslint.Rule.RuleModule;
};
configs: {
recommended: {
plugins: ["react"];
parserOptions: {
ecmaFeatures: {
jsx: boolean;
};
};
rules: {
"react/display-name": 2;
"react/jsx-key": 2;
"react/jsx-no-comment-textnodes": 2;
"react/jsx-no-duplicate-props": 2;
"react/jsx-no-target-blank": 2;
"react/jsx-no-undef": 2;
"react/jsx-uses-react": 2;
"react/jsx-uses-vars": 2;
"react/no-children-prop": 2;
"react/no-danger-with-children": 2;
"react/no-deprecated": 2;
"react/no-direct-mutation-state": 2;
"react/no-find-dom-node": 2;
"react/no-is-mounted": 2;
"react/no-render-return-value": 2;
"react/no-string-refs": 2;
"react/no-unescaped-entities": 2;
"react/no-unknown-property": 2;
"react/no-unsafe": 0;
"react/prop-types": 2;
"react/react-in-jsx-scope": 2;
"react/require-render-return": 2;
};
};
all: {
plugins: ["react"];
parserOptions: {
ecmaFeatures: {
jsx: boolean;
};
};
rules: Record<"boolean-prop-naming" | "button-has-type" | "checked-requires-onchange-or-readonly" | "default-props-match-prop-types" | "destructuring-assignment" | "display-name" | "forbid-component-props" | "forbid-dom-props" | "forbid-elements" | "forbid-foreign-prop-types" | "forbid-prop-types" | "prop-types" | "forward-ref-uses-ref" | "function-component-definition" | "hook-use-state" | "iframe-missing-sandbox" | "jsx-boolean-value" | "jsx-child-element-spacing" | "jsx-closing-bracket-location" | "jsx-closing-tag-location" | "jsx-curly-spacing" | "jsx-curly-newline" | "jsx-equals-spacing" | "jsx-filename-extension" | "jsx-first-prop-new-line" | "jsx-handler-names" | "jsx-indent" | "jsx-indent-props" | "jsx-key" | "jsx-max-depth" | "jsx-max-props-per-line" | "jsx-newline" | "jsx-no-bind" | "jsx-no-comment-textnodes" | "jsx-no-constructed-context-values" | "jsx-no-duplicate-props" | "jsx-no-leaked-render" | "jsx-no-literals" | "jsx-no-script-url" | "jsx-no-target-blank" | "jsx-no-useless-fragment" | "jsx-one-expression-per-line" | "jsx-no-undef" | "jsx-curly-brace-presence" | "jsx-pascal-case" | "jsx-fragments" | "jsx-props-no-multi-spaces" | "jsx-props-no-spreading" | "jsx-props-no-spread-multi" | "sort-default-props" | "jsx-sort-default-props" | "jsx-sort-props" | "jsx-tag-spacing" | "jsx-space-before-closing" | "jsx-uses-react" | "jsx-uses-vars" | "jsx-wrap-multilines" | "no-invalid-html-attribute" | "no-access-state-in-setstate" | "no-adjacent-inline-elements" | "no-array-index-key" | "no-arrow-function-lifecycle" | "no-children-prop" | "no-danger" | "no-danger-with-children" | "no-deprecated" | "no-direct-mutation-state" | "no-find-dom-node" | "no-is-mounted" | "no-multi-comp" | "no-namespace" | "no-set-state" | "no-string-refs" | "no-redundant-should-component-update" | "no-render-return-value" | "no-this-in-sfc" | "no-typos" | "no-unescaped-entities" | "no-unknown-property" | "no-unsafe" | "no-unstable-nested-components" | "no-unused-class-component-methods" | "no-unused-prop-types" | "no-unused-state" | "no-object-type-as-default-prop" | "prefer-es6-class" | "prefer-exact-props" | "prefer-read-only-props" | "prefer-stateless-function" | "react-in-jsx-scope" | "require-default-props" | "require-optimization" | "require-render-return" | "self-closing-comp" | "sort-comp" | "sort-prop-types" | "state-in-constructor" | "static-property-placement" | "style-prop-object" | "void-dom-elements-no-children" | "no-did-mount-set-state" | "no-did-update-set-state" | "no-will-update-set-state", 2 | "error">;
};
'jsx-runtime': {
plugins: ["react"];
parserOptions: {
ecmaFeatures: {
jsx: boolean;
};
jsxPragma: any;
};
rules: {
"react/react-in-jsx-scope": 0;
"react/jsx-uses-react": 0;
};
};
flat: Record<string, _pluginReact.ReactFlatConfig>;
} & {
flat: Record<string, _pluginReact.ReactFlatConfig>;
};
};
declare const pluginReactHooks: any;
declare const pluginPerfectionist: any;
declare const pluginUnusedImports: any;
declare const pluginNode: eslint.ESLint.Plugin & {
configs: _pluginNode.Configs;
};
declare const pluginPrettier: any;
declare const configPrettier: any;
declare const pluginAstro: {
meta: {
name: string;
version: string;
};
environments: {
astro: {
globals: {
Astro: boolean;
Fragment: boolean;
};
};
};
rules: {
[key: string]: eslint.Rule.RuleModule;
};
processors: {
".astro": eslint.Linter.Processor<string | eslint.Linter.ProcessorFile>;
astro: eslint.Linter.Processor<string | eslint.Linter.ProcessorFile>;
"client-side-ts": eslint.Linter.Processor<string | eslint.Linter.ProcessorFile>;
};
} & {
configs: {
base: eslint.Linter.Config[];
recommended: eslint.Linter.Config[];
all: eslint.Linter.Config[];
"jsx-a11y-strict": eslint.Linter.Config[];
"jsx-a11y-recommended": eslint.Linter.Config[];
"flat/base": eslint.Linter.Config[];
"flat/recommended": eslint.Linter.Config[];
"flat/all": eslint.Linter.Config[];
"flat/jsx-a11y-strict": eslint.Linter.Config[];
"flat/jsx-a11y-recommended": eslint.Linter.Config[];
};
};
declare const parserAstro: typeof _parserAstro;
declare function defineConfig(config?: Linter.Config | Linter.Config[], { astro: enableAstro, gitignore: enableGitignore, jsonc: enableJsonc, markdown: enableMarkdown, prettier: enablePrettier, react: enableReact, sortImports: enableSortImports, sortObjects: enableSortObjects, svelte: enableSvelte, typescript: enableTypescript, vue: enableVue, yml: enableYml, }?: Partial<{
react: boolean;
vue: boolean;
astro: boolean;
svelte: boolean;
typescript: boolean;
sortImports: boolean;
sortObjects: boolean;
prettier: boolean;
markdown: boolean;
gitignore: boolean;
jsonc: boolean;
yml: boolean;
}>): Promise<Linter.Config[]>;
export { GLOB_ALL_SRC, GLOB_ASTRO, GLOB_CSS, GLOB_DIST, GLOB_EXCLUDE, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_LOCKFILE, GLOB_MARKDOWN, GLOB_NODE_MODULES, GLOB_PACKAGEJSON, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_TS, GLOB_TSCONFIG, GLOB_TSX, GLOB_VUE, GLOB_YAML, asyncSvelte, comments, configPrettier, defineConfig, getVueVersion, gitignores, hasAstro, hasAstroPrettier, hasReact, hasSvelte, hasSveltePrettier, hasTailwindcss, hasTailwindcssPrettire, hasTypeScript, hasVue, ignores, imports, isInEditor, javascript, jsonc, markdown, node, parserAstro, pluginAntfu, pluginAstro, pluginComments, pluginMarkdown, pluginNode, pluginPerfectionist, pluginPrettier, pluginReact, pluginReactHooks, pluginUnicorn, pluginUnusedImports, pluginVue, prettier, react, reactivityTransform, resolveAstro, sortImports, sortObjects, sortPackageJson, sortTsconfig, typescript, typescriptCore, unicorn, vue, yml };