diff --git a/tslint.json b/tslint.json index 7cecb9d18..ec7b715c0 100644 --- a/tslint.json +++ b/tslint.json @@ -1,17 +1,115 @@ { "rules": { - "no-duplicate-variable": true, - "no-unused-variable": [ - true - ], - "max-line-length": { - "options": [132] - }, - }, - "jsRules": { - "max-line-length": { - "options": [132] + "adjacent-overload-signatures": true, + "member-access": [true, "no-public", "check-parameter-property"], + "member-ordering": [ + true, + { + "order": [ + "public-static-field", + "public-instance-field", + "public-constructor", + "private-static-field", + "private-instance-field", + "private-constructor", + "public-instance-method", + "protected-instance-method", + "private-instance-method" + ] } + ], + "no-empty-interface": true, + "no-inferrable-types": true, + "no-duplicate-variable": [true, "check-parameters"], + "no-unused-variable": true, + "no-non-null-assertion": true, + "no-unnecessary-type-assertion": true, + "only-arrow-functions": [true, "allow-declarations", "allow-named-functions"], + "prefer-for-of": true, + "promise-function-async": true, + "typedef": [true, "call-signature", "arrow-call-signature", "parameter", "property-declaration", + "object-destructuring", "array-destructuring"], + "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" + } + ], + "unified-signatures": true, + "await-promise": true, + "ban-comma-operator": true, + "curly": true, + "forin": true, + "label-position": true, + "no-bitwise": true, + "no-conditional-assignment": true, + "no-console": [true], + "no-construct": true, + "no-debugger": true, + "no-duplicate-super": true, + "no-duplicate-switch-case": true, + "no-duplicate-variable": [true, "check-parameters"], + "no-dynamic-delete": true, + "no-empty": true, + "no-eval": true, + "no-floating-promises": true, + "no-for-in-array": true, + "no-inferred-empty-object-type": true, + "no-invalid-this": true, + "no-this-assignment": true, + "no-unsafe-any": true, + "no-var-keyword": true, + "switch-default": true, + "typeof-compare": true, + "use-default-type-parameter": true, + "use-isnan": true, + "deprecation": true, + "eofline": true, + "indent": [true, "spaces", 4], + "linebreak-style": [true, "LF"], + "max-line-length": [true, 132], + "no-duplicate-imports": true, + "object-literal-sort-keys": true, + "prefer-const": true, + "prefer-readonly": true, + "arrow-parens": true, + "binary-expression-operand-order": true, + "class-name": true, + "comment-format": [true, "check-space", "check-uppercase", {"ignore-words": ["you", "distributed", "limitations", "http"]}], + "completed-docs": true, + "encoding": true, + "file-header": [true, "Copyright \\d{4}"], + "jsdoc-format": [true, "check-multiline-start"], + "newline-before-return": true, + "new-parens": true, + "no-consecutive-blank-lines": true, + "no-irregular-whitespace": true, + "no-trailing-whitespace": true, + "no-unnecessary-callback-wrapper": true, + "object-literal-key-quotes": [true, "consistent-as-needed"], + "quotemark": [true, "single"], + "semicolon": [true, "always"], + "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-typecast", "check-type-operator", "check-preblock"], + "ban-types": [ + true, + ["Boolean", "Use 'boolean' instead."], + ["Number", "Use 'number' instead."], + ["String", "Use 'string' instead."], + ["Object", "Use {} instead."] + ] }, "rulesDirectory": [ "node_modules/tslint-eslint-rules/dist/rules"