import js from '@eslint/js' import globals from 'globals' import reactHooks from 'eslint-plugin-react-hooks' import reactRefresh from 'eslint-plugin-react-refresh' import tseslint from 'typescript-eslint' import stylistic from '@stylistic/eslint-plugin' export default tseslint.config( {ignores: ['dist']}, { extends: [ js.configs.recommended, ...tseslint.configs.recommendedTypeChecked, ...tseslint.configs.stylisticTypeChecked, ], files: ['**/*.{ts,tsx}'], languageOptions: { ecmaVersion: 2020, globals: globals.browser, parserOptions: { project: ['./tsconfig.node.json', './tsconfig.app.json'], tsconfigRootDir: import.meta.dirname, }, }, plugins: { 'react-hooks': reactHooks, 'react-refresh': reactRefresh, //'stylistic/js': stylisticJs stylistic }, rules: { ...reactHooks.configs.recommended.rules, //'brace-style': ['error', 'allman'], 'react-refresh/only-export-components': [ 'warn', {allowConstantExport: true}, ], "@typescript-eslint/no-unused-vars": ["warn", { "vars": "all", "args": "all", "caughtErrors": "all", "ignoreRestSiblings": false, "reportUsedIgnorePattern": false }], "prefer-const": ["warn", { "destructuring": "any", "ignoreReadBeforeAssign": false }], // Formatting: "stylistic/brace-style": [ 'error', 'allman', { allowSingleLine: false } ] }, }, )