{

  "maximumLineLength": 80,

  "validateJSDoc": {
    "checkParamNames": true,
    "checkRedundantParams": true,
    "requireParamTypes": true
  },

  "validateLineBreaks": "LF",
  "validateQuoteMarks": true,

  "requireCurlyBraces": [
    "if",
    "else",
    "for",
    "while",
    "do",
    "try",
    "catch"
  ],

  "requireSpaceAfterKeywords": [
    "if",
    "else",
    "for",
    "while",
    "do",
    "switch",
    "return",
    "try",
    "catch"
  ],

  "requireOperatorBeforeLineBreak": [
    "?",
    "+",
    "-",
    "/",
    "*",
    "=",
    "==",
    "===",
    "!=",
    "!==",
    ">",
    ">=",
    "<",
    "<="
  ],

  "requireSpaceBeforeBinaryOperators": [
    "+",
    "-",
    "/",
    "*",
    "=",
    "==",
    "===",
    "!=",
    "!=="
  ],

  "requireSpaceAfterBinaryOperators": [
    "+",
    "-",
    "/",
    "*",
    "=",
    "==",
    "===",
    "!=",
    "!=="
  ],

  "requireRightStickedOperators": [
    "!"
  ],

  "requireLeftStickedOperators": [
    ","
  ],

  "requireKeywordsOnNewLine": [
    "catch",
    "while"
  ],

  "requireSpacesInFunctionExpression": {
    "beforeOpeningCurlyBrace": true
  },

  "requireParenthesesAroundIIFE": true,
  "requireCommaBeforeLineBreak": true,
  "requireCamelCaseOrUpperCaseIdentifiers": true,
  "requireCapitalizedConstructors": true,
  "requireDotNotation": true,

  "disallowLeftStickedOperators": [
    "?",
    "+",
    "-",
    "/",
    "*",
    "=",
    "==",
    "===",
    "!=",
    "!==",
    ">",
    ">=",
    "<",
    "<="
  ],

  "disallowSpaceAfterPrefixUnaryOperators": [
    "++",
    "--",
    "+",
    "-",
    "~",
    "!"
  ],

  "disallowRightStickedOperators": [
    "?",
    "+",
    "/",
    "*",
    ":",
    "=",
    "==",
    "===",
    "!=",
    "!==",
    ">",
    ">=",
    "<",
    "<="
  ],

  "disallowSpaceBeforePostfixUnaryOperators": [
    "++",
    "--"
  ],

  "disallowImplicitTypeConversion": [
    "numeric",
    "boolean",
    "binary",
    "string"
  ],

  "disallowKeywords": [
    "with"
  ],

  "disallowMultipleLineStrings": true,
  "disallowMultipleLineBreaks": true,
  "disallowEmptyBlocks": true,
  "disallowSpacesInsideArrayBrackets": true,
  "disallowSpacesInsideParentheses": true,
  "disallowQuotedKeysInObjects": true,
  "disallowSpaceAfterObjectKeys": true,
  "disallowTrailingWhitespace": true,
  "disallowMixedSpacesAndTabs": "smart"

}
