UNPKG

@tpointurier/configs

Version:

ESLint config presets

71 lines (52 loc) 2.46 kB
import { FlatConfigComposer } from 'eslint-flat-config-utils'; import { Linter } from 'eslint'; import { ParserOptions } from '@typescript-eslint/parser'; import { FlatGitignoreOptions } from 'eslint-config-flat-gitignore'; type FlatConfigItem = Omit<Linter.Config<Linter.RulesRecord>, 'plugins'> & { plugins?: Record<string, any>; }; type UserConfigItem = FlatConfigItem | Linter.FlatConfig; type Awaitable<T> = T | Promise<T>; interface OptionsTypeScriptWithTypes { tsconfigPath?: string | string[]; forceDecorators?: boolean; } interface OptionsTypeScriptParserOptions { parserOptions?: Partial<ParserOptions>; } type TPointurierOptions = { enableGitIgnore?: boolean | FlatGitignoreOptions; adonisjs?: boolean; jsonc?: boolean; prettier?: boolean; vue?: boolean; typescript?: boolean | ((OptionsTypeScriptWithTypes | OptionsTypeScriptParserOptions) & { typeAwareRules?: boolean; }); unocss?: boolean; react?: boolean; }; declare function vue(): Promise<FlatConfigItem[]>; declare function node(): Promise<FlatConfigItem[]>; declare function jsonc(): Promise<FlatConfigItem[]>; declare function jsdoc(): Promise<FlatConfigItem[]>; declare function unocss(): Promise<FlatConfigItem[]>; declare function ignores(userIgnores?: string[]): Promise<FlatConfigItem[]>; declare function imports(): Promise<FlatConfigItem[]>; declare function unicorn(): Promise<FlatConfigItem[]>; /** * Enable prettier rules */ declare function prettier(): Promise<FlatConfigItem[]>; declare function adonisjs(): Promise<FlatConfigItem[]>; declare function javascript(): Promise<FlatConfigItem[]>; declare function typescript(options?: OptionsTypeScriptWithTypes & OptionsTypeScriptParserOptions & { typeAwareRules?: boolean; enableForVue?: boolean; }): Promise<FlatConfigItem[]>; declare function perfectionist(): Promise<FlatConfigItem[]>; declare function sortPackageJson(): Promise<FlatConfigItem[]>; declare function sortTsconfig(): Promise<FlatConfigItem[]>; declare function react(): Promise<FlatConfigItem[]>; declare function tpointurier(options?: TPointurierOptions & Omit<FlatConfigItem, 'files'>, ...userConfigs: Awaitable<UserConfigItem | UserConfigItem[]>[]): FlatConfigComposer<FlatConfigItem>; export { adonisjs, ignores, imports, javascript, jsdoc, jsonc, node, perfectionist, prettier, react, sortPackageJson, sortTsconfig, tpointurier, typescript, unicorn, unocss, vue };