{
  "env": {
    "browser": true,
    "es2021": true
  },
  "extends": [
    "eslint:recommended",
    "plugin:@typescript-eslint/recommended",
    "plugin:@typescript-eslint/recommended-requiring-type-checking",
    "plugin:@typescript-eslint/strict"
  ],
  "overrides": [],
  "parser": "@typescript-eslint/parser",
  "parserOptions": {
    "ecmaVersion": "latest",
    "sourceType": "module",
    "tsconfigRootDir": ".",
    "project": [
      "./tsconfig.json"
    ]
  },
  "plugins": [
    "@typescript-eslint",
    "header"
  ],
  "rules": {
    "indent": [
      "error",
      4
    ],
    "quotes": [
      "error",
      "double"
    ],
    "semi": [
      "error",
      "always"
    ],
    "@typescript-eslint/no-floating-promises": [
      "error",
      {
        "ignoreVoid": true
      }
    ],
    "@typescript-eslint/no-non-null-assertion": [
      "off"
    ],
    "@typescript-eslint/no-unused-vars": [
      "error",
      {
        "argsIgnorePattern": "^_"
      }
    ],
    "@typescript-eslint/no-unsafe-argument": [
      "off"
    ],
    "@typescript-eslint/no-unsafe-assignment": [
      "off"
    ],
    "@typescript-eslint/no-unsafe-call": [
      "off"
    ],
    "@typescript-eslint/no-unsafe-member-access": [
      "off"
    ],
    "@typescript-eslint/no-unsafe-return": [
      "off"
    ],
    "@typescript-eslint/restrict-template-expressions": [
      "off"
    ],
    "header/header": [
      2,
      "line",
      [
        " Copyright (c) Microsoft Corporation.",
        " Licensed under the MIT License."
      ],
      2
    ]
  }
}