{
    "requireCurlyBraces": [ "if", "else", "for", "while", "do", "switch", "return", "try", "catch"],
    "requireSpaceAfterKeywords": ["if", "else", "for", "while", "do", "switch", "return", "try", "catch"],
    "requireSpaceBeforeBinaryOperators": ["+", "-", "*", "=", "==", "===", "!=", "!=="],
    "requireSpaceAfterBinaryOperators": ["+", "-", "*", "=", "==", "===", "!=", "!==", ","],

    "requireParenthesesAroundIIFE": true,
    "requireSpacesInsideObjectBrackets": "all",
    "requireCommaBeforeLineBreak": true,
    "requireCamelCaseOrUpperCaseIdentifiers": true,
    "requireKeywordsOnNewLine": ["else"],
    "requireLineFeedAtFileEnd": true,
    "requireCapitalizedConstructors": true,
    "requireDotNotation": true,
    "requireMultipleVarDecl": true,
    "requireSpacesInFunction": {
      "beforeOpeningCurlyBrace": true
    },

    "disallowEmptyBlocks": true,
    "disallowQuotedKeysInObjects": "allButReserved",
    "disallowSpaceAfterObjectKeys": true,

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

    "disallowKeywords": ["with"],
    "disallowMultipleLineStrings": true,
    "disallowMultipleLineBreaks": true,
    "disallowMixedSpacesAndTabs": true,
    "disallowTrailingWhitespace": true,

    "validateLineBreaks": "LF",
    "validateQuoteMarks": "'",
    "validateIndentation": 2,

    "safeContextKeyword": "_this",

    "jsDoc": {
      "checkParamNames": true,
      "requireParamTypes": true
    },

    "maximumLineLength": { "value": 120, "allowComments": true, "allowRegex": true }
}
