{
    "root": true,
    "env": {
        "es6": true
    },
    "extends": [
        "airbnb",
        "airbnb/hooks",
        "airbnb-typescript",
        "plugin:jest/recommended",
        "plugin:jest/style",
        "prettier"
    ],
    "parser": "@typescript-eslint/parser",
    "parserOptions": {
        "ecmaVersion": 6,
        "sourceType": "module",
        "project": [
            "./tsconfig.json",
            "./libs/**/tsconfig.json",
            "./apps/**/tsconfig.json"
        ]
    },
    "plugins": ["@typescript-eslint", "jest"],
    "rules": {
        "import/prefer-default-export": "off",
        "import/no-cycle": "off",
        "@typescript-eslint/lines-between-class-members": "off",
        "@typescript-eslint/dot-notation": "off",
        "@typescript-eslint/naming-convention": "off",
        "@typescript-eslint/no-throw-literal": "off",
        "@typescript-eslint/no-shadow": [
            "error",
            {
                "allow": ["admin", "groups"]
            }
        ],
        "no-restricted-syntax": "off",
        "no-param-reassign": "off",
        "no-underscore-dangle": "off",
        "react/require-default-props": "off",
        "consistent-return": "off",
        "class-methods-use-this": "off",
        "import/no-extraneous-dependencies": "off",
        "no-console": ["warn", { "allow": ["info", "warn", "error"] }],
        "react/react-in-jsx-scope": "off",
        "no-nested-ternary": "off",
        "react/jsx-props-no-spreading": "off",
        "no-alert": "off"
    }
}
