{
  "extends": "tslint:latest",
  "rules": {

    "array-type": [true, "array"],
    "ban": [
      true,
      "setInterval",
      "setTimeout"
    ],
    "ban-types": {
      "options": [
        ["Object", "Avoid using the `Object` type. Did you mean `object`?"],
        ["Function", "Avoid using the `Function` type. Prefer a specific function type, like `() => void`, or use `ts.AnyFunction`."],
        ["Boolean", "Avoid using the `Boolean` type. Did you mean `boolean`?"],
        ["Number", "Avoid using the `Number` type. Did you mean `number`?"],
        ["String", "Avoid using the `String` type. Did you mean `string`?"]
      ]
    },
    "class-name": true,
    "comment-format": [true,
      "check-space"
    ],
    "curly":[true, "ignore-same-line"],

    "indent": [true,
      "spaces"
    ],
    "interface-name": [true, "never-prefix"],
    "interface-over-type-literal": true,
    "jsdoc-format": true,
    "linebreak-style": false,


    "no-eval": true,
    "no-inferrable-types": true,
    "no-internal-module": true,
    "no-null-keyword": true,
    "no-switch-case-fall-through": true,
    "no-trailing-whitespace": [true, "ignore-template-strings"],
    "no-var-keyword": true,
    "object-literal-shorthand": true,
    "one-line": [true,
        "check-open-brace",
        "check-whitespace"
    ],
    "prefer-const": true,
    "quotemark": false,
    "semicolon": false,
    "space-within-parens": true,
    "triple-equals": true,
    "typedef-whitespace": [
      true,
      {
        "call-signature": "nospace",
        "index-signature": "nospace",
        "parameter": "nospace",
        "property-declaration": "nospace",
        "variable-declaration": "nospace"
      },
      {
        "call-signature": "onespace",
        "index-signature": "onespace",
        "parameter": "onespace",
        "property-declaration": "onespace",
        "variable-declaration": "onespace"
      }
    ],
    "whitespace": [true,
      "check-decl",
      "check-operator",
      "check-module",
      "check-separator",
      "check-type"
    ],

    "no-implicit-dependencies": [true, "dev"],
    "object-literal-key-quotes": [true, "consistent-as-needed"],
    "variable-name": [true, "ban-keywords", "check-format", "allow-leading-underscore"],

    "arrow-parens": false,
    "arrow-return-shorthand": false,
    "ban-types": false,
    "forin": false,
    "member-access": false,
    "no-conditional-assignment": false,
    "no-console": false,
    "no-debugger": false,
    "no-empty-interface": false,
    "no-object-literal-type-assertion": false,
    "no-shadowed-variable": false,
    "no-submodule-imports": false,
    "no-var-requires": false,
    "ordered-imports": false,
    "prefer-conditional-expression": false,
    "radix": false,
    "trailing-comma": false,

    "align": false,
    "eofline": false,
    "max-line-length": false,
    "no-consecutive-blank-lines": false,
    "space-before-function-paren": false,

    "ban-comma-operator": false,
    "max-classes-per-file": [true, 1],
    "member-ordering": false,
    "no-angle-bracket-type-assertion": false,
    "no-bitwise": false,
    "no-namespace": false,
    "no-reference": false,
    "object-literal-sort-keys": false,
    "one-variable-per-declaration": false
	}
}
