{
  "type": "object",
  "properties": {
    "truncateTo": {
      "type": "string"
    },
    "datasets": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/DatasetDefaultConfig"
      }
    },
    "id": {
      "type": "string"
    },
    "reportOptions": {
      "$ref": "#/definitions/ReportOptions"
    },
    "reportMode": {
      "type": "boolean"
    },
    "stateCb": {
      "type": "object"
    },
    "calendarType": {
      "const": "CALENDAR_445",
      "type": "string"
    },
    "hideHeader": {
      "type": "boolean"
    }
  },
  "required": ["datasets", "truncateTo"],
  "definitions": {
    "DatasetDefaultConfig": {
      "type": "object",
      "properties": {
        "overriddenTitle": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "identifier": {
          "type": "string"
        },
        "decimalPlaces": {
          "type": "number"
        },
        "highlightRanges": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/HighlightRange"
          }
        },
        "defaultHighlight": {
          "$ref": "#/definitions/HighlightColor"
        },
        "stringValueMapper": {
          "type": "number"
        },
        "showTotal": {
          "type": "boolean"
        },
        "unit": {
          "type": "string"
        },
        "title": {
          "type": "string"
        },
        "totalType": {
          "enum": ["AVG", "SUM"],
          "type": "string"
        }
      },
      "required": ["identifier"]
    },
    "HighlightRange": {
      "type": "object",
      "properties": {
        "min": {
          "$ref": "#/definitions/HighlightRangeValue"
        },
        "max": {
          "$ref": "#/definitions/HighlightRangeValue"
        },
        "color": {
          "type": "string"
        },
        "bgColor": {
          "type": "string"
        },
        "colorEntireRow": {
          "type": "boolean"
        }
      },
      "required": ["bgColor", "color"]
    },
    "HighlightRangeValue": {
      "type": "object",
      "properties": {
        "value": {
          "type": "number"
        },
        "inclusive": {
          "type": "boolean"
        }
      },
      "required": ["inclusive", "value"]
    },
    "HighlightColor": {
      "type": "object",
      "properties": {
        "color": {
          "type": "string"
        },
        "bgColor": {
          "type": "string"
        }
      }
    },
    "ReportOptions": {
      "type": "object",
      "properties": {
        "fontSize": {
          "type": "string"
        }
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
