import eslint from "@eslint/js"; import { defineConfig } from "eslint/config"; import eslintPluginPrettierRecommended from "eslint-plugin-prettier/recommended"; import { reactRefresh } from "eslint-plugin-react-refresh"; import sort from "eslint-plugin-sort"; import tseslint from "typescript-eslint"; export default defineConfig({ extends: [ eslint.configs.all, sort.configs["flat/recommended"], tseslint.configs.strictTypeChecked, tseslint.configs.stylisticTypeChecked, reactRefresh.configs.recommended(), eslintPluginPrettierRecommended, ], files: ["**/*.ts", "**/*.tsx"], languageOptions: { parser: tseslint.parser, parserOptions: { projectService: { allowDefaultProject: ["eslint.config.js"], defaultProject: "tsconfig.json", }, }, }, rules: { "no-magic-numbers": "off", "no-ternary": "off", "func-style": "off", "sort-imports": "off", "sort-vars": "off", "@typescript-eslint/only-throw-error": "off", "capitalized-comments": "off", "max-lines-per-function": ["error", 100], }, });