{
  "plugins": [
    "jscs-ember-deprecations"
  ],

  "additionalRules": [
    "./rules/*.js"
  ],

  "disallowObjectController": true,
  "disallowInstanceInInitializer": true,
  "disallowCoreView": true,
  "disallowEmberTryCatch": true,
  "disallowEmberRequired": true,
  "disallowDirectPropertyAccess": ["Ember", "DS"],
  "disallowAtEachLeafNode": true,
  "disallowArrayComputed": true,
  "disallowReduceComputed": true,
  "disallowEmberCreate": true,
  "disallowEmberKeys": true,
  "disallowEmberOneway": true,
  "disallowEmberView": true,
  "disallowPositionalParamsExtend": true,
  "disallowBeforeObserver": true,
  "disallowImmediateObserver": true,
  "disallowArrayController": true,
  "disallowControllerNeeds": true,
  "disallowFreezableMixin": true,
  "disallowObserverArgumentOrdering": true,
  "disallowCreateWithMixins": true,
  "disallowComputedAny": true,
  "disallowHandlebarsHelpers": true,
  "disallowPrototypeExtension": true,

  "disallowConstOutsideModuleScope": true,
  "disallowEmptyBlocks": true,
  "disallowKeywordsOnNewLine": ["else"],
  "disallowMultipleLineBreaks": true,
  "disallowMultipleVarDecl": "exceptUndefined",
  "disallowNewlineBeforeBlockStatements": true,
  "disallowOperatorBeforeLineBreak": ["."],
  "disallowSpaceAfterObjectKeys": true,
  "disallowSpaceAfterPrefixUnaryOperators": true,
  "disallowSpaceBeforePostfixUnaryOperators": true,
  "disallowSpaceBeforeSemicolon": true,
  "disallowSpacesInFunction": {
    "beforeOpeningRoundBrace": true
  },
  "disallowSpacesInGenerator": {
    "beforeStar": true
  },
  "disallowSpacesInsideParentheses": true,
  "disallowSpacesInCallExpression": true,
  "disallowTrailingComma": true,
  "disallowTrailingWhitespace": true,
  "disallowVar": true,
  "requireArrayDestructuring": true,
  "requireBlocksOnNewline": true,
  "requireCamelCaseOrUpperCaseIdentifiers": true,
  "requireCapitalizedConstructors": true,
  "requireCommaBeforeLineBreak": true,
  "requireCommentsToIncludeAccess": true,
  "requireConstForEmberProperties": true,
  "requireCurlyBraces": [
    "if",
    "else",
    "for",
    "while",
    "do",
    "try",
    "catch",
    "switch"
  ],
  "requireDotNotation": true,
  "requireEnhancedObjectLiterals": true,
  "requireLineBreakAfterVariableAssignment": true,
  "requireNumericLiterals": true,
  "requireObjectDestructuring": true,
  "requireParenthesesAroundArrowParam": true,
  "requireSemicolons": true,
  "requireSpaceAfterBinaryOperators": true,
  "requireSpaceAfterKeywords": [
    "do",
    "for",
    "if",
    "else",
    "switch",
    "case",
    "try",
    "void",
    "while",
    "with",
    "return",
    "typeof"
  ],
  "requireSpaceAfterLineComment": true,
  "requireSpaceBeforeBinaryOperators": true,
  "requireSpaceBeforeBlockStatements": true,
  "requireSpaceBeforeKeywords": [
    "else",
    "while",
    "catch"
  ],
  "requireSpaceBeforeObjectValues": true,
  "requireSpaceBetweenArguments": true,
  "requireSpacesInFunction": {
    "beforeOpeningCurlyBrace": true
  },
  "requireSpacesInConditionalExpression": true,
  "requireSpacesInForStatement": true,
  "requireSpacesInsideObjectBrackets": "all",
  "requireSpread": true,
  "requireTemplateStringsForConcatenation": true,
  "validateIndentation": 2,
  "validateParameterSeparator": ", ",
  "validateQuoteMarks": {
    "mark": "'",
    "escape": true
  },
  "maxErrors": null
}
