{
    "rulesDirectory": [
        "node_modules/codelyzer"
    ],
    "rules": {
        "ordered-imports": [
            true
        ],
        "space-before-function-paren": [true, "always"],
        "import-spacing": true,
        "interface-over-type-literal": true,
        "no-empty-interface": true,
        "no-string-throw": true,
        "typeof-compare": true,
        "unified-signatures": true,
        "class-name": true,
        "comment-format": [
            true,
            "check-space"
        ],
        "curly": [true, "ignore-same-line"],
        "eofline": true,
        "forin": true,
        "indent": [
        true,
            "spaces"
        ],
        "label-position": true,
        "max-line-length": [
            true,
            140
        ],
        "member-access": false,
        "member-ordering": [
            true,
            {
                "order": [
                    "static-field",
                    "instance-field",
                    "constructor",
                    "public-instance-method",
                    "protected-instance-method",
                    "private-instance-method"
                ]
            }
        ],
        "no-arg": true,
        "no-bitwise": true,
        "no-console": [
            true,
            "debug",
            "info",
            "time",
            "timeEnd",
            "trace"
        ],
        "no-construct": true,
        "no-debugger": true,
        "no-duplicate-variable": true,
        "no-empty": false,
        "no-eval": true,
        "no-inferrable-types": [true, "ignore-params"],
        "no-shadowed-variable": true,
        "no-string-literal": false,
        "no-switch-case-fall-through": true,
        "no-trailing-whitespace": true,
        "no-unused-expression": true, // Needs type checking, but activating it causes node_modules to be parsed
        "no-unused-variable": true,   // see https://github.com/palantir/tslint/issues/1603
        "no-use-before-declare": true,
        "no-var-keyword": true,
        "object-literal-sort-keys": false,
        "one-line": [
            true,
            "check-open-brace",
            "check-catch",
            "check-whitespace"
        ],
        "quotemark": [
        true,
            "single"
        ],
        "radix": true,
        "semicolon": [
            "always"
        ],
        "triple-equals": [
            true,
            "allow-null-check"
        ],
        "typedef-whitespace": [
            true,
            {
                "call-signature": "nospace",
                "index-signature": "nospace",
                "parameter": "nospace",
                "property-declaration": "nospace",
                "variable-declaration": "nospace"
            }
        ],
        "variable-name": false,
        "whitespace": [
            true,
            "check-branch",
            "check-decl",
            "check-operator",
            "check-separator",
            "check-type",
            "check-typecast",
            "check-preblock",
            "check-module" // not working for now, see https://github.com/palantir/tslint/issues/2401, will be resolved in tslint 5.5
        ]
    }
}