{
    "root": true,
    "plugins": ["@typescript-eslint"],
    "extends":
    [
        "eslint:recommended",
        "plugin:@typescript-eslint/recommended"
    ],
    "env":
    {
        "browser": true,
        "es2021": true
    },
    "rules":
    {
        "prefer-const": "off",
        "no-extra-boolean-cast": "off",
        "@typescript-eslint/no-non-null-assertion": "off",
        "no-constant-condition": "off",

        //this needs to stay off until we have good types across the app 
        "@typescript-eslint/no-explicit-any": "off",

        //disable the base rule as it can report incorrect errors
        "no-unused-vars": "off",
        "@typescript-eslint/no-unused-vars":
        [
            "warn",
            {
                "args": "all",
                "argsIgnorePattern": "^_",
                "caughtErrors": "all",
                "destructuredArrayIgnorePattern": ".*",
                "varsIgnorePattern": "^_",
                "ignoreRestSiblings": true
            }
        ]
    }
}
