{
    "$ref": "#/definitions/ExcludeConfig",
    "definitions": {
        "ExcludeConfig": {
            "additionalProperties": false,
            "description": "defines filters to exclude folders, types or files from all or specific checks",
            "properties": {
                "": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 3
                },
                "Anonymous": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 4
                },
                "ArrayAccess": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 5
                },
                "ArrayLiteral": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 6
                },
                "ArrowFunction": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 7
                },
                "AvoidIdentifier": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 8
                },
                "AvoidStarImport": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 9
                },
                "AvoidTernaryOperator": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 10
                },
                "BlockBreakingConditional": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 11
                },
                "CatchParameterName": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 12
                },
                "CodeSimilarity": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 13
                },
                "ConditionalCompilation": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 14
                },
                "ConstantName": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 15
                },
                "CyclomaticComplexity": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 16
                },
                "DefaultComesLast": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 17
                },
                "DocCommentStyle": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 18
                },
                "Dynamic": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 19
                },
                "ERegLiteral": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 20
                },
                "EmptyBlock": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 21
                },
                "EmptyLines": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 22
                },
                "EmptyPackage": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 23
                },
                "ExtendedEmptyLines": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 24
                },
                "FieldDocComment": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 25
                },
                "FileLength": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 26
                },
                "Final": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 27
                },
                "HexadecimalLiteral": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 28
                },
                "HiddenField": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 29
                },
                "Indentation": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 30
                },
                "IndentationCharacter": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 31
                },
                "InnerAssignment": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 32
                },
                "Interface": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 33
                },
                "LeftCurly": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 34
                },
                "LineLength": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 35
                },
                "ListenerName": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 36
                },
                "LocalVariableName": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 37
                },
                "MagicNumber": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 38
                },
                "MemberName": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 39
                },
                "MethodCount": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 40
                },
                "MethodLength": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 41
                },
                "MethodName": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 42
                },
                "ModifierOrder": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 43
                },
                "MultipleStringLiterals": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 44
                },
                "MultipleVariableDeclarations": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 45
                },
                "NeedBraces": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 46
                },
                "NestedControlFlow": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 47
                },
                "NestedForDepth": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 48
                },
                "NestedIfDepth": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 49
                },
                "NestedTryDepth": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 50
                },
                "NullableParameter": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 51
                },
                "OperatorWhitespace": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 52
                },
                "OperatorWrap": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 53
                },
                "ParameterName": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 54
                },
                "ParameterNumber": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 55
                },
                "PublicAccessor": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 56
                },
                "RedundantAccessMeta": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 57
                },
                "RedundantAllowMeta": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 58
                },
                "RedundantModifier": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 59
                },
                "Return": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 60
                },
                "ReturnCount": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 61
                },
                "RightCurly": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 62
                },
                "SeparatorWhitespace": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 63
                },
                "SeparatorWrap": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 64
                },
                "SimplifyBooleanExpression": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 65
                },
                "SimplifyBooleanReturn": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 66
                },
                "Spacing": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 67
                },
                "StringLiteral": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 68
                },
                "TODOComment": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 69
                },
                "TabForAligning": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 70
                },
                "Trace": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 71
                },
                "TrailingWhitespace": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 72
                },
                "Type": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 73
                },
                "TypeDocComment": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 74
                },
                "TypeName": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 75
                },
                "UnnecessaryConstructor": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 76
                },
                "UnusedImport": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 77
                },
                "UnusedLocalVar": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 78
                },
                "VarTypeHint": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 79
                },
                "VariableInitialisation": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 80
                },
                "WhitespaceAfter": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 81
                },
                "WhitespaceAround": {
                    "$ref": "#/definitions/ExcludeFilterList",
                    "propertyOrder": 82
                },
                "all": {
                    "$ref": "#/definitions/ExcludeFilterList"
                },
                "path": {
                    "description": "filters excludes relative to\n\t- RELATIVE_TO_PROJECT = use project root\n\t- RELATIVE_TO_SOURCE = use path(s) specified via \"-s <path>\" command line switches",
                    "enum": [
                        "RELATIVE_TO_PROJECT",
                        "RELATIVE_TO_SOURCE"
                    ],
                    "type": "string"
                },
                "version": {
                    "maximum": 1,
                    "minimum": 1,
                    "type": "integer"
                }
            },
            "type": "object"
        },
        "ExcludeFilterList": {
            "description": "list of path filters, e.g.\n\t- full type names\n\t- names of individual folder or subfolders\n\t- partial folder or type names\n\n\teach line can have an additional range specification:\n\t- \":<linenumber>\" = only matches a specific line number - valid line number start at 1\n\t- \":<start>-<end>\" = matches line numbers from <start> to <end> (including both)\n\t- \":<identifier>\" = matches any line or block that has <identifier> name (Haxe keywords currently unsupported)",
            "items": {
                "type": "string"
            },
            "type": "array"
        }
    }
}