{
    "env": {
        "node": true,
        "commonjs": true,
        "es6": true
    },
    "parser": "@typescript-eslint/parser",
    "globals": {
        "BigInt": true
    },
    "extends": [
        "eslint:recommended",
        "plugin:@typescript-eslint/recommended"
    ],
    "plugins": [
        "@typescript-eslint"
    ],
    "rules": {
        "require-atomic-updates": "warn",
        "no-case-declarations": "off",
        "no-empty": "off",
        "no-console": "off",
        "linebreak-style": "off",
        "no-global-assign": "off",
        "prefer-const": "error",
        "no-var": "error",
        "no-unused-vars": "off",
        "@typescript-eslint/no-unused-vars": ["error", { "argsIgnorePattern": "^_" }],
        "no-extra-semi": "off",
        "@typescript-eslint/no-extra-semi": "error",
        "@typescript-eslint/no-empty-interface": "warn",
        "@typescript-eslint/no-inferrable-types": "off",
        "@typescript-eslint/typedef": "error",
        "@typescript-eslint/explicit-function-return-type": "error",
        "keyword-spacing": "off",
        "@typescript-eslint/keyword-spacing": "error",
        "curly": "error",
        "brace-style": "error",
        "one-var": [
            "error",
            "never"
        ],
        "indent": [
            "error",
            "tab",
            {
                "SwitchCase": 1
            }
        ],
        "quotes": [
            "error",
            "single"
        ],
        "semi": [
            "error",
            "always"
        ]
    }
}