{
  "extends": [
    "plugin:@typescript-eslint/recommended",
    "plugin:react/recommended",
    "plugin:sonarjs/recommended"
  ],
  "plugins": ["sonarjs", "react"],
  "rules": {
    "sonarjs/no-duplicate-string": ["error"],
    "sonarjs/no-all-duplicated-branches": ["error"],
    "sonarjs/no-element-overwrite": ["error"],
    "sonarjs/no-collection-size-mischeck": ["error"],
    "sonarjs/no-identical-functions": ["error"],
    "sonarjs/no-inverted-boolean-check": ["error"],
    "sonarjs/no-nested-template-literals": ["error"],
    "sonarjs/no-redundant-boolean": ["error"],
    "sonarjs/no-use-of-empty-return-value": ["error"],
    "sonarjs/prefer-object-literal": ["error"],
    "sonarjs/prefer-single-boolean-return": ["error"],
    "react/react-in-jsx-scope": ["off"],
    "react/prop-types": ["off"],
    "@typescript-eslint/no-unused-vars": ["error"],
    "@typescript-eslint/explicit-function-return-type": ["error"],
    "@typescript-eslint/no-explicit-any": ["error"],
    "jsx-a11y/label-has-associated-control": ["error"],
    "jsx-a11y/alt-text": ["error"]
  }
}
