@truenine/eslint9-config
Version:
ESLint 9 configuration package for Compose Client projects with TypeScript, Vue, and modern JavaScript support
31 lines (30 loc) • 1.44 kB
JavaScript
//#region src/presets/typescript-rules.ts
/**
* TypeScript 专用规则配置
* 包含 @typescript-eslint 插件的规则,用于增强 TypeScript 代码质量。
* 这些规则需要类型信息,因此需要配置 parserOptions.project。
*/
const typescriptRulesPreset = {
"@typescript-eslint/prefer-optional-chain": "error",
"@typescript-eslint/prefer-nullish-coalescing": "error",
"@typescript-eslint/prefer-includes": "error",
"@typescript-eslint/prefer-string-starts-ends-with": "error",
"@typescript-eslint/prefer-for-of": "error",
"@typescript-eslint/prefer-reduce-type-parameter": "error",
"@typescript-eslint/prefer-regexp-exec": "error",
"@typescript-eslint/promise-function-async": "error",
"@typescript-eslint/unbound-method": "off",
"@typescript-eslint/switch-exhaustiveness-check": "off",
"@typescript-eslint/no-unnecessary-condition": "off",
"@typescript-eslint/array-type": ["error", { default: "array" }],
"@typescript-eslint/no-unnecessary-type-assertion": "error",
"@typescript-eslint/no-unnecessary-type-constraint": "error",
"@typescript-eslint/no-unnecessary-type-arguments": "error",
"@typescript-eslint/no-unnecessary-boolean-literal-compare": "error",
"@typescript-eslint/no-namespace": "error",
"@typescript-eslint/prefer-function-type": "error",
"@typescript-eslint/prefer-as-const": "error"
};
//#endregion
export { typescriptRulesPreset };
//# sourceMappingURL=typescript-rules.mjs.map