{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "definitions": {
        "CustomConfig": {
            "properties": {
                "compAsDbName": {
                    "type": "boolean"
                },
                "componentsWhiteList": {
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                },
                "entitiesWhiteList": {
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                },
                "extendClass": {
                    "properties": {
                        "importPath": {
                            "type": "string"
                        },
                        "name": {
                            "type": "string"
                        }
                    },
                    "type": "object"
                },
                "extendInterfaces": {
                    "items": {
                        "properties": {
                            "importPath": {
                                "type": "string"
                            },
                            "name": {
                                "type": "string"
                            }
                        },
                        "type": "object"
                    },
                    "type": "array"
                },
                "generateRowId": {
                    "type": "boolean"
                },
                "getClassNameMethod": {
                    "type": "boolean"
                },
                "getFactoryMethod": {
                    "type": "boolean"
                },
                "getInitAllMethods": {
                    "type": "boolean"
                },
                "getKeyDescriptorMethod": {
                    "type": "boolean"
                },
                "getRemoteEntityNameMethod": {
                    "type": "boolean"
                },
                "ifNotExistCondition": {
                    "type": "boolean"
                },
                "importsPathExtension": {
                    "type": "boolean"
                },
                "initProperties": {
                    "type": "boolean"
                },
                "initPropertiesMode": {
                    "enum": [
                        "constructor",
                        "initMethod",
                        "normal"
                    ],
                    "type": "string"
                },
                "normalizeClassFilesNames": {
                    "type": "boolean"
                },
                "normalizeClassNames": {
                    "type": "boolean"
                },
                "outDir": {
                    "type": "string"
                },
                "outputSingleFile": {
                    "type": "boolean"
                },
                "propertiesAccessibility": {
                    "enum": [
                        "private",
                        "protected",
                        "public"
                    ],
                    "type": "string"
                },
                "propertiesCustomPrefix": {
                    "type": "string"
                },
                "propertiesGetMethods": {
                    "type": "boolean"
                },
                "propertiesSetMethods": {
                    "type": "boolean"
                },
                "regionAnnotations": {
                    "type": "boolean"
                },
                "saveJsonToFile": {
                    "type": "boolean"
                },
                "sourceFilePath": {
                    "type": "string"
                },
                "sourceUrl": {
                    "type": "string"
                },
                "verbose": {
                    "type": "boolean"
                }
            },
            "type": "object"
        }
    }
}

