import { FlatCompat } from "@eslint/eslintrc"; import tseslint from 'typescript-eslint'; const compat = new FlatCompat({ baseDirectory: import.meta.dirname, }); export default tseslint.config( { ignores: ['.next'] }, ...compat.extends("next/core-web-vitals"), { files: ['**/*.ts', '**/*.tsx'], extends: [ ...tseslint.configs.recommended, ...tseslint.configs.recommendedTypeChecked, ...tseslint.configs.stylisticTypeChecked ], rules: { "@typescript-eslint/array-type": "off", "@typescript-eslint/consistent-type-definitions": "off", "@typescript-eslint/consistent-type-imports": [ "warn", { prefer: "type-imports", fixStyle: "inline-type-imports" }, ], "@typescript-eslint/no-unused-vars": ["warn", { argsIgnorePattern: "^_" }], "@typescript-eslint/require-await": "off", "@typescript-eslint/no-misused-promises": [ "error", { checksVoidReturn: { attributes: false } }, ], }, }, { linterOptions: { reportUnusedDisableDirectives: true }, languageOptions: { parserOptions: { projectService: true } } } )