Files
gen-doctests/eslint.config.ts
T

64 lines
1.3 KiB
TypeScript

import js from "@eslint/js";
import tseslint from "typescript-eslint";
import { defineConfig, globalIgnores } from "eslint/config";
export default defineConfig([
globalIgnores(["dist"]),
{
files: ["**/*.{ts,tsx}"],
extends: [
js.configs.recommended,
tseslint.configs.strictTypeChecked,
tseslint.configs.stylisticTypeChecked,
],
rules: {
"@typescript-eslint/array-type": [
"error",
{
default: "array",
},
],
"@typescript-eslint/consistent-generic-constructors": [
"error",
"constructor",
],
"@typescript-eslint/no-unsafe-type-assertion": "error",
"@typescript-eslint/strict-boolean-expressions": "error",
"@typescript-eslint/switch-exhaustiveness-check": [
"error",
{
requireDefaultForNonUnion: true,
considerDefaultExhaustiveForUnions: true,
},
],
"no-extra-boolean-cast": "off",
"no-fallthrough": [
"error",
{
reportUnusedFallthroughComment: true,
},
],
"@typescript-eslint/no-unused-vars": [
"error",
{
varsIgnorePattern: "^_",
reportUsedIgnorePattern: true,
},
],
"@typescript-eslint/no-unnecessary-condition": [
"error",
{
allowConstantLoopConditions:
"only-allowed-literals",
},
],
"no-empty-pattern": "off",
},
languageOptions: {
parserOptions: {
projectService: true,
},
},
},
]);