{
  "extends": [
    "./tslint-base.json",
    "tslint:recommended",
    "tslint-eslint-rules",
    "typestrict",
    "tslint-sonarts",
    "tslint-immutable",
    "tslint-plugin-prettier",
    "tslint-config-prettier"
  ],
  "rules": {
    // disabled temporarily
    "interface-name": false,
    "no-empty-interface": false,
    "object-literal-sort-keys": false,
    "interface-over-type-literal": false,
    "no-var-requires": false,

    // disabled for making our life easier
    "no-duplicate-string": false,
    "no-small-switch": false,
    "no-useless-intersection": false,
    "no-submodule-imports": false,
    "member-ordering": false,

    // custom rules
    "prettier": true,
    "no-tslint-disable-all": true,

    // tslint-immutable: Recommended built-in rules
    "no-var-keyword": true,
    // "typedef": [true, "call-signature"],

    // tslint-immutable: Immutability rules
    // "readonly-keyword": true,
    "readonly-array": true,
    "no-let": true,
    "no-object-mutation": true,
    "no-method-signature": true
  }
}
