{
  "extends": ["plugin:@typescript-eslint/recommended", "prettier"],
  "plugins": ["simple-import-sort", "n"],

  "parserOptions": {
    "project": "./tsconfig.json"
  },

  "env": {
    "browser": false,
    "node": true
  },

  "rules": {
    "n/prefer-node-protocol": "error",
    "simple-import-sort/imports": "error",
    "simple-import-sort/exports": "error",
    "import/no-extraneous-dependencies": 0,
    "no-underscore-dangle": ["error", {"allow": ["_id"]}],
    "@typescript-eslint/lines-between-class-members": ["error", "always", {"exceptAfterSingleLine": true}],
    "@typescript-eslint/no-unused-vars": ["error", {"argsIgnorePattern": "^_"}]
  },
  "overrides": [
    {
      "files": ["*.js", "*.jsx"],
      "extends": ["prettier"],
      "parser": "@babel/eslint-parser",
      "rules": {
        "@typescript-eslint/no-var-requires": 0
      }
    }
  ]
}
