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"; export default tseslint.config( // "landing" is a self-contained Next.js sub-project with its own tooling; // "built-in skills" is bundled prompt content, not application code. { ignores: ["out", "release", "node_modules", "design-source", "landing", "built-in skills"] }, js.configs.recommended, ...tseslint.configs.recommended, { languageOptions: { ecmaVersion: 2022, globals: { ...globals.browser, ...globals.node }, }, plugins: { "react-hooks": reactHooks, "react-refresh": reactRefresh, }, rules: { ...reactHooks.configs.recommended.rules, "react-refresh/only-export-components": ["warn", { allowConstantExport: true }], "@typescript-eslint/no-explicit-any": "error", "@typescript-eslint/no-unused-vars": ["error", { argsIgnorePattern: "^_" }], }, }, { files: ["scripts/**/*.cjs"], rules: { "@typescript-eslint/no-require-imports": "off", }, }, );