eslint.config.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. const { defineConfig } = require("eslint/config")
  2. const tsParser = require("@typescript-eslint/parser")
  3. const typescriptEslint = require("@typescript-eslint/eslint-plugin")
  4. const globals = require("globals")
  5. const js = require("@eslint/js")
  6. const { FlatCompat } = require("@eslint/eslintrc")
  7. const compat = new FlatCompat({
  8. baseDirectory: __dirname,
  9. recommendedConfig: js.configs.recommended,
  10. allConfig: js.configs.all,
  11. })
  12. module.exports = defineConfig([
  13. {
  14. languageOptions: {
  15. parser: tsParser,
  16. globals: {
  17. ...globals.node,
  18. ...globals.commonjs,
  19. },
  20. },
  21. plugins: {
  22. "@typescript-eslint": typescriptEslint,
  23. },
  24. extends: compat.extends(
  25. "eslint:recommended",
  26. "plugin:@typescript-eslint/eslint-recommended",
  27. "plugin:@typescript-eslint/recommended"
  28. ),
  29. rules: {
  30. "@typescript-eslint/no-unused-vars": [
  31. "error",
  32. {
  33. args: "all",
  34. argsIgnorePattern: "^_",
  35. varsIgnorePattern: "^_assert",
  36. caughtErrors: "none",
  37. ignoreRestSiblings: true,
  38. },
  39. ],
  40. "no-mixed-spaces-and-tabs": ["error", "smart-tabs"],
  41. },
  42. },
  43. ])