{
  "extends": "tslint:recommended",
  "linterOptions": {
    "exclude": ["src/http/nodegen/**/*", "src/domains/__mocks__/**/*"]
  },
  "rules": {
    "object-literal-shorthand": false,
    "ordered-imports": false,
    "object-literal-sort-keys": false,
    "max-line-length": [
      true,
      {
        "limit": 240,
        "ignore-pattern": "^import |^export {(.*?)}"
      }
    ],
    "class-name": true,
    "comment-format": [
      true,
      "check-space"
    ],
    "prefer-for-of": false,
    "indent": [
      true,
      "spaces"
    ],
    "one-line": [
      true,
      "check-open-brace",
      "check-whitespace"
    ],
    "no-var-requires": false,
    "no-var-keyword": true,
    "quotemark": [
      true,
      "single",
      "avoid-escape"
    ],
    "semicolon": [
      true,
      "always",
      "ignore-bound-class-methods"
    ],
    "whitespace": [
      true,
      "check-branch",
      "check-decl",
      "check-operator",
      "check-module",
      "check-separator",
      "check-type"
    ],
    "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"
      }
    ],
    "interface-name": false,
    "no-console": false,
    "no-internal-module": true,
    "no-trailing-whitespace": true,
    "no-null-keyword": true,
    "only-arrow-functions": false,
    "prefer-const": true,
    "jsdoc-format": true,
    "space-before-function-paren": true
  }
}
