UNPKG

eslint-plugin-oxlint

Version:
153 lines 5.16 kB
import { Linter } from "eslint"; //#region src/config-helper.d.ts type FlatConfig = { name?: string; rules?: Record<string, 'off'>; ignores?: string[]; }; type SplittedFlatConfig<C extends FlatConfig> = [C] | [C, FlatConfig]; //#endregion //#region src/build-from-oxlint-config/types.d.ts declare const oxlintConfigMeta: unique symbol; type BuildFromOxlintConfigOptions = { withNursery?: boolean; typeAware?: boolean; }; type OxlintConfigExtendsPath = string; type OxlintConfigExtendsResolved = OxlintConfig; type OxlintConfigExtends = (OxlintConfigExtendsPath | OxlintConfigExtendsResolved)[]; type OxlintConfigPlugins = string[]; type OxlintConfigCategories = Record<string, unknown>; type OxlintConfigRules = Record<string, unknown>; type OxlintConfigIgnorePatterns = string[]; type OxlintOptions = { typeAware?: boolean; typeCheck?: boolean; }; type EslintPluginOxlintConfig = Linter.Config<Record<string, 'off'>>; type OxlintConfig = { [key: string]: unknown; extends?: OxlintConfigExtends; plugins?: OxlintConfigPlugins; categories?: OxlintConfigCategories; rules?: OxlintConfigRules; ignorePatterns?: OxlintConfigIgnorePatterns; options?: OxlintOptions; [oxlintConfigMeta]?: { filePath: string; }; }; //#endregion //#region src/index.d.ts declare const _default: { configs: { readonly 'flat/pedantic': SplittedFlatConfig<{ readonly name: "oxlint/pedantic"; readonly rules: Record<string, "off">; }>; readonly 'flat/style': SplittedFlatConfig<{ readonly name: "oxlint/style"; readonly rules: Record<string, "off">; }>; readonly 'flat/suspicious': SplittedFlatConfig<{ readonly name: "oxlint/suspicious"; readonly rules: Record<string, "off">; }>; readonly 'flat/restriction': SplittedFlatConfig<{ readonly name: "oxlint/restriction"; readonly rules: Record<string, "off">; }>; readonly 'flat/correctness': SplittedFlatConfig<{ readonly name: "oxlint/correctness"; readonly rules: Record<string, "off">; }>; readonly 'flat/perf': SplittedFlatConfig<{ readonly name: "oxlint/perf"; readonly rules: Record<string, "off">; }>; readonly 'flat/nursery': SplittedFlatConfig<{ readonly name: "oxlint/nursery"; readonly rules: Record<string, "off">; }>; readonly 'flat/eslint': SplittedFlatConfig<{ readonly name: "oxlint/eslint"; readonly rules: Record<string, "off">; }>; readonly 'flat/import': SplittedFlatConfig<{ readonly name: "oxlint/import"; readonly rules: Record<string, "off">; }>; readonly 'flat/jest': SplittedFlatConfig<{ readonly name: "oxlint/jest"; readonly rules: Record<string, "off">; }>; readonly 'flat/jsdoc': SplittedFlatConfig<{ readonly name: "oxlint/jsdoc"; readonly rules: Record<string, "off">; }>; readonly 'flat/jsx-a11y': SplittedFlatConfig<{ readonly name: "oxlint/jsx-a11y"; readonly rules: Record<string, "off">; }>; readonly 'flat/nextjs': SplittedFlatConfig<{ readonly name: "oxlint/nextjs"; readonly rules: Record<string, "off">; }>; readonly 'flat/node': SplittedFlatConfig<{ readonly name: "oxlint/node"; readonly rules: Record<string, "off">; }>; readonly 'flat/promise': SplittedFlatConfig<{ readonly name: "oxlint/promise"; readonly rules: Record<string, "off">; }>; readonly 'flat/react': SplittedFlatConfig<{ readonly name: "oxlint/react"; readonly rules: Record<string, "off">; }>; readonly 'flat/react-hooks': SplittedFlatConfig<{ readonly name: "oxlint/react-hooks"; readonly rules: Record<string, "off">; }>; readonly 'flat/react-perf': SplittedFlatConfig<{ readonly name: "oxlint/react-perf"; readonly rules: Record<string, "off">; }>; readonly 'flat/typescript': SplittedFlatConfig<{ readonly name: "oxlint/typescript"; readonly rules: Record<string, "off">; }>; readonly 'flat/unicorn': SplittedFlatConfig<{ readonly name: "oxlint/unicorn"; readonly rules: Record<string, "off">; }>; readonly 'flat/vitest': SplittedFlatConfig<{ readonly name: "oxlint/vitest"; readonly rules: Record<string, "off">; }>; readonly 'flat/vue': SplittedFlatConfig<{ readonly name: "oxlint/vue"; readonly rules: Record<string, "off">; }>; readonly recommended: { plugins: string[]; rules: Record<string, "off">; }; readonly all: { plugins: string[]; rules: Record<string, "off">; }; readonly 'flat/all': SplittedFlatConfig<{ name: string; rules: Record<string, "off">; }>; readonly 'flat/recommended': SplittedFlatConfig<{ name: string; rules: Record<string, "off">; }>; }; buildFromOxlintConfig: (config: OxlintConfig, options?: BuildFromOxlintConfigOptions) => EslintPluginOxlintConfig[]; buildFromOxlintConfigFile: (oxlintConfigFile: string, options?: BuildFromOxlintConfigOptions) => EslintPluginOxlintConfig[]; }; //#endregion export { _default as default };