module.exports = { parser: '@typescript-eslint/parser', plugins: ['react-refresh', '@typescript-eslint', 'import'], extends: [ 'airbnb-base', 'plugin:@typescript-eslint/recommended', 'plugin:@typescript-eslint/recommended-requiring-type-checking', 'prettier', ], root: true, parserOptions: { tsconfigRootDir: __dirname, project: ['./tsconfig.json'], extraFileExtensions: ['.cjs'], }, rules: { 'no-console': 0, 'import/extensions': 0, 'no-use-before-define': 'off', 'no-shadow': 'off', 'no-unused-vars': 'off', 'no-void': ['error', { allowAsStatement: true }], '@typescript-eslint/no-use-before-define': ['error'], '@typescript-eslint/no-shadow': ['error'], 'default-case': 'off', 'consistent-return': 'off', '@typescript-eslint/no-unused-vars': ['warn', { varsIgnorePattern: '^_' }], '@typescript-eslint/no-unsafe-return': ['error'], '@typescript-eslint/switch-exhaustiveness-check': ['error'], '@typescript-eslint/no-floating-promises': ['error', { ignoreVoid: true }], 'react-refresh/only-export-components': 'warn' }, settings: { 'import/resolver': { node: { extensions: ['.js', '.jsx', '.ts', '.tsx'], moduleDirectory: ['node_modules', 'src/'], }, typescript: {}, }, }, env: { browser: true, }, ignorePatterns: ['OLD/*', 'wailsjs/*', 'dist/*'], };