import js from "@eslint/js"; import globals from "globals"; import tsParser from "@typescript-eslint/parser"; import tsPlugin from "@typescript-eslint/eslint-plugin"; /** @type {import('eslint').Linter.Config[]} */ export default [ { ignores: ["node_modules/**", ".next/**", "out/**", "build/**", "next-env.d.ts"] }, js.configs.recommended, { files: ["**/*.{js,mjs,cjs,jsx}"], languageOptions: { ecmaVersion: "latest", sourceType: "module", globals: { ...globals.browser, ...globals.node, ...globals.es2021, React: "readonly", NodeJS: "readonly", PermissionState: "readonly", }, parserOptions: { ecmaFeatures: { jsx: true, }, }, }, rules: { "no-unused-vars": "warn", "no-console": "off", }, }, { files: ["**/*.{ts,tsx}"], languageOptions: { parser: tsParser, parserOptions: { ecmaFeatures: { jsx: true, }, ecmaVersion: "latest", sourceType: "module", }, globals: { ...globals.browser, ...globals.node, ...globals.es2021, React: "readonly", NodeJS: "readonly", PermissionState: "readonly", }, }, plugins: { "@typescript-eslint": tsPlugin, }, rules: { ...tsPlugin.configs.recommended.rules, "@typescript-eslint/no-unused-vars": "warn", "no-unused-vars": "off", }, }, ];