1 import globals from "globals";
3 import tseslint from "typescript-eslint";
5 import js from "@eslint/js";
6 import eslintConfigPrettier from "eslint-config-prettier";
9 js.configs.recommended,
10 ...tseslint.configs.recommendedTypeChecked,
23 tsconfigRootDir: import.meta.dirname
26 files: ["src/**/*.mts"],
28 "@typescript-eslint/naming-convention": "warn",
29 "@typescript-eslint/no-unused-vars": "warn",
30 "@typescript-eslint/no-explicit-any": "warn",
31 "@typescript-eslint/array-type": ["error", { default: "array-simple" }],
32 "@typescript-eslint/consistent-type-imports": ["error", { prefer: "type-imports" }],
33 "@typescript-eslint/explicit-function-return-type": ["error", { allowExpressions: true }],
34 "@typescript-eslint/consistent-type-exports": "error",
38 "no-throw-literal": "warn",
40 "no-mixed-requires": "error",
41 "no-this-before-super": "warn",
42 "no-unreachable": "warn",
43 "no-unused-vars": "off",
44 "max-len": ["warn", { code: 80, comments: 100, ignoreComments: false }],
45 "no-fallthrough": "warn",
46 "newline-before-return": "warn",
47 "no-return-await": "warn",
48 "arrow-body-style": ["error", "as-needed"],
49 "no-unexpected-multiline": "error"