@antfu/eslint-define-config
Version:
Provide a defineConfig function for .eslintrc.js files
87 lines (82 loc) • 3.06 kB
TypeScript
import { MergeIntersection } from '../utils';
import type { DeprecationRules } from './deprecation';
import type { EslintRules } from './eslint';
import type { EslintCommentsRules } from './eslint-comments';
import type { GraphQLRules } from './graphql-eslint';
import type { ImportRules } from './import';
import type { JSDocRules } from './jsdoc';
import type { JsoncRules } from './jsonc';
import type { JsxA11yRules } from './jsx-a11y';
import type { NRules } from './n';
import type { NodeRules } from './node';
import type { PromiseRules } from './promise';
import type { ReactRules } from './react';
import type { ReactHooksRules } from './react-hooks';
import type { RuleConfig } from './rule-config';
import type { SonarJSRules } from './sonarjs';
import type { SpellcheckRules } from './spellcheck';
import type { TestingLibraryRules } from './testing-library';
import type { TypeScriptRules } from './typescript-eslint';
import type { UnicornRules } from './unicorn';
import type { VitestRules } from './vitest';
import type { VueRules } from './vue';
import type { VueI18nRules } from './vue-i18n';
import type { VuePugRules } from './vue-pug';
import type { YmlRules } from './yml';
export type { DeprecationRules } from './deprecation';
export type { EslintRules } from './eslint';
export type { EslintCommentsRules } from './eslint-comments';
export type { GraphQLRules } from './graphql-eslint';
export type { ImportRules } from './import';
export type { JSDocRules } from './jsdoc';
export type { JsoncRules } from './jsonc';
export type { JsxA11yRules } from './jsx-a11y';
export type { NRules } from './n';
export type { NodeRules } from './node';
export type { PromiseRules } from './promise';
export type { ReactRules } from './react';
export type { ReactHooksRules } from './react-hooks';
export type { RuleConfig } from './rule-config';
export type { SonarJSRules } from './sonarjs';
export type { SpellcheckRules } from './spellcheck';
export type { TestingLibraryRules } from './testing-library';
export type { TypeScriptRules } from './typescript-eslint';
export type { UnicornRules } from './unicorn';
export type { VitestRules } from './vitest';
export type { VueRules } from './vue';
export type { VueI18nRules } from './vue-i18n';
export type { VuePugRules } from './vue-pug';
export type { YmlRules } from './yml';
export * from './rule-config';
export * from './rule-severity';
export type BuiltinRules = MergeIntersection<
DeprecationRules &
EslintRules &
EslintCommentsRules &
GraphQLRules &
ImportRules &
JSDocRules &
JsoncRules &
JsxA11yRules &
NodeRules &
NRules &
PromiseRules &
ReactHooksRules &
ReactRules &
SonarJSRules &
SpellcheckRules &
TestingLibraryRules &
TypeScriptRules &
UnicornRules &
VitestRules &
VueRules &
VueI18nRules &
VuePugRules &
YmlRules
>;
/**
* Rules.
*
* @see [Rules](https://eslint.org/docs/user-guide/configuring/rules)
*/
export type Rules = Partial<BuiltinRules & Record<string, RuleConfig>>;