{
    "preset": "yandex",

    "excludeFiles": [
        ".enb/**",
        "node_modules/**",
        "vendors/**",
       // "**/*.bemjson.js",
        "**/*.deps.js",
        "**/*.i18n/*"
    ],


    "requireCurlyBraces": ["if", "else", "for", "while", "do"],
    "requireSpaceAfterKeywords": [
        "if",
        "else",
        "for",
        "while",
        "do",
        "switch",
        "return",
        "function",
        "catch"
    ],
    "disallowKeywords": ["with"],
    "disallowKeywordsOnNewLine": ["else", "catch"],

    "disallowSpaceAfterPrefixUnaryOperators": ["++", "--", "+", "-", "~", "!"],
    "disallowSpaceBeforePostfixUnaryOperators": ["++", "--"],
    "requireSpaceBeforeBinaryOperators": [
        "+",
        "-",
        "/",
        "*",
        "%",
        "=",
        "==",
        "===",
        "!=",
        "!==",
        ">",
        ">=",
        "<",
        "<="
    ],
    "requireSpaceAfterBinaryOperators": [
        "+",
        "-",
        "/",
        "*",
        "%",
        "=",
        "==",
        "===",
        "!=",
        "!==",
        ">",
        ">=",
        "<",
        "<="
    ],

    "disallowMultipleVarDecl": null,

    "disallowSpacesInsideParentheses": true,
    "disallowEmptyBlocks": true,

    "requireParenthesesAroundIIFE": true,
    "requireSpacesInFunctionDeclaration": {
        "beforeOpeningCurlyBrace": true
    },
    "disallowSpacesInFunctionDeclaration": {
        "beforeOpeningRoundBrace": true
    },
    "requireSpacesInAnonymousFunctionExpression": {
        "beforeOpeningRoundBrace": true,
        "beforeOpeningCurlyBrace": true
    },
    "disallowSpacesInNamedFunctionExpression": {
        "beforeOpeningRoundBrace": true
    },
    "requireSpacesInNamedFunctionExpression": {
        "beforeOpeningCurlyBrace": true
    },

    "requireSpacesInConditionalExpression": true,

    "disallowSpaceBeforeBinaryOperators": [","],
    "requireCommaBeforeLineBreak": true,

    "validateQuoteMarks": "'",
    "disallowMultipleLineStrings": true,

    "disallowImplicitTypeConversion": [],
    "disallowYodaConditions": true,

    "disallowSpacesInsideArrayBrackets": true,

    "requireDotNotation": true,
    "disallowSpaceAfterObjectKeys": true,
    "disallowSpacesInsideObjectBrackets": true,
    "disallowQuotedKeysInObjects": true,

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

    "maximumLineLength": 180,
    "requireLineFeedAtFileEnd": true,
    "disallowMultipleLineBreaks": true,
    "disallowMixedSpacesAndTabs": true,
    "disallowTrailingWhitespace": true,
    "validateLineBreaks": "LF"
}
