import { defineConfig, globalIgnores } from 'eslint/config'; import nextVitals from 'eslint-config-next/core-web-vitals'; import nextTypeScript from 'eslint-config-next/typescript'; import prettier from 'eslint-config-prettier'; export default defineConfig([ ...nextVitals, ...nextTypeScript, prettier, { rules: { 'no-console': ['error', { allow: ['log', 'warn', 'error'] }], }, }, { files: ['**/*.{ts,tsx}'], languageOptions: { parserOptions: { projectService: true, tsconfigRootDir: import.meta.dirname, }, }, rules: { '@typescript-eslint/consistent-type-imports': [ 'error', { prefer: 'type-imports', fixStyle: 'inline-type-imports' }, ], '@typescript-eslint/no-floating-promises': 'error', '@typescript-eslint/switch-exhaustiveness-check': 'error', }, }, globalIgnores([ '.next/**', 'coverage/**', 'playwright-report/**', 'test-results/**', 'contracts/**', 'next-env.d.ts', ]), ]);