{
  "extends": [
    "tslint-eslint-rules"
  ],
  "rulesDirectory": [
    "node_modules/codelyzer"
  ],
  "rules": {
    "max-line-length": [true, 120],
    "class-name": true,
    "comment-format": [true, "check-space"],
    "indent": [true, "spaces"],
    "eofline": true,
    "no-duplicate-variable": true,
    "no-eval": true,
    "no-arg": true,
    "no-internal-module": true,
    "no-bitwise": true,
    "no-shadowed-variable": true,
    "no-unused-expression": true,
    "one-line": [true, "check-catch", "check-else", "check-open-brace", "check-whitespace"],
    "quotemark": [true, "single", "avoid-escape"],
    "semicolon": true,
    "typedef-whitespace": [
      true,
      {
        "call-signature": "nospace",
        "index-signature": "nospace",
        "parameter": "nospace",
        "property-declaration": "nospace",
        "variable-declaration": "nospace"
      }
    ],
    "curly": true,
    "variable-name": [true, "ban-keywords", "check-format", "allow-leading-underscore"],
    "whitespace": [true, "check-branch", "check-decl", "check-operator", "check-module", "check-separator", "check-type", "check-preblock"],
    "no-constant-condition": true,
    "no-control-regex": true,
    "no-debugger": true,
    "no-duplicate-case": true,
    "no-empty-character-class": true,
    "no-ex-assign": true,
    "no-extra-boolean-cast": true,
    "no-extra-semi": true,
    "no-inner-declarations": [true, "functions"],
    "no-invalid-regexp": true,
    "no-irregular-whitespace": true,
    "no-regex-spaces": true,
    "no-sparse-arrays": true,
    "no-unsafe-finally": true,
    "use-isnan": true,
    "valid-typeof": true,
    "label-position": true,
    "no-multi-spaces": [
      true,
      {
        "exceptions": {
          "BinaryExpression": true,
          "PropertyAssignment": false,
          "VariableDeclarator": false,
          "ImportDeclaration": false
        }
      }
    ],
    "no-use-before-declare": true,
    "array-bracket-spacing": [true, "never"],
    "block-spacing": [
      true,
      "always"
    ],
    "brace-style": [
      true,
      "1tbs",
      {
        "allowSingleLine": true
      }
    ],
    "new-parens": true,
    "no-consecutive-blank-lines": [true, 2],
    "object-curly-spacing": [true, "always"],
    "ter-arrow-spacing": [
      true,
      {
        "before": true,
        "after": true
      }
    ],
    "no-var-keyword": true,
    "prefer-const": true,
    "trailing-comma": [
      true,
      {
        "multiline": "always",
        "singleline": "never"
      }
    ],
    "no-conditional-assignment": true,
    "no-console": [true, "log"],
    "space-in-parens": ["error", "info", "never"],
    "number-literal-format": true,
    "no-invalid-template-strings": true,
    "prefer-template": true,
    "no-unnecessary-callback-wrapper": true,
    "member-access": [true, "no-public"],
    "no-empty-interface": true,
    "no-reference": true,
    "prefer-for-of": true,
    "forin": true,
    "no-duplicate-super": true,
    "triple-equals": true,
    "array-type": [true, "array"],
    "arrow-return-shorthand": true,
    "no-boolean-literal-compare": true,
    "object-literal-shorthand": true,

    "directive-selector": [true, "attribute", ["nga", "ngd", "ngt"], "camelCase"],
    "component-selector": [true, "element", ["nga", "ngd", "ngt"], "kebab-case"],
    "use-input-property-decorator": true,
    "use-output-property-decorator": true,
    "use-host-property-decorator": true,
    "no-attribute-parameter-decorator": true,
    "no-input-rename": true,
    "no-output-rename": true,
    "no-forward-ref": true,
    "use-life-cycle-interface": true,
    "use-pipe-transform-interface": true,
    "pipe-naming": [true, "camelCase", ["nga", "ngd", "ngt"]],
    "component-class-suffix": true,
    "directive-class-suffix": true,
    "templates-use-public": true,
    "no-access-missing-member": true,
    "invoke-injectable": true,
    "template-to-ng-template": true
  }
}
