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

    "requireSpaceBeforeKeywords": [
        "else",
        "while",
        "catch"
    ],

    "requireSpaceBeforeBinaryOperators": ["?", "+", "/", "*", "=", "==", "===", "!=", "!==", ">", ">=", "<", "<="],
    "requireSpaceAfterBinaryOperators": ["?", "+", "/", "*", "=", "==", "===", "!=", "!==", ">", ">=", "<", "<="],
    "disallowSpaceAfterBinaryOperators": ["!"],
    "disallowSpaceBeforeBinaryOperators": [","],
    "requireCamelCaseOrUpperCaseIdentifiers": true,

    "disallowMultipleVarDecl": true,
    "disallowEmptyBlocks": true,
    "disallowKeywords": ["with"],
    "disallowKeywordsOnNewLine": ["else"],
    "disallowSpacesInsideObjectBrackets": true,
    "disallowSpacesInsideArrayBrackets": true,
    "disallowSpacesInsideParentheses": true,
    "disallowSpaceBeforePostfixUnaryOperators": ["++", "--"],
    "disallowMultipleLineStrings": true,
    "disallowTrailingWhitespace": true,
    "disallowPaddingNewlinesInBlocks": true,

    "requireCommaBeforeLineBreak": true,

    "requireParenthesesAroundIIFE": true,

    "requireSpaceBeforeBlockStatements": true,
    "disallowNewlineBeforeBlockStatements": true,

    "requireSpacesInConditionalExpression": true,

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

    "disallowSpacesInAnonymousFunctionExpression": {
        "beforeOpeningRoundBrace": true
    },

    "disallowSpacesInFunctionDeclaration": {
        "beforeOpeningRoundBrace": true
    },

    "disallowSpacesInFunctionExpression": {
        "beforeOpeningRoundBrace": true
    },

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

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

    "safeContextKeyword": "self",

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

    "validateIndentation": 4,
    "validateParameterSeparator": ", ",

    "excludeFiles": [
        "test/data/**",
        "test/support/fakes/**"
    ],
    "validateJSDoc": {
        "checkParamNames": true,
        "requireParamTypes": true
    },

    "disallowMultipleLineBreaks": true,
    "validateLineBreaks": "LF",
    "disallowYodaConditions": true
}