SpreadJS 13
SpreadJS Documentation / Developer's Guide / Features / Manage Data / JSON Schema with SpreadJS / SpreadJS Spread Schema
In This Topic
    SpreadJS Spread Schema
    In This Topic

    This is the Spread full version JSON Schema for the current version of SpreadJS.

    Schema
    Copy Code
    {
      "$schema": "http://json-schema.org/draft-04/schema#",
      "title": "Spread",
      "description": "Represent a spreadsheet.",
      "type": "object",
      "properties":
       {
        "version":
        {
          "type": "string"
        },
        "sheets":
        {
          "type": "object",
          "patternProperties":
           {
              ".+":
                {
                  "$ref": "#/definitions/Sheet"
                }
            }
         },
       
        "namedStyles":
         {
          "type": "array",
          "description": "The name property of the Style in
           namedStyles can not be null,undefined or '',
           it must be set a value.",
         
         "items":
             {
               "$ref": "#/definitions/Style"
             }
         },
        "names":
        {
          "type": "array",
          "items":
            {
               "$ref": "#/definitions/NameInfo"
            }
        },
    
        "activeSheetIndex":
        {
          "type": "integer"
        },
       
        "leftCellIndex":
        {
          "type": "integer"
        },
       
        "topCellIndex":
        {
    
          "type": "integer"
        },
    
        "sheetCount":
        {
          "type": "integer",
          "minimum": 0
        },
    
        "startSheetIndex":
        {
          "type": "integer",
          "default": 0
        },
    
        "sparklineExs":
        {
          "type": "array",
          "items":
           {
            "$ref": "#/definitions/SparklineEx"
           }
        },
       
        "customFunctions":
          {
             "type": "object",
             "patternProperties":
             {
               ".+":
               {
                 "$ref": "#/definitions/Function"
               }
             }
          },
       
        "canUserDragDrop":
        {
          "type": "boolean",
          "default": true
        },
    
        "canUserDragFill":
       {
          "type": "boolean",
          "default": true
        },
       
        "allowUserZoom":
        {
          "type": "boolean",
          "default": true
        },
    
        "allowUserResize":
        {
          "type": "boolean",
          "default": true
        },
       
        "allowUndo":
        {
          "type": "boolean",
          "default": true
        },
    
        "allowSheetReorder":
        {
          "type": "boolean",
          "default": true
        },
    
        "allowUserDragMerge":
        {
          "type": "boolean",
          "default": false
        },
    
        "allowUserDeselect":
        {
          "type": "boolean",
          "default": true
        },
    
        "defaultDragFillType":
        {
          "$ref": "#/definitions/AutoFillType",
          "default": 5
        },
    
        "showDragFillSmartTag":
        {
          "type": "boolean",
          "default": true
        },
    
        "showHorizontalScrollbar":
       {
          "type": "boolean",
          "default": true
        },
       
       "showVerticalScrollbar":
        {
          "type": "boolean",
          "default": true
        },
        "scrollbarShowMax":
        {
          "type": "boolean",
          "default": true
        },
        "scrollbarMaxAlign": {
          "type": "boolean",
          "default": false
        },
        "tabStripVisible": {
          "type": "boolean",
          "default": true
        },
        "tabStripRatio": {
          "type": "number",
          "default": 0.5
        },
        "tabEditable": {
          "type": "boolean",
          "default": true
        },
        "newTabVisible": {
          "type": "boolean",
          "default": true
        },
        "cutCopyIndicatorVisible": {
          "type": "boolean",
          "default": "true"
        },
        "cutCopyIndicatorBorderColor": {
          "type": "string",
          "default": "#217346"
        },
        "tabNavigationVisible": {
          "type": "boolean",
          "default": true
        },
        "backColor": {
          "type": "string",
          "default": "white"
        },
        "backgroundImage": {
          "type": "string"
        },
        "backgroundImageLayout": {
          "$ref": "#/definitions/ImageLayout",
          "default": 0
        },
        "showResizeTip": {
          "$ref": "#/definitions/ShowResizeTip",
          "default": 0
        },
        "showDragDropTip": {
          "type": "boolean",
          "default": true
        },
        "showDragFillTip": {
          "type": "boolean",
          "default": true
        },
        "scrollIgnoreHidden": {
          "type": "boolean",
          "default": false
        },
        "highlightInvalidData": {
          "type": "boolean",
          "default": false
        },
        "showScrollTip": {
          "$ref": "#/definitions/ShowScrollTip",
          "default": 0
        },
        "grayAreaBackColor": {
          "type": "string"
        },
        "useTouchLayout": {
          "type": "boolean",
          "default": false
        },
        "hideSelection": {
          "type": "boolean",
          "default": false
        },
        "resizeZeroIndicator": {
          "$ref": "#/definitions/ResizeZeroIndicator",
          "default": 1
        },
        "canUserEditFormula": {
          "type": "boolean",
          "default": true
        },
        "enableFormulaTextbox": {
          "type": "boolean",
          "default": true
        },
        "referenceStyle": {
          "$ref": "#/definitions/ReferenceStyle",
          "default": 0
        },
        "allowDynamicArray": {
          "type": "boolean",
          "default": false
        },
        "autoFitType": {
          "$ref": "#/definitions/AutoFitType",
          "default": 0
        },
        "rowResizeMode": {
          "$ref": "#/definitions/ResizeMode",
          "default": 0
        },
        "columnResizeMode": {
          "$ref": "#/definitions/ResizeMode",
          "default": 0
        },
        "font": {
          "type": "string"
        },
        "allowCopyPasteExcelStyle": {
          "type": "boolean",
          "default": true
        },
        "allowExtendPasteRange": {
          "type": "boolean",
          "default": false
        },
        "copyPasteHeaderOptions": {
          "$ref": "#/definitions/CopyPasteHeaderOptions",
          "default": 3
        },
        "customList": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/CustomListOptions"
          }
        },
        "scrollByPixel": {
          "type": "boolean",
          "default": false
        },
        "scrollPixel": {
          "type": "number",
          "default": 5
        }
      },
      "definitions": {
        "RangeInfo": {
          "title": "RangeInfo",
          "description": "Represents a range information that can be used by auto merge.",
          "type": "object",
          "properties": {
            "range": {
              "$ref": "#/definitions/Range"
            },
            "direction": {
              "$ref": "#/definitions/AutoMergeDirection",
              "default": 1
            },
            "mode": {
              "$ref": "#/definitions/AutoMergeMode",
              "default": 0
            },
            "sheetArea": {
              "$ref": "#/definitions/SheetArea",
              "default": 3
            }
          }
        },
        "AutoMergeDirection": {
          "title": "AutoMergeDirection",
          "description": "Indicates the auto merge direction. none:0,column:1,row:2,columnRow:3,rowColumn:4",
          "enum": [
            0,
            1,
            2,
            3,
            4
          ]
        },
        "AutoMergeMode": {
          "title": "AutoMergeMode",
          "description": "Indicates the auto merge mode. free:0,restricted:1",
          "enum": [
            0,
            1
          ]
        },
        "SheetArea": {
          "title": "SheetArea",
          "description": "Specifies the sheet area. corner:0,colHeader:1,rowHeader:2,viewport:3",
          "enum": [
            0,
            1,
            2,
            3
          ]
        },
        "CellStates": {
          "title": "CellStates",
          "description": "saving the cell states range and style",
          "type": "object",
          "patternProperties": {
            "[0-9]+": {
              "type": "object",
              "patternProperties": {
                "[0-9]+": {
                  "type": "array",
                  "items": {
                    "range": "#/definitions/Range",
                    "style": "#/definitions/Style"
                  }
                }
              }
            }
          }
        },
        "NameInfo": {
          "title": "NameInfo",
          "description": "Represents a custom named expression that can be used by formulas.",
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            },
            "row": {
              "type": "integer",
              "minimum": 0
            },
            "col": {
              "type": "integer",
              "minimum": 0
            },
            "formula": {
              "type": "string"
            },
            "comment": {
              "type": "string"
            }
          }
        },
        "Style": {
          "title": "Style",
          "description": " Represents the style for a cell, row, and column.",
          "type": "object",
          "properties": {
            "backColor": {
              "type": [
                "string",
                "null"
              ]
            },
            "foreColor": {
              "type": [
                "string",
                "null"
              ]
            },
            "hAlign": {
              "anyOf": [
                {
                  "$ref": "#/definitions/HorizontalAlign"
                },
                {
                  "type": "null"
                }
              ]
            },
            "vAlign": {
              "anyOf": [
                {
                  "$ref": "#/definitions/VerticalAlign"
                },
                {
                  "type": "null"
                }
              ]
            },
            "font": {
              "type": [
                "string",
                "null"
              ]
            },
            "themeFont": {
              "type": [
                "string",
                "null"
              ]
            },
            "formatter": {
              "anyOf": [
                {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                {
                  "$ref": "#/definitions/GeneralFormatter"
                },
                {
                  "$ref": "#/definitions/CustomFormatter"
                }
              ]
            },
            "borderLeft": {
              "$ref": "#/definitions/LineBorder"
            },
            "borderTop": {
              "$ref": "#/definitions/LineBorder"
            },
            "borderRight": {
              "$ref": "#/definitions/LineBorder"
            },
            "borderBottom": {
              "$ref": "#/definitions/LineBorder"
            },
            "diagonalUp": {
              "$ref": "#/definitions/LineBorder"
            },
            "diagonalDown": {
              "$ref": "#/definitions/LineBorder"
            },
            "locked": {
              "type": [
                "boolean",
                "null"
              ]
            },
            "textIndent": {
              "type": [
                "number",
                "null"
              ]
            },
            "wordWrap": {
              "type": [
                "boolean",
                "null"
              ]
            },
            "shrinkToFit": {
              "type": [
                "boolean",
                "null"
              ]
            },
            "isVerticalText": {
              "type": [
                "boolean",
                "null"
              ]
            },
            "backgroundImage": {
              "type": [
                "string",
                "null"
              ]
            },
            "backgroundImageLayout": {
              "anyOf": [
                {
                  "$ref": "#/definitions/ImageLayout"
                },
                {
                  "type": "null"
                }
              ]
            },
            "cellType": {
              "$ref": "#/definitions/CellType"
            },
            "tabStop": {
              "type": [
                "boolean",
                "null"
              ]
            },
            "name": {
              "type": [
                "string",
                "null"
              ]
            },
            "parentName": {
              "type": [
                "string",
                "null"
              ]
            },
            "textDecoration": {
              "anyOf": [
                {
                  "$ref": "#/definitions/TextDecorationType"
                },
                {
                  "type": "null"
                }
              ],
              "default": 0
            },
            "imeMode": {
              "anyOf": [
                {
                  "$ref": "#/definitions/ImeMode"
                },
                {
                  "type": "null"
                }
              ]
            },
            "watermark": {
              "type": [
                "string",
                "null"
              ]
            },
            "cellPadding": {
              "type": [
                "string",
                "null"
              ]
            },
            "labelOptions": {
              "$ref": "#/definitions/LabelOptions"
            },
            "quotePrefix": {
              "type": [
                "boolean",
                "null"
              ]
            },
            "textOrientation": {
              "type": [
                "number",
                "null"
              ]
            }
          }
        },
        "CellType": {
          "title": "CellType",
          "anyOf": [
            {
              "type": "null"
            },
            {
              "$ref": "#/definitions/CornerCellType"
            },
            {
              "$ref": "#/definitions/RowHeaderCellType"
            },
            {
              "$ref": "#/definitions/ColumnHeaderCellType"
            },
            {
              "$ref": "#/definitions/TextCellType"
            },
            {
              "$ref": "#/definitions/ButtonCellType"
            },
            {
              "$ref": "#/definitions/CheckBoxCellType"
            },
            {
              "$ref": "#/definitions/ComboBoxCellType"
            },
            {
              "$ref": "#/definitions/HyperLinkCellType"
            },
            {
              "$ref": "#/definitions/BaseCellType"
            }
          ]
        },
        "BaseCellType": {
          "title": "BaseCellType",
          "description": "Represents the base class for the other cell type classes.",
          "type": "object",
          "properties": {
            "typeName": {
              "description": "It's value is fixed value '0'.",
              "type": "string"
            }
          }
        },
        "CornerCellType": {
          "title": "CornerCellType",
          "description": "Represents the painter of the corner cell.",
          "type": "object",
          "properties": {
            "typeName": {
              "description": "It's value is fixed value '4'.",
              "type": "string"
            }
          }
        },
        "RowHeaderCellType": {
          "title": "RowHeaderCellType",
          "description": "Represents the painter of the row header cells.",
          "type": "object",
          "properties": {
            "typeName": {
              "description": "It's value is fixed value '3'.",
              "type": "string"
            }
          }
        },
        "ColumnHeaderCellType": {
          "title": "ColumnHeaderCellType",
          "description": "Represents the painter of the column header cells.",
          "type": "object",
          "properties": {
            "typeName": {
              "description": "It's value is fixed value '2'.",
              "type": "string"
            }
          }
        },
        "TextCellType": {
          "title": "TextCellType",
          "description": "Represents a text cell type.",
          "type": "object",
          "properties": {
            "typeName": {
              "description": "It's value is fixed value '1'.",
              "type": "string"
            },
            "editorType": {
              "$ref": "#/definitions/EditorType",
              "default": 1
            }
          }
        },
        "ButtonCellType": {
          "title": "ButtonCellType",
          "description": " Represents a button cell.",
          "type": "object",
          "properties": {
            "typeName": {
              "description": "It's value is fixed value '6'.",
              "type": "string"
            },
            "marginTop": {
              "type": "number",
              "default": 2
            },
            "marginRight": {
              "type": "number",
              "default": 2
            },
            "marginBottom": {
              "type": "number",
              "default": 2
            },
            "marginLeft": {
              "type": "number",
              "default": 2
            },
            "text": {
              "type": "string",
              "default": ""
            },
            "buttonBackColor": {
              "type": "string"
            }
          }
        },
        "CheckBoxCellType": {
          "title": "CheckBoxCellType",
          "description": "Represents a check box cell.",
          "type": "object",
          "properties": {
            "typeName": {
              "description": "It's value is fixed value '5'.",
              "type": "string"
            },
            "caption": {
              "type": "string",
              "default": ""
            },
            "textTrue": {
              "type": "string",
              "default": ""
            },
            "textIndeterminate": {
              "type": "string",
              "default": ""
            },
            "textFalse": {
              "type": "string",
              "default": ""
            },
            "textAlign": {
              "$ref": "#/definitions/CheckBoxAlign",
              "default": 3
            },
            "isThreeState": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "ComboBoxCellType": {
          "title": "ComboBoxCellType",
          "description": "Represents an ordinary combo box cell.",
          "type": "object",
          "properties": {
            "typeName": {
              "description": "It's value is fixed value '7'.",
              "type": "string"
            },
            "editorValueType": {
              "$ref": "#/definitions/EditorValueType",
              "default": 0
            },
            "items": {
              "type": "array",
              "items": {
                "type": [
                  "array",
                  "boolean",
                  "number",
                  "null",
                  "object",
                  "string"
                ]
              }
            },
            "itemHeight": {
              "type": "integer",
              "default": 22
            },
            "editable": {
              "type": "boolean",
              "default": false
            },
            "maxDropDownItems": {
              "type": "integer",
              "default": 20
            }
          }
        },
        "HyperLinkCellType": {
          "title": "HyperLinkCellType",
          "description": "Represents the hyperlink cell.",
          "type": "object",
          "properties": {
            "typeName": {
              "description": "It's value is fixed value '8'.",
              "type": "string"
            },
            "linkColor": {
              "type": "string",
              "default": "#0066cc"
            },
            "visitedLinkColor": {
              "type": "string",
              "default": "#3399ff"
            },
            "text": {
              "type": "string",
              "default": ""
            },
            "linkToolTip": {
              "type": "string",
              "default": ""
            },
            "target": {
              "$ref": "#/definitions/HyperLinkTargetType",
              "default": 0
            },
            "link": {
              "type": "string",
              "default": ""
            },
            "activeOnClick": {
              "type": "boolean",
              "default": true
            }
          }
        },
        "Hyperlink": {
          "title": "Hyperlink",
          "description": " Represents the hyperlink in a cell.",
          "type": "object",
          "properties": {
            "url": {
              "type": [
                "string",
                "null"
              ]
            },
            "tooltip": {
              "type": [
                "string",
                "null"
              ]
            },
            "linkColor": {
              "type": [
                "string",
                "null"
              ]
            },
            "visitedLinkColor": {
              "type": [
                "string",
                "null"
              ]
            },
            "target": {
              "$ref": "#/definitions/HyperlinkTargetType",
              "default": 0
            },
            "drawUnderline": {
              "type": [
                "boolean",
                "null"
              ]
            },
            "isVisited": {
              "type":[
                "boolean",
                "null"
              ]
            },
            "command": {
              "type": [
                "string",
                "null"
              ]
            }
          }
        },
        "CheckBoxAlign": {
          "title": "CheckBoxAlign",
          "description": "Specifies the text alignment for check box cells. top:0,bottom:1,left:2,right:3.",
          "enum": [
            0,
            1,
            2,
            3
          ]
        },
        "EditorValueType": {
          "title": "EditorValueType",
          "description": "Specifies what is written out to the data model for a selected item from certain cell types that offer a selection of multiple values. text:0,index:1,value:2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "HyperLinkTargetType": {
          "title": "HyperLinkTargetType",
          "description": "Specifies the hyperlink's target type. blank:0,self:1,parent:2,top:3.",
          "enum": [
            0,
            1,
            2,
            3
          ]
        },
        "GeneralFormatter": {
          "title": "GeneralFormatter",
          "description": "Represents a formatter with the specified format mode and format string.",
          "type": "object",
          "properties": {
            "formatCached": {
              "type": "string",
              "default": "General"
            },
            "customerCultureName": {
              "type": "string"
            }
          }
        },
        "CustomFormatter": {
          "title": "CustomFormatter",
          "description": "Represents a custom formatter with the specified format string.",
          "type": "object",
          "properties": {
            "formatCached": {
              "type": "string"
            },
            "cultureName": {
              "type": "string"
            },
            "typeName": {
              "type": "string",
              "default": ""
            }
          }
        },
        "HorizontalAlign": {
          "title": "HorizontalAlign",
          "description": "Indicates the horizontal alignment. left:0,center:1,right:2,general:3.",
          "enum": [
            0,
            1,
            2,
            3
          ]
        },
        "VerticalAlign": {
          "title": "VerticalAlign",
          "description": "Indicates the vertical alignment. top:0,center:1,bottom:2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "DefaultDataValidator": {
          "title": "DefaultDataValidator",
          "description": "Represents a data validator.",
          "type": "object",
          "properties": {
            "errorStyle": {
              "$ref": "#/definitions/ErrorStyle",
              "default": 0
            },
            "ignoreBlank": {
              "type": "boolean",
              "default": true
            },
            "inCellDropdown": {
              "type": "boolean",
              "default": true
            },
            "showInputMessage": {
              "type": "boolean",
              "default": true
            },
            "showErrorMessage": {
              "type": "boolean",
              "default": true
            },
            "inputTitle": {
              "type": "string",
              "default": ""
            },
            "errorTitle": {
              "type": "string",
              "default": ""
            },
            "inputMessage": {
              "type": "string",
              "default": ""
            },
            "errorMessage": {
              "type": "string",
              "default": ""
            },
            "comparisonOperator": {
              "$ref": "#/definitions/ComparisonOperator",
              "default": 6
            },
            "type": {
              "$ref": "#/definitions/CriteriaType",
              "default": 7
            },
            "condition": {
              "$ref": "#/definitions/Condition"
            },
            "ranges": {
              "type": "string"
            },
            "_highlightStyle": {
              "title": "_highlightStyle",
              "description": "Represents a style of the highlight ",
              "type": "object",
              "properties": {
                "type": {
                  "$ref": "#/definitions/HighlightType",
                  "default": 0
                },
                "postition": {
                  "$ref": "#/definitions/HighlightPosition",
                  "default": 1
                },
                "color": {
                  "type": "string",
                  "default": "red"
                },
                "image": {
                  "type": [
                    "string",
                    "null"
                  ]
                }
              }
            }
          }
        },
        "ErrorStyle": {
          "title": "ErrorStyle",
          "description": "Indicates the data validation error style. stop:0,warning:1,information:2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "HighlightType": {
          "title": "HighlightType",
          "description": "Indicates the data validation highlight type. circle:0,dogear:1,icon:2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "HighlightPosition": {
          "title": "HighlightPosition",
          "description": "Indicates the data validation highlight postition. TopLeft:0,TopRight:1,BottomRight:2,BottomLeft:3",
          "enum": [
            0,
            1,
            2,
            3
          ]
        },
        "CriteriaType": {
          "title": "CriteriaType",
          "description": "Indicates the data validator criteria type. anyValue:0,wholeNumber:1,decimalValues:2,list:3,date:4,time:5,textLength:6,custom:7.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7
          ]
        },
        "Condition": {
          "title": "Condition",
          "description": "Represents a condition.",
          "type": "object",
          "anyOf": [
            {
              "$ref": "#/definitions/RelationCondition"
            },
            {
              "$ref": "#/definitions/NumberCondition"
            },
            {
              "$ref": "#/definitions/TextCondition"
            },
            {
              "$ref": "#/definitions/ColorCondition"
            },
            {
              "$ref": "#/definitions/FormulaCondition"
            },
            {
              "$ref": "#/definitions/DateCondition"
            },
            {
              "$ref": "#/definitions/DateExCondition"
            },
            {
              "$ref": "#/definitions/TextLengthCondition"
            },
            {
              "$ref": "#/definitions/Top10Condition"
            },
            {
              "$ref": "#/definitions/UniqueCondition"
            },
            {
              "$ref": "#/definitions/AverageCondition"
            },
            {
              "$ref": "#/definitions/CellValueCondition"
            },
            {
              "$ref": "#/definitions/AreaCondition"
            }
          ]
        },
        "RelationCondition": {
          "title": "RelationCondition",
          "description": "Represents a relation condition with a specified relation type.",
          "type": "object",
          "properties": {
            "conType": {
              "description": "relationCondition:0.",
              "enum": [
                0
              ]
            },
            "compareType": {
              "$ref": "#/definitions/LogicalOperators"
            },
            "item1": {
              "$ref": "#/definitions/Condition"
            },
            "item2": {
              "$ref": "#/definitions/Condition"
            },
            "ignoreBlank": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "NumberCondition": {
          "title": "NumberCondition",
          "description": "Represents a number condition of the specified type with the specified expected value.",
          "type": "object",
          "properties": {
            "conType": {
              "description": "numberCondition:1.",
              "enum": [
                1
              ]
            },
            "compareType": {
              "$ref": "#/definitions/GeneralComparisonOperators"
            },
            "integerValue": {
              "type": "boolean",
              "default": false
            },
            "expected": {
              "type": "number"
            },
            "formula": {
              "type": [
                "string",
                "null"
              ]
            },
            "ignoreBlank": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "TextCondition": {
          "title": "TextCondition",
          "description": "Represents a text condition with the specified text comparison type based on the specified cell.",
          "type": "object",
          "properties": {
            "conType": {
              "description": "textCondition:2.",
              "enum": [
                2
              ]
            },
            "compareType": {
              "$ref": "#/definitions/TextCompareType"
            },
            "ignoreCase": {
              "type": "boolean",
              "default": false
            },
            "useWildCards": {
              "type": "boolean",
              "default": true
            },
            "forceValue2Text": {
              "type": "boolean",
              "default": false
            },
            "expected": {
              "type": "string"
            },
            "formula": {
              "type": [
                "string",
                "null"
              ]
            },
            "regex": {
              "$ref": "#/definitions/RegExp"
            },
            "ignoreBlank": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "ColorCondition": {
          "title": "ColorCondition",
          "description": "Represents a style condition with the specified comparison type and expected color.",
          "type": "object",
          "properties": {
            "conType": {
              "description": "colorCondition:3.",
              "enum": [
                3
              ]
            },
            "compareType": {
              "$ref": "#/definitions/ColorCompareType"
            },
            "expected": {
              "type": "string"
            },
            "ignoreBlank": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "FormulaCondition": {
          "title": "FormulaCondition",
          "description": "Represents a custom condition with a specified formula or expression.",
          "type": "object",
          "properties": {
            "conType": {
              "description": "formulaCondition:4.",
              "enum": [
                4
              ]
            },
            "customValueType": {
              "$ref": "#/definitions/CustomValueType"
            },
            "expected": {
              "type": "string"
            },
            "formula": {
              "type": [
                "string",
                "null"
              ]
            },
            "ignoreBlank": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "DateCondition": {
          "title": "DateCondition",
          "description": "Represents a date condition with the specified comparison type, expected date condition, and formula.",
          "type": "object",
          "properties": {
            "conType": {
              "description": "dateCondition:5.",
              "enum": [
                5
              ]
            },
            "compareType": {
              "$ref": "#/definitions/DateCompareType"
            },
            "expected": {
              "type": "string"
            },
            "formula": {
              "type": [
                "string",
                "null"
              ]
            },
            "ignoreBlank": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "DateExCondition": {
          "title": "DateExCondition",
          "description": "Represents a date condition with the specified comparison type, expected date condition, and formula.",
          "type": "object",
          "properties": {
            "conType": {
              "description": "dateExCondition:6.",
              "enum": [
                6
              ]
            },
            "expectTypeId": {
              "type": "integer",
              "default": 0
            },
            "ignoreBlank": {
              "type": "boolean",
              "default": false
            },
            "formula": {
              "type": [
                "string",
                "null"
              ]
            },
            "expected": {
              "$ref": "#/definitions/DateOccurringType"
            }
          }
        },
        "TextLengthCondition": {
          "title": "TextLengthCondition",
          "description": "Represents a text length condition with the specified comparison type, expected number, and formula.",
          "type": "object",
          "properties": {
            "conType": {
              "description": "textLengthCondition:7.",
              "enum": [
                7
              ]
            },
            "compareType": {
              "$ref": "#/definitions/GeneralComparisonOperators"
            },
            "expected": {
              "type": "string"
            },
            "formula": {
              "type": [
                "string",
                "null"
              ]
            },
            "ignoreBlank": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "Top10Condition": {
          "title": "Top10Condition",
          "description": "Represents a top 10 condition with the specified type and rank, for the specified cell ranges.",
          "type": "object",
          "properties": {
            "conType": {
              "description": "top10Condition:8.",
              "enum": [
                8
              ]
            },
            "type": {
              "$ref": "#/definitions/Top10ConditionType"
            },
            "isPercent": {
              "type": "boolean",
              "default": false
            },
            "ranges": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Range"
              }
            },
            "expected": {
              "type": "number"
            },
            "formula": {
              "type": [
                "string",
                "null"
              ]
            },
            "ignoreBlank": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "UniqueCondition": {
          "title": "UniqueCondition",
          "description": " Represents a unique condition and sets whether to check for duplicate data.",
          "type": "object",
          "properties": {
            "conType": {
              "description": "uniqueCondition:9.",
              "enum": [
                9
              ]
            },
            "ranges": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Range"
              }
            },
            "expected": {
              "type": "boolean"
            },
            "formula": {
              "type": [
                "string",
                "null"
              ]
            },
            "ignoreBlank": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "AverageCondition": {
          "title": "AverageCondition",
          "description": "Represents a new average condition of the specified type for the specified cell ranges.",
          "type": "object",
          "properties": {
            "conType": {
              "description": "averageCondition:10.",
              "enum": [
                10
              ]
            },
            "type": {
              "$ref": "#/definitions/AverageConditionType"
            },
            "ranges": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Range"
              }
            },
            "ignoreBlank": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "CellValueCondition": {
          "title": "CellValueCondition",
          "description": "Represents a cell value condition with a specified compare type, expected value, and formula.",
          "type": "object",
          "properties": {
            "conType": {
              "description": "cellValueCondition:11.",
              "enum": [
                11
              ]
            },
            "compareType": {
              "$ref": "#/definitions/GeneralComparisonOperators"
            },
            "treatNullValueAsZero": {
              "type": "boolean",
              "default": false
            },
            "expected": {
              "type": "string"
            },
            "formula": {
              "type": [
                "string",
                "null"
              ]
            }
          }
        },
        "AreaCondition": {
          "title": "AreaCondition",
          "description": "Represents an area condition using the expected source or formula.",
          "type": "object",
          "properties": {
            "conType": {
              "description": "areaConditon:12.",
              "enum": [
                12
              ]
            },
            "expected": {
              "type": "string"
            },
            "formula": {
              "type": [
                "string",
                "null"
              ]
            },
            "ignoreBlank": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "GeneralComparisonOperators": {
          "title": "GeneralComparisonOperators",
          "description": "Specifies the general operator. equalsTo:0,notEqualsTo:1,greaterThan:2,greaterThanOrEqualsTo:3,lessThan:4,lessThanOrEqualsTo:5.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5
          ]
        },
        "LogicalOperators": {
          "title": "LogicalOperators",
          "description": "Specifies the relation operator. or:0,and:1.",
          "enum": [
            0,
            1
          ]
        },
        "ComparisonOperator": {
          "title": "ComparisonOperator",
          "description": "Specifies the comparison operator. equalsTo:0,notEqualsTo:1,greaterThan:2,greaterThanOrEqualsTo:3,lessThan:4,lessThanOrEqualsTo:5,between:6,notBetween:7.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7
          ]
        },
        "TextComparisonOperator": {
          "title": "TextComparisonOperator",
          "description": "Specifies the text comparison operator. contains:0,doesNotContain:1,beginsWith:2,endsWith:3.",
          "enum": [
            0,
            1,
            2,
            3
          ]
        },
        "TextCompareType": {
          "title": "TextCompareType",
          "description": "Specifies the text compare type. 0:equalsTo,1:notEqualsTo,2:beginsWith,3:doesNotBeginWith,4:endsWith,5:doesNotEndWith,6:contains,7:doesNotContain.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7
          ]
        },
        "ColorCompareType": {
          "title": "ColorCompareType",
          "description": "Specifies the color compare type. backgroundColor:0,foregroundColor:1.",
          "enum": [
            0,
            1
          ]
        },
        "CustomValueType": {
          "title": "CustomValueType",
          "description": "Specifies the custom value type. empty:0,nonEmpty:1,error:2,nonError:3,formula:4.",
          "enum": [
            0,
            1,
            2,
            3,
            4
          ]
        },
        "DateCompareType": {
          "title": "DateCompareType",
          "description": "Specifies the date compare type. equalsTo:0,notEqualsTo:1,before:2,beforeEqualsTo:3,after:4,afterEqualsTo:5.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5
          ]
        },
        "DateOccurringType": {
          "title": "DateOccurringType",
          "description": "Specifies the date occurring type. today:0,yesterday:1,tomorrow:2,last7Days:3,thisMonth:4,lastMonth:5,nextMonth:6,thisWeek:7,lastWeek:8,nextWeek:9.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9
          ]
        },
        "Top10ConditionType": {
          "title": "Top10ConditionType",
          "description": "Specifies the top 10 condition type. top:0,bottom:1.",
          "enum": [
            0,
            1
          ]
        },
        "AverageConditionType": {
          "title": "AverageConditionType",
          "description": "Specifies the average condition type. above:0,below:1,equalOrAbove:2,equalOrBelow:3,above1StdDev:4,below1StdDev:5,above2StdDev:6,below2StdDev:7,above3StdDev:8,below3StdDev:9.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9
          ]
        },
        "Rule": {
          "title": "Rule",
          "type": "object",
          "anyOf": [
            {
              "$ref": "#/definitions/CellValueRule"
            },
            {
              "$ref": "#/definitions/SpecificTextRule"
            },
            {
              "$ref": "#/definitions/FormulaRule"
            },
            {
              "$ref": "#/definitions/DateOccurringRule"
            },
            {
              "$ref": "#/definitions/Top10Rule"
            },
            {
              "$ref": "#/definitions/UniqueRule"
            },
            {
              "$ref": "#/definitions/DuplicateRule"
            },
            {
              "$ref": "#/definitions/AverageRule"
            },
            {
              "$ref": "#/definitions/TwoScaleRule"
            },
            {
              "$ref": "#/definitions/ThreeScaleRule"
            },
            {
              "$ref": "#/definitions/DataBarRule"
            },
            {
              "$ref": "#/definitions/IconSetRule"
            }
          ]
        },
        "CellValueRule": {
          "title": "CellValueRule",
          "description": "Represents a cell value conditional rule.",
          "type": "object",
          "properties": {
            "ruleType": {
              "description": "cellValueRule:1.",
              "enum": [
                1
              ]
            },
            "ranges": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Range"
              }
            },
            "style": {
              "$ref": "#/definitions/Style"
            },
            "stopIfTrue": {
              "type": "boolean",
              "default": false
            },
            "priority": {
              "type": "integer",
              "default": 1
            },
            "operator": {
              "$ref": "#/definitions/ComparisonOperator"
            },
            "value1": {
              "type": [
                "array",
                "boolean",
                "number",
                "null",
                "object",
                "string"
              ]
            },
            "value2": {
              "type": [
                "array",
                "boolean",
                "number",
                "null",
                "object",
                "string"
              ]
            }
          }
        },
        "SpecificTextRule": {
          "title": "SpecificTextRule",
          "description": "Represents a specific text rule based on the specified cell.",
          "type": "object",
          "properties": {
            "ruleType": {
              "description": "specificTextRule:2.",
              "enum": [
                2
              ]
            },
            "ranges": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Range"
              }
            },
            "style": {
              "$ref": "#/definitions/Style"
            },
            "stopIfTrue": {
              "type": "boolean",
              "default": false
            },
            "priority": {
              "type": "integer",
              "default": 1
            },
            "operator": {
              "$ref": "#/definitions/TextComparisonOperator"
            },
            "text": {
              "type": "string"
            }
          }
        },
        "FormulaRule": {
          "title": "FormulaRule",
          "description": "Represents a formula rule with the specified formula and style.",
          "type": "object",
          "properties": {
            "ruleType": {
              "description": "formulaRule:3.",
              "enum": [
                3
              ]
            },
            "ranges": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Range"
              }
            },
            "style": {
              "$ref": "#/definitions/Style"
            },
            "stopIfTrue": {
              "type": "boolean",
              "default": false
            },
            "priority": {
              "type": "integer",
              "default": 1
            },
            "formula": {
              "type": [
                "string",
                "null"
              ]
            }
          }
        },
        "DateOccurringRule": {
          "title": "DateOccurringRule",
          "description": "Represents a DateOccurringRule with the specified type and style.",
          "type": "object",
          "properties": {
            "ruleType": {
              "description": "dateOccurringRule:4.",
              "enum": [
                4
              ]
            },
            "ranges": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Range"
              }
            },
            "style": {
              "$ref": "#/definitions/Style"
            },
            "type": {
              "$ref": "#/definitions/DateOccurringType"
            },
            "priority": {
              "type": "integer",
              "default": 1
            },
            "stopIfTrue": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "Top10Rule": {
          "title": "Top10Rule",
          "description": "Represents a formula rule with the specified formula and style.",
          "type": "object",
          "properties": {
            "ruleType": {
              "description": "top10Rule:5.",
              "enum": [
                5
              ]
            },
            "ranges": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Range"
              }
            },
            "style": {
              "$ref": "#/definitions/Style"
            },
            "stopIfTrue": {
              "type": "boolean",
              "default": false
            },
            "priority": {
              "type": "integer",
              "default": 1
            },
            "type": {
              "$ref": "#/definitions/Top10ConditionType"
            },
            "rank": {
              "type": "integer"
            }
          }
        },
        "UniqueRule": {
          "title": "UniqueRule",
          "description": "",
          "type": "object",
          "properties": {
            "ruleType": {
              "description": "uniqueRule:6.",
              "enum": [
                6
              ]
            },
            "ranges": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Range"
              }
            },
            "style": {
              "$ref": "#/definitions/Style"
            },
            "stopIfTrue": {
              "type": "boolean",
              "default": false
            },
            "priority": {
              "type": "integer",
              "default": 1
            }
          }
        },
        "DuplicateRule": {
          "title": "DuplicateRule",
          "description": "Represents a duplicate conditional rule.",
          "type": "object",
          "properties": {
            "ruleType": {
              "description": "duplicateRule:7.",
              "enum": [
                7
              ]
            },
            "ranges": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Range"
              }
            },
            "style": {
              "$ref": "#/definitions/Style"
            },
            "stopIfTrue": {
              "type": "boolean",
              "default": false
            },
            "priority": {
              "type": "integer",
              "default": 1
            }
          }
        },
        "AverageRule": {
          "title": "AverageRule",
          "description": "Represents a average conditional rule.",
          "type": "object",
          "properties": {
            "ruleType": {
              "description": "averageRule:8.",
              "enum": [
                8
              ]
            },
            "ranges": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Range"
              }
            },
            "style": {
              "$ref": "#/definitions/Style"
            },
            "stopIfTrue": {
              "type": "boolean",
              "default": false
            },
            "priority": {
              "type": "integer",
              "default": 1
            },
            "type": {
              "$ref": "#/definitions/AverageConditionType"
            }
          }
        },
        "TwoScaleRule": {
          "title": "TwoScaleRule",
          "description": " Represents a two-color conditional scale rule with the specified parameters.",
          "type": "object",
          "properties": {
            "ruleType": {
              "description": "twoScaleRule:10.",
              "enum": [
                10
              ]
            },
            "ranges": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Range"
              }
            },
            "priority": {
              "type": "integer",
              "default": 1
            },
            "minType": {
              "$ref": "#/definitions/ScaleValueType"
            },
            "minValue": {
              "type": [
                "array",
                "boolean",
                "number",
                "null",
                "object",
                "string"
              ]
            },
            "minColor": {
              "type": "string"
            },
            "maxType": {
              "$ref": "#/definitions/ScaleValueType"
            },
            "maxValue": {
              "type": [
                "array",
                "boolean",
                "number",
                "null",
                "object",
                "string"
              ]
            },
            "maxColor": {
              "type": "string"
            }
          }
        },
        "ThreeScaleRule": {
          "title": "ThreeScaleRule",
          "description": "Represents a three-color scale conditional rule with the specified parameters.",
          "type": "object",
          "properties": {
            "ruleType": {
              "description": "threeScaleRule:11.",
              "enum": [
                11
              ]
            },
            "ranges": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Range"
              }
            },
            "priority": {
              "type": "integer",
              "default": 1
            },
            "minType": {
              "$ref": "#/definitions/ScaleValueType"
            },
            "minValue": {
              "type": [
                "array",
                "boolean",
                "number",
                "null",
                "object",
                "string"
              ]
            },
            "minColor": {
              "type": "string"
            },
            "midType": {
              "$ref": "#/definitions/ScaleValueType"
            },
            "midValue": {
              "type": [
                "array",
                "boolean",
                "number",
                "null",
                "object",
                "string"
              ]
            },
            "midColor": {
              "type": "string"
            },
            "maxType": {
              "$ref": "#/definitions/ScaleValueType"
            },
            "maxValue": {
              "type": [
                "array",
                "boolean",
                "number",
                "null",
                "object",
                "string"
              ]
            },
            "maxColor": {
              "type": "string"
            }
          }
        },
        "DataBarRule": {
          "title": "DataBarRule",
          "description": " Represents a data bar conditional rule with the specified parameters.",
          "type": "object",
          "properties": {
            "ruleType": {
              "description": "dataBarRule:12.",
              "enum": [
                12
              ]
            },
            "ranges": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Range"
              }
            },
            "priority": {
              "type": "integer",
              "default": 1
            },
            "minType": {
              "$ref": "#/definitions/ScaleValueType"
            },
            "minValue": {
              "type": [
                "array",
                "boolean",
                "number",
                "null",
                "object",
                "string"
              ]
            },
            "maxType": {
              "$ref": "#/definitions/ScaleValueType"
            },
            "maxValue": {
              "type": [
                "array",
                "boolean",
                "number",
                "null",
                "object",
                "string"
              ]
            },
            "gradient": {
              "type": "boolean",
              "default": true
            },
            "color": {
              "type": "string"
            },
            "showBorder": {
              "type": "boolean",
              "default": false
            },
            "borderColor": {
              "type": "string",
              "default": "black"
            },
            "dataBarDirection": {
              "$ref": "#/definitions/BarDirection",
              "default": 0
            },
            "negativeFillColor": {
              "type": "string",
              "default": "red"
            },
            "useNegativeFillColor": {
              "type": "boolean",
              "default": true
            },
            "negativeBorderColor": {
              "type": "string",
              "default": "black"
            },
            "useNegativeBorderColor": {
              "type": "boolean",
              "default": false
            },
            "axisPosition": {
              "$ref": "#/definitions/DataBarAxisPosition",
              "default": 0
            },
            "axisColor": {
              "type": "string",
              "default": "black"
            },
            "showBarOnly": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "IconSetRule": {
          "title": "IconSetRule",
          "description": "Represents an icon set rule with the specified parameters.",
          "type": "object",
          "properties": {
            "ruleType": {
              "description": "iconSetRule:13.",
              "enum": [
                13
              ]
            },
            "ranges": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Range"
              }
            },
            "priority": {
              "type": "integer",
              "default": 1
            },
            "iconSetType": {
              "$ref": "#/definitions/IconSetType"
            },
            "iconCriteria": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/IconCriterion"
              }
            },
            "icons": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/IconInfo"
              }
            },
            "showIconOnly": {
              "type": "boolean",
              "default": false
            },
            "reverseIconOrder": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "IconCriterion": {
          "title": "IconCriterion",
          "description": "Represents an icon criteria with the specified parameters.",
          "type": "object",
          "properties": {
            "isGreaterThanOrEqualTo": {
              "type": "boolean"
            },
            "iconValueType": {
              "$ref": "#/definitions/IconValueType"
            },
            "iconValue": {
              "type": [
                "array",
                "boolean",
                "number",
                "null",
                "object",
                "string"
              ]
            }
          }
        },
        "IconInfo": {
          "title": "IconInfo",
          "description": "Represents an specified icon.",
          "type": "object",
          "properties": {
            "iconSetType": {
              "$ref": "#/definitions/IconSetType"
            },
            "iconIndex": {
              "type": "integer"
            }
          }
        },
        "IconValueType": {
          "title": "IconValueType",
          "description": "Indicates whether to return a specified number directly. number:1,percent:4,percentile:5,formula:7.",
          "enum": [
            1,
            4,
            5,
            7
          ]
        },
        "ScaleValueType": {
          "title": "ScaleValueType",
          "description": "Specifies the scale value type. number:0,lowestValue:1,highestValue:2,percent:3,percentile:4,automin:5,formula:6,automax:7.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7
          ]
        },
        "BarDirection": {
          "title": "BarDirection",
          "description": "Specifies the data bar direction. leftToRight:0,rightToLeft:1.",
          "enum": [
            0,
            1
          ]
        },
        "DataBarAxisPosition": {
          "title": "DataBarAxisPosition",
          "description": "Specifies the position of the data bar's axis. automatic:0,cellMidPoint:1,none:2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "IconSetType": {
          "title": "IconSetType",
          "description": "Specifies the icon set. threeArrowsColored:0,threeArrowGray:1,threeTriangles:2,threeStars:3,threeFlags:4,threeTrafficLightsUnrimmed:5,threeTrafficLightsRimmed:6,threeSigns:7,threeSymbolsCircled:8,threeSymbolsUncircled:9,fourArrowsColored:10,fourArrowGray:11,fourRedToBlack:12,fourRatings:13,fourTrafficLights:14,fiveArrowsColored:15,fiveArrowsGray:16,fiveRatings:17,fiveQuarters:18,fiveBoxes:19,noIcons:20.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,
            10,
            11,
            12,
            13,
            14,
            15,
            16,
            17,
            18,
            19,
            20
          ]
        },
        "RegExp": {
          "title": "RegExp",
          "description": "A javaScript build in object,represent a RegExp",
          "type": "object",
          "properties": {
            "source": {
              "type": "string"
            },
            "global": {
              "type": "boolean",
              "default": false
            },
            "ignoreCase": {
              "type": "boolean",
              "default": false
            },
            "multiline": {
              "type": "boolean",
              "default": false
            },
            "lastIndex": {
              "type": "integer"
            }
          }
        },
        "LineBorder": {
          "title": "LineBorder",
          "description": "Indicates the color of the border line. Use a known color name or HEX style color value. The default value is black.",
          "type": [
            "object",
            "null"
          ],
          "properties": {
            "color": {
              "type": "string",
              "default": "black"
            },
            "style": {
              "$ref": "#/definitions/LineStyle",
              "default": 0
            }
          }
        },
        "LineStyle": {
          "title": "LineStyle",
          "description": "Specifies the line drawing style for the border. empty:0,thin:1,medium:2,dashed:3,dotted:4,thick:5,double:6,hair:7,mediumDashed:8,dashDot:9,mediumDashDot:10,dashDotDot:11,mediumDashDotDot:12,slantedDashDot:13.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,
            10,
            11,
            12,
            13
          ]
        },
        "TextDecorationType": {
          "title": "TextDecorationType",
          "description": " Defines the type of the text decoration. none:0,underline:1,lineThrough:2,overline:4,doubleUnderline:8.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,
            10,
            11,
            12,
            13,
            14,
            15
          ]
        },
        "ImeMode": {
          "title": "ImeMode",
          "description": "Defines the ime mode to controls the state of the Input Method Editor (IME). disabled:0,auto:1,active:2,inactive:4.",
          "enum": [
            0,
            1,
            2,
            4
          ]
        },
        "ReferenceStyle": {
          "title": "ReferenceStyle",
          "description": "Specifies the formula reference style. a1:0,r1c1:1.",
          "enum": [
            0,
            1
          ]
        },
        "AutoFillType": {
          "title": "AutoFillType",
          "description": "Represents the type of drag fill. copyCells:0,fillSeries:1,fillFormattingOnly:2,fillWithoutFormatting:3,flearValues:4,auto:5.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5
          ]
        },
        "AutoFitType": {
          "title": "AutoFitType",
          "description": "Represents whether the component autofits cells or headers. cell:0,cellWithHeader:1.",
          "enum": [
            0,
            1
          ]
        },
        "ResizeMode": {
          "title": "ResizeMode",
          "description": "Represents the mode which will be used by resizing. normal: 0, split: 1.",
          "enum": [
            0,
            1
          ]
        },
        "ShowScrollTip": {
          "title": "ShowScrollTip",
          "description": "Specifies how the scroll tip is displayed. none:0,horizontal:1,vertical:2,both:3",
          "enum": [
            0,
            1,
            2,
            3
          ]
        },
        "ShowResizeTip": {
          "title": "ShowResizeTip",
          "description": "Defines how the resize tip is displayed. none:0,column:1,row:2,both:3",
          "enum": [
            0,
            1,
            2,
            3
          ]
        },
        "ImageLayout": {
          "title": "ImageLayout",
          "description": "Defines the background image layout. stretch:0,center:1,zoom:2,none:3.",
          "enum": [
            0,
            1,
            2,
            3
          ]
        },
        "Sheet": {
          "title": "Sheet",
          "description": "Represent a sheet",
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            },
            "defaults": {
              "$ref": "#/definitions/SheetDefaultOption"
            },
            "frozenRowCount": {
              "type": "integer",
              "default": 0
            },
            "frozenColCount": {
              "type": "integer",
              "default": 0
            },
            "frozenTrailingRowCount": {
              "type": "integer",
              "default": 0
            },
            "frozenTrailingColCount": {
              "type": "integer",
              "default": 0
            },
            "rowCount": {
              "type": "integer"
            },
            "columnCount": {
              "type": "integer"
            },
            "activeRow": {
              "type": "integer",
              "default": 0
            },
            "activeCol": {
              "type": "integer",
              "default": 0
            },
            "zoomFactor": {
              "type": "number",
              "minimum": 0.25,
              "maximum": 4.0,
              "default": 1.0
            },
            "rowHeaderColCount": {
              "type": "integer",
              "default": 1
            },
            "colHeaderRowCount": {
              "type": "integer",
              "default": 1
            },
            "visible": {
              "type": "boolean",
              "default": true
            },
            "tag": {
              "type": [
                "array",
                "boolean",
                "number",
                "null",
                "object",
                "string"
              ]
            },
            "spans": {
              "$ref": "#/definitions/SpanModel"
            },
            "rowHeaderSpan": {
              "$ref": "#/definitions/SpanModel"
            },
            "colHeaderSpan": {
              "$ref": "#/definitions/SpanModel"
            },
            "data": {
              "$ref": "#/definitions/SheetModel"
            },
            "rowHeaderData": {
              "$ref": "#/definitions/SheetModel"
            },
            "colHeaderData": {
              "$ref": "#/definitions/SheetModel"
            },
            "selections": {
              "$ref": "#/definitions/SelectionModel"
            },
            "theme": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "$ref": "#/definitions/SpreadTheme"
                }
              ]
            },
            "rows": {
              "type": "array",
              "items": {
                "anyOf": [
                  {
                    "type": "null"
                  },
                  {
                    "$ref": "#/definitions/RowColInfo"
                  }
                ]
              }
            },
            "columns": {
              "type": "array",
              "items": {
                "anyOf": [
                  {
                    "type": "null"
                  },
                  {
                    "$ref": "#/definitions/RowColInfo"
                  }
                ]
              }
            },
            "rowHeaderColInfos": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/RowColInfo"
              }
            },
            "colHeaderRowInfos": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/RowColInfo"
              }
            },
            "namedStyles": {
              "type": "array",
              "description": "The name property of the Style in namedStyles can not be null,undefined or '',it must be set a value.",
              "items": {
                "$ref": "#/definitions/Style"
              }
            },
            "names": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/NameInfo"
              }
            },
            "rowFilter": {
              "anyOf": [
                {
                  "$ref": "#/definitions/HideRowFilter"
                },
                {
                  "$ref": "#/definitions/RowFilterBase"
                }
              ]
            },
            "autoGenerateColumns": {
              "type": "boolean",
              "default": true
            },
            "sparklineGroups": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/SparklineGroup"
              }
            },
            "comments": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Comment"
              }
            },
            "showRowOutline": {
              "type": "boolean",
              "default": true
            },
            "showColumnOutline": {
              "type": "boolean",
              "default": true
            },
            "rowOutlines": {
              "$ref": "#/definitions/Outline"
            },
            "columnOutlines": {
              "$ref": "#/definitions/Outline"
            },
            "conditionalFormats": {
              "type": "object",
              "properties": {
                "rules": {
                  "type": "array",
                  "items": {
                    "$ref": "#/definitions/Rule"
                  }
                }
              }
            },
            "tables": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/SheetTable"
              }
            },
            "floatingObjects": {
              "type": "array",
              "items": {
                "anyOf": [
                  {
                    "$ref": "#/definitions/FloatingObject"
                  },
                  {
                    "$ref": "#/definitions/Picture"
                  }
                ]
              }
            },
            "customFunctions": {
              "type": "object",
              "patternProperties": {
                ".+": {
                  "$ref": "#/definitions/Function"
                }
              }
            },
            "printInfo": {
              "$ref": "#/definitions/PrintInfo"
            },
            "slicers": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Slicer"
              }
            },
            "allowCellOverflow": {
              "type": "boolean",
              "default": true
            },
            "sheetTabColor": {
              "type": "string"
            },
            "frozenlineColor": {
              "type": "string",
              "default": "black"
            },
            "clipBoardOptions": {
              "$ref": "#/definitions/ClipboardPasteOptions",
              "default": 0
            },
            "gridline": {
              "$ref": "#/definitions/SheetGridlineOption"
            },
            "sheetAreaOffset": {
              "$ref": "#/definitions/SheetAreaOffsetOption"
            },
            "rowHeaderVisible": {
              "type": "boolean",
              "default": true
            },
            "colHeaderVisible": {
              "type": "boolean",
              "default": true
            },
            "rowHeaderAutoText": {
              "$ref": "#/definitions/HeaderAutoText",
              "default": 1
            },
            "colHeaderAutoText": {
              "$ref": "#/definitions/HeaderAutoText",
              "default": 2
            },
            "rowHeaderAutoTextIndex": {
              "type": "integer",
              "default": -1
            },
            "colHeaderAutoTextIndex": {
              "type": "integer",
              "default": -1
            },
            "isProtected": {
              "type": "boolean",
              "default": false
            },
            "protectionOptions": {
              "$ref": "#/definitions/ProtectionOption"
            },
            "selectionBackColor": {
              "type": "string",
              "default": "rgba(180,180,200,0.2)"
            },
            "selectionBorderColor": {
              "type": "string",
              "default": "black"
            },
            "borderColor": {
              "type": "string",
              "default": "black"
            },
            "borderWidth": {
              "type": "integer",
              "minimum": 0,
              "default": 0
            },
            "validations": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/DefaultDataValidator"
              }
            },
            "charts": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Chart"
              }
            },
            "shapes": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Shape"
              }
            },
            "cellStates": {
              "$ref": "#/definitions/CellStates"
            },
            "outlineColumnOptions": {
              "$ref": "#/definitions/OutlineColumnOptions"
            },
            "autoMergeRangeInfos": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/RangeInfo"
              }
            }
          }
        },
        "SelectionModel": {
          "title": "SelectionModel",
          "description": "Represent a data model for cell selection.",
          "type": "object",
          "properties": {
            "selectionPolicy": {
              "$ref": "#/definitions/SelectionPolicy",
              "default": 2
            },
            "selectionUnit": {
              "$ref": "#/definitions/SelectionUnit",
              "default": 0
            },
            "activeSelectedRangeIndex": {
              "type": "integer"
            },
            "length": {
              "type": "integer",
              "minimum": 0
            }
          },
          "patternProperties": {
            "[0-9]+": {
              "$ref": "#/definitions/Range"
            }
          }
        },
        "SelectionPolicy": {
          "title": "SelectionPolicy",
          "description": "Specifies how users can select items in the control. single:0,range:1,multiRange:2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "SelectionUnit": {
          "title": "SelectionUnit",
          "description": "Specifies the smallest unit users or the application can select. cell:0,row:1,column:2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "SheetModel": {
          "title": "SheetModel",
          "description": "Represent a data model for worksheet.",
          "type": "object",
          "properties": {
            "dataTable": {
              "type": "object",
              "patternProperties": {
                "[0-9]+": {
                  "type": "object",
                  "patternProperties": {
                    "[0-9]+": {
                      "type": "object",
                      "properties": {
                        "value": {
                          "anyOf": [
                            {
                              "type": "array"
                            },
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "number"
                            },
                            {
                              "type": "null"
                            },
                            {
                              "type": "string"
                            },
                            {
                              "type": "object"
                            },
                            {
                              "$ref": "#/definitions/RichText"
                            }
                          ]
                        },
                        "style": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "$ref": "#/definitions/Style"
                            }
                          ]
                        },
                        "tag": {
                          "type": [
                            "array",
                            "boolean",
                            "number",
                            "null",
                            "object",
                            "string"
                          ]
                        },
                        "formula": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "bindingPath": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            },
            "rowDataArray": {
              "type": "array",
              "items": {
                "type": [
                  "object",
                  "null"
                ],
                "properties": {
                  "style": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "$ref": "#/definitions/Style"
                      }
                    ]
                  },
                  "tag": {
                    "type": [
                      "array",
                      "boolean",
                      "number",
                      "null",
                      "object",
                      "string"
                    ]
                  }
                }
              }
            },
            "columnDataArray": {
              "type": "array",
              "items": {
                "type": [
                  "object",
                  "null"
                ],
                "properties": {
                  "style": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "$ref": "#/definitions/Style"
                      }
                    ]
                  },
                  "tag": {
                    "type": [
                      "array",
                      "boolean",
                      "number",
                      "null",
                      "object",
                      "string"
                    ]
                  }
                }
              }
            },
            "defaultDataNode": {
              "type": "object",
              "properties": {
                "style": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "$ref": "#/definitions/Style"
                    }
                  ]
                }
              }
            }
          }
        },
        "SheetGridlineOption": {
          "title": "SheetGridlineOption",
          "description": "Represent a sheet gridline option.",
          "type": "object",
          "properties": {
            "color": {
              "type": "string"
            },
            "showVerticalGridline": {
              "type": "boolean"
            },
            "showHorizontalGridline": {
              "type": "boolean"
            }
          }
        },
        "SheetAreaOffsetOption": {
          "title": "SheetAreaOffsetOption",
          "description": "Represent a sheet area offset option.",
          "type": "object",
          "properties": {
            "left": {
              "type": "number",
              "minimum": 0
            },
            "top": {
              "type": "number",
              "minimum": 0
            }
          }
        },
        "SpreadTheme": {
          "title": "SpreadTheme",
          "description": "Represents an expression with a named variable as the expression.",
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            },
            "themeColor": {
              "$ref": "#/definitions/ThemeColor"
            },
            "headingFont": {
              "type": "string"
            },
            "bodyFont": {
              "type": "string"
            }
          }
        },
        "ThemeColor": {
          "title": "ThemeColor",
          "description": " Creates a ThemeColor instance.",
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            },
            "text1": {
              "$ref": "#/definitions/Color"
            },
            "text2": {
              "$ref": "#/definitions/Color"
            },
            "background1": {
              "$ref": "#/definitions/Color"
            },
            "background2": {
              "$ref": "#/definitions/Color"
            },
            "accent1": {
              "$ref": "#/definitions/Color"
            },
            "accent2": {
              "$ref": "#/definitions/Color"
            },
            "accent3": {
              "$ref": "#/definitions/Color"
            },
            "accent4": {
              "$ref": "#/definitions/Color"
            },
            "accent5": {
              "$ref": "#/definitions/Color"
            },
            "accent6": {
              "$ref": "#/definitions/Color"
            },
            "hyperlink": {
              "$ref": "#/definitions/Color"
            },
            "followedHyperlink": {
              "$ref": "#/definitions/Color"
            }
          }
        },
        "Color": {
          "title": "Color",
          "description": "Represents an argb(alpha,red, green, blue) color.",
          "type": "object",
          "properties": {
            "a": {
              "type": "number",
              "minimum": 0,
              "maximum": 255
            },
            "r": {
              "type": "number",
              "minimum": 0,
              "maximum": 255
            },
            "g": {
              "type": "number",
              "minimum": 0,
              "maximum": 255
            },
            "b": {
              "type": "number",
              "minimum": 0,
              "maximum": 255
            }
          }
        },
        "Function": {
          "title": "Function",
          "description": "Represents an abstract base class for defining functions.",
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            },
            "minArgs": {
              "type": "number"
            },
            "maxArgs": {
              "type": "number"
            },
            "typeName": {
              "type": "string",
              "default": ""
            }
          }
        },
        "Range": {
          "title": "Range",
          "description": "Represents a range, which is described by the row index, column index, row count, and column count.",
          "type": "object",
          "properties": {
            "row": {
              "type": "integer"
            },
            "col": {
              "type": "integer"
            },
            "rowCount": {
              "type": "integer",
              "minimum": 0
            },
            "colCount": {
              "type": "integer",
              "minimum": 0
            }
          }
        },
        "RowFilterBase": {
          "title": "RowFilterBase",
          "description": "Represents a row filter base that supports row filters for filtering rows in a sheet.",
          "type": "object",
          "properties": {
            "typeName": {
              "type": "string",
              "default": ""
            },
            "range": {
              "$ref": "#/definitions/Range"
            },
            "filterItemMap": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "index": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "conditions": {
                    "type": "array",
                    "items": {
                      "$ref": "#/definitions/Condition"
                    }
                  }
                }
              }
            },
            "filteredColumns": {
              "type": "array",
              "items": {
                "type": "integer",
                "minimum": 0
              }
            },
            "sortInfo": {
              "$ref": "#/definitions/SortInfo"
            },
            "showFilterButton": {
              "type": "boolean"
            },
            "filterButtonVisibleInfo": {
              "type": "object",
              "patternProperties": {
                "[0-9]+": {
                  "description": "The property name is the column's index that realtive to the sheet.",
                  "type": "boolean"
                }
              }
            }
          }
        },
        "HideRowFilter": {
          "title": "HideRowFilter",
          "description": "Represents a default row filter.",
          "type": "object",
          "properties": {
            "range": {
              "$ref": "#/definitions/Range"
            },
            "dialogVisibleInfo": {
              "type": "object",
              "properties": {
                "sortByValue": {
                  "type": "boolean",
                  "default": true
                },
                "sortByColor": {
                  "type": "boolean",
                  "default": true
                },
                "filterByColor": {
                  "type": "boolean",
                  "default": true
                },
                "filterByValue": {
                  "type": "boolean",
                  "default": true
                },
                "listFilterArea": {
                  "type": "boolean",
                  "default": true
                }
              }
            },
            "filterItemMap": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "index": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "conditions": {
                    "type": "array",
                    "items": {
                      "$ref": "#/definitions/Condition"
                    }
                  }
                }
              }
            },
            "filteredColumns": {
              "type": "array",
              "items": {
                "type": "integer",
                "minimum": 0
              }
            },
            "sortInfo": {
              "$ref": "#/definitions/SortInfo"
            },
            "showFilterButton": {
              "type": "boolean"
            },
            "filterButtonVisibleInfo": {
              "type": "object",
              "patternProperties": {
                "[0-9]+": {
                  "description": "The property name is the column's index that realtive to the sheet.",
                  "type": "boolean"
                }
              }
            }
          }
        },
        "TableFilter": {
          "title": "TableFilter",
          "description": "Represents a table  filter.",
          "type": "object",
          "properties": {
            "range": {
              "$ref": "#/definitions/Range"
            },
            "filterItemMap": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "index": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "conditions": {
                    "type": "array",
                    "items": {
                      "$ref": "#/definitions/Condition"
                    }
                  }
                }
              }
            },
            "filteredColumns": {
              "type": "array",
              "items": {
                "type": "integer",
                "minimum": 0
              }
            },
            "sortInfo": {
              "$ref": "#/definitions/SortInfo"
            },
            "showFilterButton": {
              "type": "boolean"
            },
            "filterButtonVisibleInfo": {
              "type": "object",
              "patternProperties": {
                "[0-9]+": {
                  "description": "The property name is the column's index that realtive to the table.",
                  "type": "boolean"
                }
              }
            }
          }
        },
        "SortInfo": {
          "title": "SortInfo",
          "description": "",
          "type": "object",
          "properties": {
            "index": {
              "type": "integer"
            },
            "ascending": {
              "type": "boolean"
            }
          }
        },
        "SheetDefaultOption": {
          "title": "SheetDefaultOption",
          "description": "",
          "type": "object",
          "properties": {
            "rowHeight": {
              "type": "number",
              "minimum": 0,
              "default": 20
            },
            "colHeaderRowHeight": {
              "type": "number",
              "minimum": 0,
              "default": 20
            },
            "colWidth": {
              "type": "number",
              "minimum": 0,
              "default": 62
            },
            "rowHeaderColWidth": {
              "type": "number",
              "minimum": 0,
              "default": 40
            }
          }
        },
        "RowColInfo": {
          "title": "RowColInfo",
          "description": "Represent a row or column.",
          "type": "object",
          "properties": {
            "size": {
              "type": "number",
              "minimum": 0
            },
            "starSize": {
              "type": "string"
            },
            "visible": {
              "type": "boolean"
            },
            "resizable": {
              "type": "boolean"
            },
            "pageBreak": {
              "type": "boolean"
            }
          }
        },
        "SparklineGroup": {
          "title": "SparklineGroup",
          "description": "Represents a sparkline group.",
          "type": "object",
          "properties": {
            "setting": {
              "$ref": "#/definitions/SparklineSetting",
              "default": null
            },
            "displayDateAxis": {
              "type": "boolean",
              "default": false
            },
            "sparklineType": {
              "$ref": "#/definitions/SparklineType"
            },
            "axisReference": {
              "title": "axisReference",
              "description": "Represents the sparkline group axisReference, it has a sheet name when the sparkline is cross sheet",
              "type": "object",
              "properties": {
                "row": {
                  "type": "integer"
                },
                "col": {
                  "type": "integer"
                },
                "rowCount": {
                  "type": "integer",
                  "minimum": 0
                },
                "colCount": {
                  "type": "integer",
                  "minimum": 0
                },
                "sheetName": {
                  "type": "string",
                  "default": null
                }
              },
              "default": null
            },
            "axisOrientation": {
              "$ref": "#/definitions/DataOrientation",
              "default": 1
            },
            "sparklines": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Sparkline"
              }
            }
          }
        },
        "SparklineSetting": {
          "title": "SparklineSetting",
          "description": "Represents the sparkline settings.",
          "type": "object",
          "properties": {
            "axisColor": {
              "type": "string",
              "default": "Black"
            },
            "firstMarkerColor": {
              "type": "string",
              "default": "rgba(149,179,215,255)"
            },
            "highMarkerColor": {
              "type": "string",
              "default": "Blue"
            },
            "lastMarkerColor": {
              "type": "string",
              "default": "rgba(149,179,215,255)"
            },
            "lowMarkerColor": {
              "type": "string",
              "default": "Blue"
            },
            "markersColor": {
              "type": "string",
              "default": "rgba(36,64,98,255)"
            },
            "negativeColor": {
              "type": "string",
              "default": "Brown"
            },
            "seriesColor": {
              "type": "string",
              "default": "rgba(36,64,98,255)"
            },
            "displayEmptyCellsAs": {
              "$ref": "#/definitions/EmptyValueStyle",
              "default": 0
            },
            "rightToLeft": {
              "type": "boolean",
              "default": false
            },
            "displayHidden": {
              "type": "boolean",
              "default": false
            },
            "displayXAxis": {
              "type": "boolean",
              "default": false
            },
            "showFirst": {
              "type": "boolean",
              "default": false
            },
            "showHigh": {
              "type": "boolean",
              "default": false
            },
            "showLast": {
              "type": "boolean",
              "default": false
            },
            "showLow": {
              "type": "boolean",
              "default": false
            },
            "showNegative": {
              "type": "boolean",
              "default": false
            },
            "showMarkers": {
              "type": "boolean",
              "default": false
            },
            "manualMax": {
              "type": "number",
              "default": 0.0
            },
            "manualMin": {
              "type": "number",
              "default": 0.0
            },
            "maxAxisType": {
              "$ref": "#/definitions/SparklineAxisMinMax",
              "default": 0
            },
            "minAxisType": {
              "$ref": "#/definitions/SparklineAxisMinMax",
              "default": 0
            },
            "lineWeight": {
              "type": "number",
              "default": 1
            }
          }
        },
        "Sparkline": {
          "title": "Sparkline",
          "description": "Represents a Sparkline.",
          "type": "object",
          "properties": {
            "row": {
              "type": "integer",
              "minimum": 0
            },
            "col": {
              "type": "integer",
              "minimum": 0
            },
            "orientation": {
              "$ref": "#/definitions/DataOrientation"
            },
            "data": {
              "title": "data",
              "description": "Represents the sparkline data, it has a sheet name when the sparkline is cross sheet",
              "type": "object",
              "properties": {
                "row": {
                  "type": "integer"
                },
                "col": {
                  "type": "integer"
                },
                "rowCount": {
                  "type": "integer",
                  "minimum": 0
                },
                "colCount": {
                  "type": "integer",
                  "minimum": 0
                },
                "sheetName": {
                  "type": "string",
                  "default": null
                }
              },
              "default": null
            }
          }
        },
        "SparklineType": {
          "title": "SparklineType",
          "description": "Represents the sparkline type. line:0,column:1,winloss:2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "SparklineAxisMinMax": {
          "title": "SparklineAxisMinMax",
          "description": "An enumeration that specifies information about how the vertical axis minimum or maximum is computed for this sparkline group. individual:0,group:1,custom:2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "EmptyValueStyle": {
          "title": "EmptyValueStyle",
          "description": "Specifies how to show an empty value from a data series in the chart. gaps:0,zero:1,connect:2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "DataOrientation": {
          "title": "DataOrientation",
          "description": "Represents the orientation of the range. vertical:0,horizontal:1.",
          "enum": [
            0,
            1
          ]
        },
        "Comment": {
          "title": "Comment",
          "description": "Represents a comment.",
          "type": "object",
          "properties": {
            "text": {
              "type": "string",
              "default": ""
            },
            "location": {
              "$ref": "#/definitions/Point"
            },
            "width": {
              "type": "number",
              "minimum": 0,
              "exclusiveMinimum": true,
              "default": 160
            },
            "height": {
              "type": "number",
              "minimum": 0,
              "exclusiveMinimum": true,
              "default": 100
            },
            "fontFamily": {
              "type": "string",
              "default": "Arial"
            },
            "fontStyle": {
              "type": "string",
              "default": "normal"
            },
            "fontSize": {
              "type": "string",
              "default": "9pt"
            },
            "fontWeight": {
              "type": "string",
              "default": "normal"
            },
            "textDecoration": {
              "$ref": "#/definitions/TextDecorationType",
              "default": 0
            },
            "foreColor": {
              "type": "string",
              "default": "black"
            },
            "backColor": {
              "type": "string",
              "default": "#FFFFE1"
            },
            "locked": {
              "type": "boolean",
              "default": true
            },
            "lockText": {
              "type": "boolean",
              "default": true
            },
            "horizontalAlign": {
              "$ref": "#/definitions/HorizontalAlign",
              "default": 0
            },
            "autoSize": {
              "type": "boolean",
              "default": false
            },
            "dynamicMove": {
              "type": "boolean",
              "default": true
            },
            "dynamicSize": {
              "type": "boolean",
              "default": true
            },
            "opacity": {
              "type": "number",
              "minimum": 0,
              "maximum": 1,
              "default": 1
            },
            "borderWidth": {
              "type": "number",
              "default": 1
            },
            "borderStyle": {
              "type": "string",
              "default": "solid"
            },
            "borderColor": {
              "type": "string",
              "default": "black"
            },
            "padding": {
              "$ref": "#/definitions/Padding"
            },
            "showShadow": {
              "type": "boolean",
              "default": false
            },
            "displayMode": {
              "$ref": "#/definitions/DisplayMode",
              "default": 2
            },
            "commentState": {
              "$ref": "#/definitions/CommentState",
              "default": 3
            },
            "zIndex": {
              "type": "integer",
              "default": -1
            },
            "ignoreDefaultLocation": {
              "type": "boolean",
              "default": false
            },
            "rowIndex": {
              "type": "integer",
              "default": -1
            },
            "colIndex": {
              "type": "integer",
              "default": -1
            }
          }
        },
        "Padding": {
          "title": "Padding",
          "description": "Represent a padding.",
          "type": "object",
          "properties": {
            "left": {
              "type": "number",
              "default": 0
            },
            "top": {
              "type": "number",
              "default": 0
            },
            "right": {
              "type": "number",
              "default": 0
            },
            "bottom": {
              "type": "number",
              "default": 0
            }
          }
        },
        "Point": {
          "title": "Point",
          "description": "Represents an x and y coordinate pair in two-dimensional space.",
          "type": "object",
          "properties": {
            "x": {
              "type": "number"
            },
            "y": {
              "type": "number"
            }
          }
        },
        "CommentState": {
          "title": "CommentState",
          "description": "Defines the state of Comment. active:1,edit:2,normal:3",
          "enum": [
            1,
            2,
            3
          ]
        },
        "DisplayMode": {
          "title": "DisplayMode",
          "description": "Defines when the comment is displayed. alwaysShown:1,hoverShown:2.",
          "enum": [
            1,
            2
          ]
        },
        "SheetTable": {
          "title": "SheetTable",
          "description": "Represents a table that can be added in a sheet.",
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            },
            "row": {
              "type": "integer",
              "default": -1
            },
            "col": {
              "type": "integer",
              "default": -1
            },
            "rowCount": {
              "type": "integer",
              "default": -1
            },
            "colCount": {
              "type": "integer",
              "default": -1
            },
            "showHeader": {
              "type": "boolean",
              "default": true
            },
            "showFooter": {
              "type": "boolean",
              "default": false
            },
            "highlightFirstColumn": {
              "type": "boolean",
              "default": false
            },
            "highlightLastColumn": {
              "type": "boolean",
              "default": false
            },
            "bandRows": {
              "type": "boolean",
              "default": true
            },
            "bandColumns": {
              "type": "boolean",
              "default": false
            },
            "style": {
              "$ref": "#/definitions/TableTheme"
            },
            "autoGenerateColumns": {
              "type": "boolean",
              "default": true
            },
            "bindingPath": {
              "type": "string"
            },
            "columns": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/TableColumnInfo"
              }
            },
            "rowFilter": {
              "$ref": "#/definitions/TableFilter"
            },
            "useFooterDropDownList": {
              "type": "boolean",
              "default": false
            },
            "showResizeHandle": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "TableColumnInfo": {
          "title": "TableColumnInfo",
          "description": "Represents the table column.",
          "type": "object",
          "properties": {
            "id": {
              "type": "integer"
            },
            "name": {
              "type": "string"
            },
            "dataField": {
              "type": [
                "string",
                "null"
              ]
            },
            "footerFormula": {
              "type": "string"
            },
            "dataAreaFormula": {
              "type": "string"
            },
            "cellType": {
              "$ref": "#/definitions/CellType"
            },
            "formatter": {
              "type": "string"
            },
            "footerValue": {
              "type": [
                "array",
                "boolean",
                "number",
                "null",
                "object",
                "string"
              ]
            }
          }
        },
        "TableTheme": {
          "title": "TableTheme",
          "anyOf": [
            {
              "$ref": "#/definitions/BuildInTableTheme"
            },
            {
              "$ref": "#/definitions/CustomTableTheme"
            }
          ]
        },
        "BuildInTableTheme": {
          "title": "BuildInTableTheme",
          "description": "Represents a built-in table style setting.",
          "type": "object",
          "properties": {
            "buildInName": {
              "type": "string"
            }
          }
        },
        "CustomTableTheme": {
          "title": "CustomTableTheme",
          "description": "Represents a custom table style setting.",
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            },
            "wholeTableStyle": {
              "$ref": "#/definitions/TableStyle"
            },
            "headerRowStyle": {
              "$ref": "#/definitions/TableStyle"
            },
            "footerRowStyle": {
              "$ref": "#/definitions/TableStyle"
            },
            "firstRowStripStyle": {
              "$ref": "#/definitions/TableStyle"
            },
            "secondRowStripStyle": {
              "$ref": "#/definitions/TableStyle"
            },
            "firstRowStripSize": {
              "type": "number",
              "default": 1
            },
            "secondRowStripSize": {
              "type": "number",
              "default": 1
            },
            "firstColumnStripStyle": {
              "$ref": "#/definitions/TableStyle"
            },
            "secondColumnStripStyle": {
              "$ref": "#/definitions/TableStyle"
            },
            "firstColumnStripSize": {
              "type": "number",
              "default": 1
            },
            "secondColumnStripSize": {
              "type": "number",
              "default": 1
            },
            "highlightFirstColumnStyle": {
              "$ref": "#/definitions/TableStyle"
            },
            "highlightLastColumnStyle": {
              "$ref": "#/definitions/TableStyle"
            },
            "firstHeaderCellStyle": {
              "$ref": "#/definitions/TableStyle"
            },
            "lastHeaderCellStyle": {
              "$ref": "#/definitions/TableStyle"
            },
            "firstFooterCellStyle": {
              "$ref": "#/definitions/TableStyle"
            },
            "lastFooterCellStyle": {
              "$ref": "#/definitions/TableStyle"
            }
          }
        },
        "TableStyle": {
          "title": "TableStyle",
          "description": "Represents table style information.",
          "type": "object",
          "properties": {
            "backColor": {
              "type": "string"
            },
            "foreColor": {
              "type": "string"
            },
            "font": {
              "type": "string"
            },
            "borderLeft": {
              "$ref": "#/definitions/LineBorder"
            },
            "borderTop": {
              "$ref": "#/definitions/LineBorder"
            },
            "borderRight": {
              "$ref": "#/definitions/LineBorder"
            },
            "borderBottom": {
              "$ref": "#/definitions/LineBorder"
            },
            "borderHorizontal": {
              "$ref": "#/definitions/LineBorder"
            },
            "borderVertical": {
              "$ref": "#/definitions/LineBorder"
            },
            "textDecoration": {
              "$ref": "#/definitions/TextDecorationType",
              "default": 0
            }
          }
        },
        "FloatingObject": {
          "title": "FloatingObject",
          "description": "Represents a custom floating object.",
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            },
            "x": {
              "type": "number",
              "default": 0
            },
            "y": {
              "type": "number",
              "default": 0
            },
            "width": {
              "type": "number",
              "default": 0
            },
            "height": {
              "type": "number",
              "default": 0
            },
            "canPrint": {
              "type": "boolean",
              "default": true
            },
            "isSelected": {
              "type": "boolean",
              "default": false
            },
            "isLocked": {
              "type": "boolean",
              "default": true
            },
            "isVisible": {
              "type": "boolean",
              "default": true
            },
            "dynamicMove": {
              "type": "boolean",
              "default": true
            },
            "dynamicSize": {
              "type": "boolean",
              "default": true
            },
            "fixedPosition": {
              "type": "boolean"
            },
            "allowResize": {
              "type": "boolean",
              "default": true
            },
            "allowMove": {
              "type": "boolean",
              "default": true
            },
            "typeName": {
              "type": "string"
            },
            "content": {
              "type": "string"
            },
            "zIndex": {
              "type": "integer"
            }
          }
        },
        "Picture": {
          "title": "Picture",
          "description": "Represents a picture.",
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            },
            "x": {
              "type": "number",
              "default": 0
            },
            "y": {
              "type": "number",
              "default": 0
            },
            "width": {
              "type": "number",
              "default": 0
            },
            "height": {
              "type": "number",
              "default": 0
            },
            "canPrint": {
              "type": "boolean",
              "default": true
            },
            "isSelected": {
              "type": "boolean",
              "default": false
            },
            "isLocked": {
              "type": "boolean",
              "default": true
            },
            "isVisible": {
              "type": "boolean",
              "default": true
            },
            "dynamicMove": {
              "type": "boolean",
              "default": true
            },
            "dynamicSize": {
              "type": "boolean",
              "default": true
            },
            "fixedPosition": {
              "type": "boolean"
            },
            "allowResize": {
              "type": "boolean",
              "default": true
            },
            "allowMove": {
              "type": "boolean",
              "default": true
            },
            "typeName": {
              "type": "string"
            },
            "src": {
              "type": "string"
            },
            "backColor": {
              "type": "string"
            },
            "borderRadius": {
              "type": "number",
              "default": -1
            },
            "borderWidth": {
              "type": "number",
              "default": 1
            },
            "borderStyle": {
              "type": "string",
              "default": "none"
            },
            "borderColor": {
              "type": "string"
            },
            "pictureStretch": {
              "$ref": "#/definitions/ImageLayout",
              "default": 0
            },
            "zIndex": {
              "type": "integer"
            }
          }
        },
        "SpanModel": {
          "title": "SpanModel",
          "description": "Represent a data model for cell spans.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/Range"
          }
        },
        "HeaderAutoText": {
          "title": "HeaderAutoText",
          "description": "Specifies which default labels are displayed in headers. blank:0,numbers:1,letters:2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "ClipboardPasteOptions": {
          "title": "ClipboardPasteOptions",
          "description": "Specifies what data is pasted from the Clipboard. all:0,values:1,formatting:2,formulas:3,valuesAndFormatting:4,formulasAndFormatting:5",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5
          ]
        },
        "ProtectionOption": {
          "title": "ProtectionOption",
          "description": "Specifies the elements that you want users to be able to change.",
          "type": "object",
          "properties": {
            "allowSelectLockedCells": {
              "type": "boolean"
            },
            "allowSelectUnlockedCells": {
              "type": "boolean"
            },
            "allowSort": {
              "type": "boolean"
            },
            "allowFilter": {
              "type": "boolean"
            },
            "allowEditObjects": {
              "type": "boolean"
            },
            "allowResizeRows": {
              "type": "boolean"
            },
            "allowResizeColumns": {
              "type": "boolean"
            }
          }
        },
        "Outline": {
          "title": "Outline",
          "description": "Represents an outline for the worksheet.",
          "type": "object",
          "properties": {
            "head": {
              "$ref": "#/definitions/OutlineItemInfo"
            },
            "tail": {
              "$ref": "#/definitions/OutlineItemInfo"
            },
            "direction": {
              "$ref": "#/definitions/OutlineDirection",
              "default": 1
            },
            "itemsData": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "index": {
                    "type": "integer"
                  },
                  "count": {
                    "type": "integer"
                  },
                  "info": {
                    "$ref": "#/definitions/OutlineItemInfo"
                  }
                }
              }
            }
          }
        },
        "OutlineItemInfo": {
          "title": "OutlineItemInfo",
          "description": "Represents an outline item information.",
          "type": "object",
          "properties": {
            "level": {
              "type": "integer",
              "default": 0
            },
            "collapsed": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "OutlineDirection": {
          "title": "OutlineDirection",
          "description": "Specifies the status of an outline summary row or column position. backward:0,forward:1.",
          "enum": [
            0,
            1
          ]
        },
        "OutlineColumnOptions": {
          "title": "OutlineColumnOptions",
          "description": "Represents the outline column options",
          "type": "object",
          "properties": {
            "columnIndex": {
              "type": "number"
            },
            "showImage": {
              "type": "boolean",
              "default": false
            },
            "images": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "showCheckBox": {
              "type": "boolean",
              "default": false
            },
            "showIndicator": {
              "type": "boolean",
              "default": true
            },
            "expandIndicator": {
              "type": "string",
              "default": ""
            },
            "collapseIndicator": {
              "type": "boolean",
              "default": ""
            },
            "maxLevel": {
              "type": "number",
              "default": 10
            },
            "data": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/OutlineColumnItemData"
              }
            }
          }
        },
        "OutlineColumnItemData": {
          "title": "OutlineColumnItemData",
          "description": "Represents the data of row in the outline column.",
          "type": "object",
          "properties": {
            "checked": {
              "type": "boolean",
              "default": false
            }
          }
        },
        "SparklineEx": {
          "title": "SparklineEx",
          "description": "Represents the base class for the other SparklineEx classes.",
          "type": "object",
          "properties": {
            "typeName": {
              "type": "string",
              "default": ""
            }
          }
        },
        "ResizeZeroIndicator": {
          "title": "ResizeZeroIndicator",
          "description": "Specifies the drawing policy of the row or column when it is resized to zero. default:0,enhanced:1.",
          "enum": [
            0,
            1
          ]
        },
        "PrintInfo": {
          "title": "PrintInfo",
          "description": "Represents the information to use when printing a Sheet.",
          "type": "object",
          "properties": {
            "bestFitRows": {
              "type": "boolean",
              "default": false
            },
            "bestFitColumns": {
              "type": "boolean",
              "default": false
            },
            "columnStart": {
              "type": "number",
              "default": -1
            },
            "columnEnd": {
              "type": "number",
              "default": -1
            },
            "rowStart": {
              "type": "number",
              "default": -1
            },
            "rowEnd": {
              "type": "number",
              "default": -1
            },
            "repeatColumnStart": {
              "type": "number",
              "default": -1
            },
            "repeatColumnEnd": {
              "type": "number",
              "default": -1
            },
            "repeatRowStart": {
              "type": "number",
              "default": -1
            },
            "repeatRowEnd": {
              "type": "number",
              "default": -1
            },
            "showBorder": {
              "type": "boolean",
              "default": true
            },
            "showGridLine": {
              "type": "boolean",
              "default": false
            },
            "showColumnHeader": {
              "$ref": "#/definitions/PrintVisibilityType",
              "default": 0
            },
            "showRowHeader": {
              "$ref": "#/definitions/PrintVisibilityType",
              "default": 0
            },
            "useMax": {
              "type": "boolean",
              "default": true
            },
            "centering": {
              "$ref": "#/definitions/PrintCentering",
              "default": 0
            },
            "firstPageNumber": {
              "type": "number",
              "default": 1
            },
            "headerLeft": {
              "type": "string"
            },
            "headerCenter": {
              "type": "string"
            },
            "headerRight": {
              "type": "string"
            },
            "footerLeft": {
              "type": "string"
            },
            "footerCenter": {
              "type": "string"
            },
            "footerRight": {
              "type": "string"
            },
            "headerLeftImage": {
              "type": "string"
            },
            "headerCenterImage": {
              "type": "string"
            },
            "headerRightImage": {
              "type": "string"
            },
            "footerLeftImage": {
              "type": "string"
            },
            "footerCenterImage": {
              "type": "string"
            },
            "footerRightImage": {
              "type": "string"
            },
            "margin": {
              "$ref": "#/definitions/PrintMargins"
            },
            "orientation": {
              "$ref": "#/definitions/PrintPageOrientation",
              "default": 1
            },
            "pageRange": {
              "type": "string"
            },
            "pageOrder": {
              "$ref": "#/definitions/PrintPageOrder",
              "default": 0
            },
            "blackAndWhite": {
              "type": "boolean",
              "default": false
            },
            "zoomFactor": {
              "type": "number",
              "default": 1
            },
            "fitPagesTall": {
              "type": "number",
              "default": -1
            },
            "fitPagesWide": {
              "type": "number",
              "default": -1
            },
            "paperSize": {
              "$ref": "#/definitions/PaperSize"
            },
            "watermark": {
              "description": "Specifies the watermark for printInfo",
              "type": "array",
              "items": {
                "$ref": "#/definitions/PrintWaterMark"
              }
            }
          }
        },
        "PrintWaterMark": {
          "description": "Specifies the watermark item for printInfo",
          "type": "object",
          "properties": {
            "x": {
              "type": "number"
            },
            "y": {
              "type": "number"
            },
            "width": {
              "type": "number"
            },
            "height": {
              "type": "number"
            },
            "imageSrc": {
              "type": "string"
            },
            "page": {
              "type": "string"
            }
          }
        },
        "PrintVisibilityType": {
          "title": "PrintVisibilityType",
          "description": "Specifies whether the area is visible. inherit:0,hide:1,show:2,showOnce:3",
          "enum": [
            0,
            1,
            2,
            3
          ]
        },
        "PrintCentering": {
          "title": "PrintCentering",
          "description": "Specifics the type of centering for the printed page. none:0,horizontal:1,vertical:2,both:3",
          "enum": [
            0,
            1,
            2,
            3
          ]
        },
        "PrintPageOrientation": {
          "title": "PrintPageOrientation",
          "description": "Specifies the page orientation used for printing. portrait:1,landscape:2",
          "enum": [
            1,
            2
          ]
        },
        "PrintPageOrder": {
          "title": "PrintPageOrder",
          "description": "Specifies the order in which pages are printed. auto:0,downThenOver:1,overThenDown:2",
          "enum": [
            0,
            1,
            2
          ]
        },
        "PaperKind": {
          "title": "PaperKind",
          "description": "pecifies the paper kind for the printed page. 0 : custom, 1 : letter, 2 : letterSmall, 3 : tabloid, 4 : ledger, 5 : legal, 6 : statement, 7 : executive, 8 : a3, 9 : a4, 10 : a4Small, 11 : a5, 12 : b4, 13 : b5, 14 : folio, 15 : quarto, 16 : standard10x14, 17 : standard11x17, 18 : note, 19 : number9Envelope, 20 : number10Envelope, 21 : number11Envelope, 22 : number12Envelope, 23 : number14Envelope, 24 : cSheet, 25 : dSheet, 26 : eSheet, 27 : dLEnvelope, 28 : c5Envelope, 29 : c3Envelope, 30 : c4Envelope, 31 : c6Envelope, 32 : c65Envelope, 33 : b4Envelope, 34 : b5Envelope, 35 : b6Envelope, 36 : italyEnvelope, 37 : monarchEnvelope, 38 : personalEnvelope, 39 : uSStandardFanfold, 40 : germanStandardFanfold, 41 : germanLegalFanfold, 42 : isoB4, 43 : japanesePostcard, 44 : standard9x11, 45 : standard10x11, 46 : standard15x11, 47 : inviteEnvelope, 50 : letterExtra, 51 : legalExtra, 52 : tabloidExtra, 53 : a4Extra, 54 : letterTransverse, 55 : a4Transverse, 56 : letterExtraTransverse, 57 : aPlus, 58 : bPlus, 59 : letterPlus, 60 : a4Plus, 61 : a5Transverse, 62 : b5Transverse, 63 : a3Extra, 64 : a5Extra, 65 : b5Extra, 66 : a2, 67 : a3Transverse, 68 : a3ExtraTransverse, 69 : japaneseDoublePostcard, 70 : a6, 71 : japaneseEnvelopeKakuNumber2, 72 : japaneseEnvelopeKakuNumber3, 73 : japaneseEnvelopeChouNumber3, 74 : japaneseEnvelopeChouNumber4, 75 : letterRotated, 76 : a3Rotated, 77 : a4Rotated, 78 : a5Rotated, 79 : b4JisRotated, 80 : b5JisRotated, 81 : japanesePostcardRotated, 82 : japaneseDoublePostcardRotated, 83 : a6Rotated, 84 : japaneseEnvelopeKakuNumber2Rotated, 85 : japaneseEnvelopeKakuNumber3Rotated, 86 : japaneseEnvelopeChouNumber3Rotated, 87 : japaneseEnvelopeChouNumber4Rotated, 88 : b6Jis, 89 : b6JisRotated, 90 : standard12x11, 91 : japaneseEnvelopeYouNumber4, 92 : japaneseEnvelopeYouNumber4Rotated, 93 : prc16K, 94 : prc32K, 95 : prc32KBig, 96 : prcEnvelopeNumber1, 97 : prcEnvelopeNumber2, 98 : prcEnvelopeNumber3, 99 : prcEnvelopeNumber4, 100 : prcEnvelopeNumber5, 101 : prcEnvelopeNumber6,102 : prcEnvelopeNumber7,103 : prcEnvelopeNumber8,104 : prcEnvelopeNumber9,105 : prcEnvelopeNumber10,106: prc16KRotated,107: prc32KRotated,108: prc32KBigRotated,109: prcEnvelopeNumber1Rotated,110: prcEnvelopeNumber2Rotated,111: prcEnvelopeNumber3Rotated,112: prcEnvelopeNumber4Rotated,113: prcEnvelopeNumber5Rotated,114: prcEnvelopeNumber6Rotated,115: prcEnvelopeNumber7Rotated,116: prcEnvelopeNumber8Rotated,117: prcEnvelopeNumber9Rotated,118: prcEnvelopeNumber10Rotated",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,
            10,
            11,
            12,
            13,
            14,
            15,
            16,
            17,
            18,
            19,
            20,
            21,
            22,
            23,
            24,
            25,
            26,
            27,
            28,
            29,
            30,
            31,
            32,
            33,
            34,
            35,
            36,
            37,
            38,
            39,
            40,
            41,
            42,
            43,
            44,
            45,
            46,
            47,
            50,
            51,
            52,
            53,
            54,
            55,
            56,
            57,
            58,
            59,
            60,
            61,
            62,
            63,
            64,
            65,
            66,
            67,
            68,
            69,
            70,
            71,
            72,
            73,
            74,
            75,
            76,
            77,
            78,
            79,
            80,
            81,
            82,
            83,
            84,
            85,
            86,
            87,
            88,
            89,
            90,
            91,
            92,
            93,
            94,
            95,
            96,
            97,
            98,
            99,
            100,
            101,
            102,
            103,
            104,
            105,
            106,
            107,
            108,
            109,
            110,
            111,
            112,
            113,
            114,
            115,
            116,
            117,
            118
          ]
        },
        "PrintMargins": {
          "title": "PrintMargins",
          "description": "Specifies the dimensions of the printed page margins.",
          "type": "object",
          "properties": {
            "top": {
              "type": "number",
              "default": 75
            },
            "bottom": {
              "type": "number",
              "default": 75
            },
            "left": {
              "type": "number",
              "default": 70
            },
            "right": {
              "type": "number",
              "default": 70
            },
            "header": {
              "type": "number",
              "default": 30
            },
            "footer": {
              "type": "number",
              "default": 30
            }
          }
        },
        "PaperSize": {
          "title": "PaperSize",
          "description": "Specifies the paper size.",
          "properties": {
            "height": {
              "type": "number"
            },
            "width": {
              "type": "number"
            },
            "kind": {
              "anyOf": [
                {
                  "$ref": "#/definitions/PaperKind"
                },
                {
                  "type": "null"
                }
              ]
            }
          }
        },
        "Slicer": {
          "title": "Slicer",
          "description": "Represents a slicer.",
          "type": "object",
          "properties": {
            "x": {
              "type": "number",
              "default": 100
            },
            "y": {
              "type": "number",
              "default": 100
            },
            "width": {
              "type": "number",
              "default": 192
            },
            "height": {
              "type": "number",
              "default": 250
            },
            "dynamicMove": {
              "type": "boolean",
              "default": false
            },
            "dynamicSize": {
              "type": "boolean",
              "default": false
            },
            "isLocked": {
              "type": "boolean",
              "default": true
            },
            "fixedPosition": {
              "type": "boolean",
              "default": false
            },
            "sourceName": {
              "type": "string"
            },
            "tableName": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "captionName": {
              "type": "string"
            },
            "columnCount": {
              "type": "number",
              "default": 1
            },
            "itemHeight": {
              "type": "number",
              "default": 21
            },
            "showHeader": {
              "type": "boolean",
              "default": true
            },
            "sortState": {
              "$ref": "#/definitions/SortState",
              "default": 1
            },
            "disableResizingAndMoving": {
              "type": "boolean",
              "default": false
            },
            "showNoDataItems": {
              "type": "boolean",
              "default": true
            },
            "showNoDataItemsInLast": {
              "type": "boolean",
              "default": true
            },
            "visuallyNoDataItems": {
              "type": "boolean",
              "default": true
            },
            "style": {
              "$ref": "#/definitions/SlicerStyle"
            },
            "columnName": {
              "type": "string"
            },
            "nameInFormula": {
              "type": "string"
            }
          }
        },
        "SlicerStyle": {
          "title": "SlicerStyle",
          "description": "Represents the slicer style settings.",
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "default": ""
            },
            "wholeSlicerStyle": {
              "$ref": "#/definitions/SlicerStyleInfo"
            },
            "headerStyle": {
              "$ref": "#/definitions/SlicerStyleInfo"
            },
            "selectedItemWithDataStyle": {
              "$ref": "#/definitions/SlicerStyleInfo"
            },
            "selectedItemWithNoDataStyle": {
              "$ref": "#/definitions/SlicerStyleInfo"
            },
            "unSelectedItemWithDataStyle": {
              "$ref": "#/definitions/SlicerStyleInfo"
            },
            "unSelectedItemWithNoDataStyle": {
              "$ref": "#/definitions/SlicerStyleInfo"
            },
            "hoveredSelectedItemWithDataStyle": {
              "$ref": "#/definitions/SlicerStyleInfo"
            },
            "hoveredSelectedItemWithNoDataStyle": {
              "$ref": "#/definitions/SlicerStyleInfo"
            },
            "hoveredUnSelectedItemWithDataStyle": {
              "$ref": "#/definitions/SlicerStyleInfo"
            },
            "hoveredUnSelectedItemWithNoDataStyle": {
              "$ref": "#/definitions/SlicerStyleInfo"
            }
          }
        },
        "SlicerStyleInfo": {
          "title": "SlicerStyleInfo",
          "description": "Represents slicer style information.",
          "type": "object",
          "properties": {
            "backColor": {
              "type": "string",
              "default": "white"
            },
            "foreColor": {
              "type": "string",
              "default": "black"
            },
            "font": {
              "type": "string",
              "default": "normal 11pt calibri"
            },
            "borderLeft": {
              "$ref": "#/definitions/SlicerBorder"
            },
            "borderTop": {
              "$ref": "#/definitions/SlicerBorder"
            },
            "borderRight": {
              "$ref": "#/definitions/SlicerBorder"
            },
            "borderBottom": {
              "$ref": "#/definitions/SlicerBorder"
            },
            "textDecoration": {
              "$ref": "#/definitions/TextDecorationType",
              "default": 0
            }
          }
        },
        "SlicerBorder": {
          "title": "SlicerBorder",
          "description": "Represents the slicer border.",
          "type": "object",
          "properties": {
            "borderWidth": {
              "type": "number",
              "default": 0
            },
            "borderStyle": {
              "type": "number",
              "default": ""
            },
            "borderColor": {
              "type": "number",
              "default": ""
            }
          }
        },
        "SortState": {
          "title": "SortState",
          "description": "Specifies the type of sorting to perform. none:0,ascending:1,descending:2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "LabelAlignment": {
          "title": "LabelAlignment",
          "description": "Specifies the cell label position. topLeft:0,topCenter:1,topRight:2,bottomLeft:3,bottomCenter:4,bottomRight:5.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5
          ]
        },
        "LabelVisibility": {
          "title": "LabelVisibility",
          "description": "Specifies to always show the watermark in the padding area and not to show the watermark in the cell area, regardless of the cell value. visible:0,hidden:1,auto:2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "LabelOptions": {
          "title": "LabelOptions",
          "description": "Specifies the cell label options.",
          "type": [
            "object",
            "null"
          ],
          "properties": {
            "alignment": {
              "$ref": "#/definitions/LabelAlignment",
              "default": 0
            },
            "visibility": {
              "$ref": "#/definitions/LabelVisibility",
              "default": 2
            },
            "font": {
              "type": "string"
            },
            "foreColor": {
              "type": "string"
            },
            "margin": {
              "type": "string"
            }
          }
        },
        "CopyPasteHeaderOptions": {
          "title": "CopyPasteHeaderOptions",
          "description": "Specifies which headers are included when data is copied to or pasted. noHeaders:0,rowHeaders:1,columnHeaders:2,allHeaders:3",
          "enum": [
            0,
            1,
            2,
            3
          ]
        },
        "CustomListOptions": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "Chart": {
          "title": "Chart",
          "description": "Represents a chart.",
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            },
            "x": {
              "type": "number",
              "default": 0
            },
            "y": {
              "type": "number",
              "default": 0
            },
            "width": {
              "type": "number",
              "default": 0
            },
            "height": {
              "type": "number",
              "default": 0
            },
            "canPrint": {
              "type": "boolean",
              "default": true
            },
            "isSelected": {
              "type": "boolean",
              "default": false
            },
            "isLocked": {
              "type": "boolean",
              "default": true
            },
            "isVisible": {
              "type": "boolean",
              "default": true
            },
            "dynamicMove": {
              "type": "boolean",
              "default": true
            },
            "dynamicSize": {
              "type": "boolean",
              "default": true
            },
            "fixedPosition": {
              "type": "boolean"
            },
            "allowResize": {
              "type": "boolean",
              "default": true
            },
            "allowMove": {
              "type": "boolean",
              "default": true
            },
            "typeName": {
              "type": "string"
            },
            "zIndex": {
              "type": "integer"
            },
            "useAnimation": {
              "type": "boolean",
              "default": false
            },
            "displayBlanksAs": {
              "$ref": "#/definitions/DisplayBlanksAs",
              "default": "connected"
            },
            "hoverStyle": {
              "description": "Specifies the hover style when user interact with the chart",
              "type": "object",
              "properties": {
                "applyHoverStyle": {
                  "description": "Specifies whether apply hover style to the chart",
                  "type": "boolean",
                  "default": false
                },
                "color": {
                  "type": "string"
                },
                "transparency": {
                  "type": "number",
                  "default": 1
                },
                "borderStyle": {
                  "width": {
                    "type": "number",
                    "default": 1
                  },
                  "color": {
                    "type": "string"
                  },
                  "transparency": {
                    "type": "number",
                    "default": 1
                  },
                  "dashStyle": {
                    "type": "#/definitions/LineStyle/"
                  }
                }
              }
            },
            "chartSpace": {
              "description": "Specifies overall settings for a chart.",
              "type": "object",
              "properties": {
                "chart": {
                  "description": "Represents a chart.",
                  "type": "object",
                  "properties": {
                    "legend": {
                      "description": "Specifies the legend.",
                      "type": "object",
                      "properties": {
                        "legendPos": {
                          "$ref": "#/definitions/LegendPosition"
                        }
                      }
                    },
                    "plotArea": {
                      "description": "Specifies the plot area of the chart.",
                      "type": "object",
                      "properties": {
                        "axes": {
                          "description": "Represents the axis collection.",
                          "type": "array",
                          "items": {
                            "$ref": "#/definitions/Axis"
                          }
                        },
                        "chartGroups": {
                          "description": "Represents the collection of all series in a chart.",
                          "type": "array",
                          "items": {
                            "description": "Specifies the settings for each series type.",
                            "type": "object",
                            "properties": {
                              "chartType": {
                                "$ref": "#/definitions/CT_ChartType"
                              },
                              "ser": {
                                "description": "Specifies a series collection for each chart type.",
                                "type": "array",
                                "items": {
                                  "$ref": "#/definitions/Series"
                                }
                              },
                              "axId": {
                                "description": "Specifies the axis id for series, the id is same with axId of one item in axes.",
                                "type": "array",
                                "items": {
                                  "type": "number"
                                }
                              },
                              "firstSliceAng": {
                                "description": "Represents the first slice angle of pie chart.",
                                "type": "number"
                              }
                            }
                          }
                        },
                        "plotAreaRegion": {
                          "$ref": "#/definitions/CT_PlotAreaRegion"
                        }
                      }
                    },
                    "title": {
                      "description": "Specifies the chart title.",
                      "type": "object",
                      "properties": {
                        "tx": {
                          "$ref": "#/definitions/CT_Tx"
                        },
                        "spPr": {
                          "$ref": "#/definitions/ShapeProperties"
                        },
                        "txPr": {
                          "$ref": "#/definitions/CT_TextBody"
                        }
                      }
                    }
                  }
                },
                "spPr": {
                  "$ref": "#/definitions/ShapeProperties"
                },
                "txPr": {
                  "$ref": "#/definitions/CT_TextBody"
                }
              }
            }
          }
        },
        "CT_Tx": {
          "title": "CT_Tx",
          "description": " Specifies the text to use on a chart.",
          "type": "object",
          "properties": {
            "rich": {
              "$ref": "#/definitions/CT_TextBody"
            }
          }
        },
        "CT_TextBody": {
          "title": "CT_TextBody",
          "description": "Specifies text formatting.",
          "type": "object",
          "properties": {
            "txPr": {
              "description": "Indicates the text properties.",
              "type": "object",
              "properties": {
                "p": {
                  "$ref": "#/definitions/TextParagraph"
                }
              }
            }
          }
        },
        "DataLabels": {
          "title": "Data labels",
          "description": "Represents data labels.",
          "type": "object",
          "properties": {
            "dLblPos": {
              "$ref": "#/definitions/DataLabelPosition"
            },
            "showCatName": {
              "description": "Specifies whether show category(x axis) name in data label.",
              "type": "boolean"
            },
            "showSerName": {
              "description": "Specifies whether show series name in data label.",
              "type": "boolean"
            },
            "showVal": {
              "description": "Specifies whether show value(y axis) name in data label.",
              "type": "boolean"
            },
            "showPercent": {
              "description": "Specifies whether show precentage in data label.",
              "type": "boolean"
            },
            "numFmt": {
              "$ref": "#/definitions/NumberFormat"
            },
            "txPr": {
              "$ref": "#/definitions/CT_TextBody"
            }
          }
        },
        "Axis": {
          "title": "Axis",
          "description": "Represents a chart axis.",
          "type": "object",
          "properties": {
            "axId": {
              "description": "Represents the unique id of axis, the id is used in chart group.",
              "type": "number"
            },
            "majorGridlines": {
              "description": "Represents the major grid line.",
              "type": "object",
              "properties": {
                "spPr": {
                  "$ref": "#/definitions/ShapeProperties"
                }
              }
            },
            "majorTickMark": {
              "$ref": "#/definitions/TickMark"
            },
            "majorUnit": {
              "description": "Represents the major unit of axis.",
              "type": "number"
            },
            "minorGridlines": {
              "description": "Represents the minor grid line.",
              "type": "object",
              "properties": {
                "spPr": {
                  "$ref": "#/definitions/ShapeProperties"
                }
              }
            },
            "minorTickMark": {
              "$ref": "#/definitions/TickMark"
            },
            "minorUnit": {
              "description": "Represents the minor unit of axis.",
              "type": "number"
            },
            "numFmt": {
              "$ref": "#/definitions/NumberFormat"
            },
            "title": {
              "description": "Represents the axis title.",
              "type": "object",
              "properties": {
                "tx": {
                  "$ref": "#/definitions/CT_Tx"
                },
                "spPr": {
                  "$ref": "#/definitions/ShapeProperties"
                },
                "txPr": {
                  "$ref": "#/definitions/CT_TextBody"
                }
              }
            },
            "delete": {
              "description": "Represents whether the axis is invisible.",
              "type": "boolean"
            },
            "tickLblPos": {
              "$ref": "#/definitions/TickLabelPosition"
            },
            "scaling": {
              "type": "object",
              "properties": {
                "min": {
                  "description": "Specifies the minimum value of the axis.",
                  "type": "number"
                },
                "max": {
                  "description": "Specifies the maximum value of the axis.",
                  "type": "number"
                },
                "logBase": {
                  "description": "Specifies the logarithmic base value of the axis.",
                  "type": "number"
                }
              }
            },
            "dispUnits": {
              "type": "object",
              "properties": {
                "builtInUnit": {
                  "$ref": "#/definitions/DisplayUnitBuiltIn"
                },
                "custUnit": {
                  "description": "Specifies the custom number display unit of the axis.",
                  "type": "number"
                },
                "visible": {
                  "description": "Specifies the display unit label visible of the axis.",
                  "type": "boolean"
                },
                "dispUnitsLbl": {
                  "description": "Specifies the display unit label of the axis.",
                  "type": "object",
                  "properties": {
                    "tx": {
                      "$ref": "#/definitions/CT_Tx"
                    },
                    "spPr": {
                      "$ref": "#/definitions/ShapeProperties"
                    },
                    "txPr": {
                      "$ref": "#/definitions/CT_TextBody"
                    }
                  }
                }
              }
            },
            "spPr": {
              "$ref": "#/definitions/ShapeProperties"
            },
            "txPr": {
              "$ref": "#/definitions/CT_TextBody"
            }
          }
        },
        "CT_StrRef": {
          "title": "CT_StrRef",
          "description": "Represents a string reference for a single data label or title.",
          "type": "object",
          "properties": {
            "f": {
              "description": "Specifies the formula.",
              "type": "string"
            }
          }
        },
        "CT_NumRef": {
          "title": "CT_NumRef",
          "description": "Represents a number reference to numeric data.",
          "type": "object",
          "properties": {
            "f": {
              "description": "Specifies the formula.",
              "type": "string"
            }
          }
        },
        "TrendlineProperties": {
          "description": "Represents a trendline of a series.",
          "type": "object",
          "properties": {
            "type": {
              "$ref": "#/definitions/TrendlineType"
            },
            "order": {
              "type": "number"
            },
            "period": {
              "type": "number"
            },
            "dispEq": {
              "type": "boolean"
            },
            "dispRSqr": {
              "type": "boolean"
            },
            "forward": {
              "type": "number"
            },
            "backward": {
              "type": "number"
            },
            "name": {
              "type": "string"
            },
            "spPr": {
              "$ref": "#/definitions/ShapeProperties"
            },
            "trendlineLbl": {
              "type": "object",
              "properties": {
                "numFmt": {
                  "$ref": "#/definitions/NumberFormat"
                },
                "spPr": {
                  "$ref": "#/definitions/ShapeProperties"
                },
                "txPr": {
                  "$ref": "#/definitions/CT_TextBody"
                }
              }
            },
            "intercept": {
              "type": "number"
            }
          }
        },
        "Series": {
          "title": "Series",
          "description": "Represents a chart series.",
          "type": "object",
          "properties": {
            "cat": {
              "description": "Specifies the data used for the category(x) axis.",
              "type": "object",
              "properties": {
                "strRef": {
                  "$ref": "#/definitions/CT_StrRef"
                }
              }
            },
            "spPr": {
              "$ref": "#/definitions/ShapeProperties"
            },
            "trendline": {
              "description": "Specifies the trendlines of the series.",
              "type": "array",
              "items": {
                "$ref": "#/definitions/TrendlineProperties"
              }
            },
            "tx": {
              "description": "Specifies text for the series name.",
              "type": "object",
              "properties": {
                "strRef": {
                  "$ref": "#/definitions/CT_StrRef"
                }
              }
            },
            "val": {
              "description": "Specifies the data used for the value(y) axis.",
              "type": "object",
              "properties": {
                "numRef": {
                  "$ref": "#/definitions/CT_NumRef"
                }
              }
            },
            "xVal": {
              "description": "Specifies the x values used for the x axis.",
              "type": "object",
              "properties": {
                "numRef": {
                  "$ref": "#/definitions/CT_NumRef"
                }
              }
            },
            "yVal": {
              "description": "Specifies the y values used for the y axis.",
              "type": "object",
              "properties": {
                "numRef": {
                  "$ref": "#/definitions/CT_NumRef"
                }
              }
            },
            "bubbleSize": {
              "description": "Specifies the data for the sizes of the bubbles on the bubble chart.",
              "type": "object",
              "properties": {
                "numRef": {
                  "$ref": "#/definitions/CT_NumRef"
                }
              }
            },
            "dLbls": {
              "$ref": "#/definitions/DataLabels"
            },
            "layoutId": {
              "$ref": "#/definitions/ST_SeriesLayout"
            },
            "dataPt": {
              "description": "Specifies the data points of the series.",
              "type": "array",
              "items": {
                "$ref": "#/definitions/CT_DataPoint"
              }
            },
            "formulaObj": {
              "description": "Specifies the formula of the series.",
              "type": "object",
              "properties": {
                "strDim": {
                  "type": "string"
                },
                "numDim": {
                  "type": "string"
                }
              }
            },
            "dataLabels": {
              "$ref": "#/definitions/DataLabels"
            },
            "marker": {
              "$ref": "#/definitions/Marker"
            },
            "errbars": {
              "description": "Specifies the existed error bar on series.",
              "type": "array",
              "items": {
                "$ref": "#/definitions/ErrorBar"
              }
            }
          }
        },
        "ErrorBar": {
          "errDir": {
            "description": "Specifies the error bar direction, it might be x(0) / y(1).",
            "type": "number"
          },
          "errBarType": {
            "description": "Specifies the error bar type, it might be both(0) / minus(1) / plus(2).",
            "type": "number"
          },
          "errValType": {
            "description": "Specifies the error bar value type, it might be custom(0) / fixed(1) / percentage(2) / standardDeviation(3) / standardError(4).",
            "type": "number"
          },
          "noEndCap": "boolean",
          "val": {
            "description": "Specifies value used for the error bar when errValType is fixed(1) / percentage(2) / standardDeviation(3).",
            "type": "number"
          },
          "spPr": {
            "$ref": "#/definitions/ShapeProperties"
          },
          "minus": {
            "description": "Specifies the data used for the error bar negative values.",
            "type": "object",
            "properties": {
              "numRef": {
                "$ref": "#/definitions/CT_NumRef"
              }
            }
          },
          "plus": {
            "description": "Specifies the data used for the error bar positive values.",
            "type": "object",
            "properties": {
              "numRef": {
                "$ref": "#/definitions/CT_NumRef"
              }
            }
          }
        },
        "Marker": {
          "size": "number",
          "spPr": {
            "$ref": "#/definitions/ShapeProperties"
          },
          "symbol": {
            "$ref": "#/definitions/SymbolType"
          }
        },
        "SymbolType": {
          "title": "symbol type",
          "description": "Defines the symbol type. circle: 0, dash: 1, diamond: 2, dot: 3, none: 4, plus: 6, square: 7, star: 8, triangle: 9, x: 10",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            6,
            7,
            8
          ]
        },
        "CT_PlotAreaRegion": {
          "title": "PlotAreaRegion",
          "description": "Specifies a plot area region.",
          "type": "object",
          "properties": {
            "series": {
              "description": "Represents a chart series.",
              "type": "array",
              "items": {
                "$ref": "#/definitions/Series"
              }
            }
          }
        },
        "CT_DataPoint": {
          "title": "DataPoint",
          "description": "Specifies a data point.",
          "properties": {
            "idx": {
              "type": "number"
            },
            "spPr": {
              "$ref": "#/definitions/ShapeProperties"
            }
          }
        },
        "ST_SeriesLayout": {
          "title": "SeriesLayout",
          "description": "Specifies series layout types. sunburst: 20, treemap: 21.",
          "enum": [
            20,
            21
          ]
        },
        "DataLabelPosition": {
          "title": "DataLabelPosition",
          "description": "Defines the data label position. bestFit: 0,below: 1,center: 2,insideBase: 3,insideEnd: 4,left: 5,outsideEnd: 6,right: 7,above: 8.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8
          ]
        },
        "LegendPosition": {
          "title": "LegendPosition",
          "description": "Defines the legend position. top: 1,right: 2,left: 3,bottom: 4,corner: 5.",
          "enum": [
            1,
            2,
            3,
            4,
            5
          ]
        },
        "TickMark": {
          "title": "TickMark",
          "description": "Defines the tick mark position. cross: 0,inside: 1,none: 2,outside: 3.",
          "enum": [
            0,
            1,
            2,
            3
          ]
        },
        "CT_ChartType": {
          "title": "CT_ChartType",
          "description": "Defines the chart type in json. CT_StockChart: 0,CT_ScatterChart: 1,CT_RadarChart: 2,CT_BubbleChart: 3,CT_AreaChart: 4,CT_Area3DChart: 5,CT_BarChart: 6,CT_Bar3DChart: 7,CT_LineChart: 8,CT_Line3DChart: 9,CT_PieChart: 10,CT_Pie3DChart: 11,CT_DoughnutChart: 12,CT_OfPieChart: 13,CT_SurfaceChart: 14,CT_Surface3DChart: 15.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,
            10,
            11,
            12,
            13,
            14,
            15
          ]
        },
        "DisplayBlanksAs": {
          "title": "DisplayBlanksAs",
          "description": "Defines the way to display blank cells in the chart. connected: 0, gaps: 1, zeros: 2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "ColorScheme": {
          "title": "ColorScheme",
          "description": "Defines the scheme color. LT1: 0, DK1: 1, LT2: 2, DK2: 3, Accent1: 4, Accent2: 5, Accent3: 6, Accent4: 7, Accent5: 8, Accent6: 9, Hlink: 10, FolHlink: 11.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,
            10,
            11
          ]
        },
        "TickLabelPosition": {
          "title": "TickLabelPosition",
          "description": "Defines the tick label position. nextToAxis: 2, none: 3.",
          "enum": [
            2,
            3
          ]
        },
        "NumberFormat": {
          "title": "NumberFormat",
          "description": "Represents a number format.",
          "type": "object",
          "properties": {
            "formatCode": {
              "type": "string"
            }
          }
        },
        "EditorType": {
          "title": "EditorType",
          "description": "Defines the editor type of the text cell type. textarea: 0, editableDiv: 1.",
          "enum": [
            0,
            1
          ]
        },
        "Shape": {
          "title": "Shape",
          "description": "Represents a shape.",
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            },
            "canPrint": {
              "type": "boolean",
              "default": true
            },
            "isSelected": {
              "type": "boolean",
              "default": false
            },
            "isLocked": {
              "type": "boolean",
              "default": true
            },
            "dynamicMove": {
              "type": "boolean",
              "default": true
            },
            "dynamicSize": {
              "type": "boolean",
              "default": true
            },
            "allowResize": {
              "type": "boolean",
              "default": true
            },
            "allowMove": {
              "type": "boolean",
              "default": true
            },
            "hAlign": {
              "$ref": "#/definitions/TextHorizontalAlignment",
              "default": 0
            },
            "vAlign": {
              "$ref": "#/definitions/TextVerticalAlignment",
              "default": 0
            },
            "shapeType": {
              "$ref": "#/definitions/CT_ShapeType"
            },
            "shapeData": {
              "title": "shapeData",
              "description": "Represents a shape data.",
              "type": "object",
              "properties": {
                "startPoint": {
                  "title": "shapeData",
                  "description": "Specifies the first anchor point for the shape.",
                  "type": "object",
                  "properties": {
                    "row": {
                      "type": "number"
                    },
                    "col": {
                      "type": "number"
                    },
                    "rowOffset": {
                      "type": "number"
                    },
                    "colOffset": {
                      "type": "number"
                    }
                  }
                },
                "endPoint": {
                  "title": "shapeData",
                  "description": "Specifies the second anchor point for the shape.",
                  "type": "object",
                  "properties": {
                    "row": {
                      "type": "number"
                    },
                    "col": {
                      "type": "number"
                    },
                    "rowOffset": {
                      "type": "number"
                    },
                    "colOffset": {
                      "type": "number"
                    }
                  }
                },
                "cxnSp": {
                  "title": "ConnectionShape",
                  "description": "Specifies a connection shape that is used to connect two sp elements.",
                  "type": "object",
                  "properties": {
                    "nvCxnSpPr": {
                      "title": "NonVisualPropertiesForAConnectionShape",
                      "description": "Specifies all non-visual properties for a connection shape.",
                      "type": "object",
                      "properties": {
                        "cNvPr": {
                          "$ref": "#/definitions/NonVisualDrawingProperties"
                        },
                        "cNvCxnSpPr": {
                          "title": "NonVisualConnectorShapeDrawingProperties",
                          "description": "Specifies the non-visual drawing properties specific to a connector shape.",
                          "type": "object",
                          "properties": {
                            "stCxn": {
                              "title": "ConnectionStart",
                              "description": "Specifies the starting connection that should be made by the corresponding connector shape.",
                              "type": "object",
                              "properties": {
                                "idx": {
                                  "description": "Specifies the index into the connection site table of the final connection shape.",
                                  "type": "number"
                                },
                                "id": {
                                  "description": "Specifies the id of the shape to make the final connection to.",
                                  "type": "number"
                                }
                              }
                            },
                            "endCxn": {
                              "title": "ConnectionEnd",
                              "description": "Specifies the ending connection that should be made by the corresponding connector shape.",
                              "type": "object",
                              "properties": {
                                "idx": {
                                  "description": "Specifies the index into the connection site table of the final connection shape.",
                                  "type": "number"
                                },
                                "id": {
                                  "description": "Specifies the id of the shape to make the final connection to.",
                                  "type": "number"
                                }
                              }
                            }
                          }
                        }
                      }
                    },
                    "spPr": {
                      "$ref": "#/definitions/ShapeProperties"
                    }
                  }
                },
                "grpSp": {
                  "title": "GroupShape",
                  "description": "Specifies a group shape that represents many shapes grouped together.",
                  "type": "object",
                  "properties": {
                    "nvGrpSpPr": {
                      "title": "NonVisualPropertiesForAGroupShape",
                      "description": "Specifies all non-visual properties for a group shape.",
                      "type": "object",
                      "properties": {
                        "cNvPr": {
                          "$ref": "#/definitions/NonVisualDrawingProperties"
                        }
                      }
                    },
                    "grpSpPr": {
                      "title": "GroupShape",
                      "description": "Specifies a group shape that represents many shapes grouped together.",
                      "type": "object",
                      "properties": {
                        "xfrm": {
                          "$ref": "#/definitions/2DTransformForIndividualObjects"
                        },
                        "solidFill": {
                          "$ref": "#/definitions/SolidColorFillProperties"
                        },
                        "noFill": {
                          "type": "boolean"
                        }
                      }
                    },
                    "sp": {
                      "title": "Shape",
                      "description": "Specifies all shapes of a group shape.",
                      "type": "array",
                      "items": {
                        "$ref": "#/definitions/sp"
                      }
                    }
                  }
                },
                "sp": {
                  "$ref": "#/definitions/sp"
                },
                "width": {
                  "type": "number",
                  "default": 0
                },
                "height": {
                  "type": "number",
                  "default": 0
                },
                "ext": {
                  "title": "ShapeExtent",
                  "description": "Describes the length and width properties for how far a drawing element should extend for.",
                  "type": "object",
                  "properties": {
                    "cx": {
                      "description": "Specifies the length of the extents rectangle in EMUs.",
                      "type": "number"
                    },
                    "cy": {
                      "description": "Specifies the width of the extents rectangle in EMUs.",
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        },
        "sp": {
          "title": "Shape",
          "description": "Represents the existence of a single shape.",
          "type": "object",
          "properties": {
            "shapeType": {
              "$ref": "#/definitions/CT_ShapeType"
            },
            "nvSpPr": {
              "title": "NonVisualShapeProperties",
              "description": "Specifies all non-visual properties for a shape.",
              "type": "object",
              "properties": {
                "cNvPr": {
                  "$ref": "#/definitions/NonVisualDrawingProperties"
                }
              }
            },
            "spPr": {
              "$ref": "#/definitions/ShapeProperties"
            },
            "style": {
              "title": "ShapeStyle",
              "description": "Specifies the style that is applied to a shape and the corresponding references for each of the style components such as lines and fills.",
              "type": "object",
              "properties": {
                "fillRef": {
                  "title": "fillReference",
                  "description": "Represents a reference to a fill style within the style matrix.",
                  "type": "object",
                  "properties": {
                    "idx": {
                      "description": "Specifies the style matrix index of the style referred to.",
                      "type": "number"
                    },
                    "ColorProp": {
                      "$ref": "#/definitions/SolidColorFillProperties"
                    }
                  }
                },
                "lnRef": {
                  "title": "lineReference",
                  "description": "Represents a reference to a line style within the style matrix.",
                  "type": "object",
                  "properties": {
                    "idx": {
                      "description": "Specifies the style matrix index of the style referred to.",
                      "type": "number"
                    },
                    "ColorProp": {
                      "$ref": "#/definitions/SolidColorFillProperties"
                    }
                  }
                },
                "fontRef": {
                  "title": "fontReference",
                  "description": "Represents a reference to a themed font.",
                  "type": "object",
                  "properties": {
                    "idx": {
                      "description": "Specifies the style matrix index of the style referred to.",
                      "type": "number"
                    },
                    "TextCharacterProperties": {
                      "$ref": "#/definitions/TextCharacterProperties"
                    }
                  }
                }
              }
            },
            "txBody": {
              "title": "ShapeTextBody",
              "description": "Specifies the style that is applied to a shape and the corresponding references for each of the style components such as lines and fills.",
              "type": "object",
              "properties": {
                "p": {
                  "$ref": "#/definitions/TextParagraph"
                }
              }
            }
          }
        },
        "ShapeProperties": {
          "title": "ShapeProperties",
          "description": "Specifies the visual shape properties that can be applied to a special shape.",
          "type": "object",
          "properties": {
            "solidFill": {
              "$ref": "#/definitions/SolidColorFillProperties"
            },
            "noFill": {
              "type": "boolean"
            },
            "ln": {
              "description": "Represents the line or border of chart elements.",
              "type": "object",
              "properties": {
                "w": {
                  "description": "Indicates the line width or border width.",
                  "type": "number"
                },
                "solidFill": {
                  "$ref": "#/definitions/SolidColorFillProperties"
                },
                "noFill": {
                  "type": "boolean"
                },
                "cap": {
                  "$ref": "#/definitions/LineCapStyle"
                },
                "prstDash": {
                  "$ref": "#/definitions/LineDashStyle"
                },
                "miter": {
                  "title": "MiterLineJoin",
                  "description": "Specifies that a line join shall be mitered.",
                  "type": "object",
                  "properties": {
                    "lim": {
                      "description": "Specifies the amount by which lines is extended to form a miter join - otherwise miter joins can extend infinitely far (for lines which are almost parallel).",
                      "type": "number"
                    }
                  }
                },
                "headEnd": {
                  "title": "LineHead",
                  "description": "Specifies decorations which can be added to the head of a line.",
                  "$ref": "#/definitions/Arrowhead"
                },
                "tailEnd": {
                  "title": "TailLineEndStyle",
                  "description": "Specifies decorations which can be added to the tail of a line.",
                  "$ref": "#/definitions/Arrowhead"
                }
              }
            },
            "xfrm": {
              "$ref": "#/definitions/2DTransformForIndividualObjects"
            },
            "prstGeom": {
              "title": "PresetGeometry",
              "description": "Specifies when a preset geometric shape should be used instead of a custom geometric shape.",
              "type": "object",
              "properties": {
                "prst": {
                  "$ref": "#/definitions/ST_ShapeType"
                }
              }
            }
          }
        },
        "TextCharacterProperties": {
          "title": "TextCharacterProperties",
          "description": "Specifies all default run level text properties.",
          "type": "object",
          "properties": {
            "latin": {
              "description": "Sepcifies a Latin font for the text.",
              "type": "object",
              "properties": {
                "typeface": {
                  "description": "Specifies the typeface or name of the font.",
                  "type": "string"
                }
              }
            },
            "solidFill": {
              "$ref": "#/definitions/SolidColorFillProperties"
            },
            "noFill": {
              "type": "boolean"
            },
            "sz": {
              "description": "Specifies the size of text.",
              "type": "number"
            },
            "b": {
              "title": "bold",
              "type": "boolean"
            },
            "i": {
              "title": "italic",
              "type": "boolean"
            }
          }
        },
        "SolidColorFillProperties": {
          "title": "SolidColorFillProperties",
          "description": "Indicates the solid fill properties.",
          "type": "object",
          "properties": {
            "srgbClr": {
              "description": "Represents the fill color is a RGB color.",
              "type": "object",
              "properties": {
                "val": {
                  "description": "Specifies the value of RGB color.",
                  "type": "array",
                  "items": {
                    "type": "number"
                  }
                },
                "alpha": {
                  "description": "Specifies the opacity of RGB color.",
                  "type": "array",
                  "items": {
                    "type": "number"
                  }
                }
              }
            },
            "schemeClr": {
              "description": "Represents the fill color is a theme color.",
              "type": "object",
              "properties": {
                "lumMod": {
                  "description": "Specifies the input color with its luminance modulated by the given percentage.",
                  "type": "array",
                  "items": {
                    "type": "number"
                  }
                },
                "val": {
                  "$ref": "#/definitions/ColorScheme"
                }
              }
            }
          }
        },
        "Arrowhead": {
          "title": "Arrowhead",
          "type": "object",
          "properties": {
            "len": {
              "$ref": "#/definitions/ArrowheadLength"
            },
            "w": {
              "$ref": "#/definitions/ArrowheadWidth"
            },
            "type": {
              "$ref": "#/definitions/ArrowheadStyle"
            }
          }
        },
        "NonVisualDrawingProperties": {
          "title": "NonVisualDrawingProperties",
          "description": "Specifies the set of non-visual properties for the parent element.",
          "type": "object",
          "properties": {
            "id": {
              "type": "number"
            },
            "hidden": {
              "type": "boolean",
              "default": false
            },
            "name": {
              "type": "string"
            }
          }
        },
        "TextParagraph": {
          "description": "Specifies the presence of a paragraph of text within the containing text body.",
          "type": "array",
          "items": {
            "type": "object",
            "description": "Specifies the presence of a run of text within the containing text body.",
            "properties": {
              "elements": {
                "description": "Specifies the presence of a paragraph of text within the containing text body.",
                "type": "array",
                "items": {
                  "type": "object",
                  "description": "Specifies the text properties.",
                  "properties": {
                    "t": {
                      "title": "TextString",
                      "description": "Specifies the actual text for this text run.",
                      "type": "string"
                    },
                    "rPr": {
                      "$ref": "#/definitions/TextCharacterProperties"
                    }
                  }
                }
              },
              "pPr": {
                "title": "TextParagraphProperties",
                "type": "object",
                "description": "Defines contains all paragraph level text properties for the containing paragraph.",
                "properties": {
                  "defRPr": {
                    "$ref": "#/definitions/TextCharacterProperties"
                  }
                }
              }
            }
          }
        },
        "2DTransformForIndividualObjects": {
          "title": "2DTransformForIndividualObjects",
          "description": "Represents 2-D transforms for ordinary shapes",
          "type": "object",
          "properties": {
            "flipH": {
              "type": "boolean",
              "description": "Specifies a horizontal flip. When true, this attribute defines that the shape is flipped horizontally about the center of its bounding box."
            },
            "flipV": {
              "type": "boolean",
              "description": "Specifies a vertical flip. When true, this attribute defines that the group is flipped vertically about the center of its bounding box."
            },
            "rot": {
              "type": "number",
              "description": "Specifies the rotation of the Graphic Frame."
            },
            "off": {
              "type": "object",
              "description": "specifies the location of the bounding box of an object.",
              "properties": {
                "x": {
                  "type": "number"
                },
                "y": {
                  "type": "number"
                }
              }
            },
            "ext": {
              "type": "object",
              "description": "Specifies the size of the bounding box enclosing the referenced object.",
              "properties": {
                "cx": {
                  "type": "number"
                },
                "cy": {
                  "type": "number"
                }
              }
            },
            "chOff": {
              "type": "object",
              "description": "Specifies the location of the child extents rectangle and is used for calculations of grouping, scaling, and rotation behavior of shapes placed within a group.",
              "properties": {
                "x": {
                  "type": "number"
                },
                "y": {
                  "type": "number"
                }
              }
            },
            "chExt": {
              "type": "object",
              "description": "Specifies the size dimensions of the child extents rectangle and is used for calculations of grouping, scaling, and rotation behavior of shapes placed within a group.",
              "properties": {
                "x": {
                  "type": "number"
                },
                "y": {
                  "type": "number"
                }
              }
            }
          }
        },
        "TrendlineType": {
          "description": "Specifies the trendline type. Exponential: 0, Linear: 1, Logarithmic: 2, MovingAverage: 3, Polynomial: 4, Power: 5.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5
          ]
        },
        "DisplayUnitBuiltIn": {
          "description": "Sepecifies the built-in display unit. hundreds: 0, thousands: 1, tenThousands: 2, hundredThousands: 3, millions: 4, tenMillions: 5, hundredMillions: 6, billions: 7, trillions: 8, none: 9.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9
          ]
        },
        "ST_ShapeType": {
          "title": "ST_ShapeType",
          "description": "Specifies the preset geometry that is used for this shape.line: 0, lineInv: 1, triangle: 2, rtTriangle: 3, rect: 4, diamond: 5, parallelogram: 6, trapezoid: 7, nonIsoscelesTrapezoid: 8, pentagon: 9, hexagon: 10, heptagon: 11, octagon: 12, decagon: 13, dodecagon: 14, star4: 15, star5: 16, star6: 17, star7: 18, star8: 19, star10: 20, star12: 21, star16: 22, star24: 23, star32: 24, roundRect: 25, round1Rect: 26, round2SameRect: 27, round2DiagRect: 28, snipRoundRect: 29, snip1Rect: 30, snip2SameRect: 31, snip2DiagRect: 32, plaque: 33, ellipse: 34, teardrop: 35, homePlate: 36, chevron: 37, pieWedge: 38, pie: 39, blockArc: 40, donut: 41, noSmoking: 42, rightArrow: 43, leftArrow: 44, upArrow: 45, downArrow: 46, stripedRightArrow: 47, notchedRightArrow: 48, bentUpArrow: 49, leftRightArrow: 50, upDownArrow: 51, leftUpArrow: 52, leftRightUpArrow: 53, quadArrow: 54, leftArrowCallout: 55, rightArrowCallout: 56, upArrowCallout: 57, downArrowCallout: 58, leftRightArrowCallout: 59, upDownArrowCallout: 60, quadArrowCallout: 61, bentArrow: 62, uturnArrow: 63, circularArrow: 64, leftCircularArrow: 65, leftRightCircularArrow: 66, curvedRightArrow: 67, curvedLeftArrow: 68, curvedUpArrow: 69, curvedDownArrow: 70, swooshArrow: 71, cube: 72, can: 73, lightningBolt: 74, heart: 75, sun: 76, moon: 77, smileyFace: 78, irregularSeal1: 79, irregularSeal2: 80, foldedCorner: 81, bevel: 82, frame: 83, halfFrame: 84, corner: 85, diagStripe: 86, chord: 87, arc: 88, leftBracket: 89, rightBracket: 90, leftBrace: 91, rightBrace: 92, bracketPair: 93, bracePair: 94, straightConnector1: 95, bentConnector2: 96, bentConnector3: 97, bentConnector4: 98, bentConnector5: 99, curvedConnector2: 100, curvedConnector3: 101, curvedConnector4: 102, curvedConnector5: 103, callout1: 104, callout2: 105, callout3: 106, accentCallout1: 107, accentCallout2: 108, accentCallout3: 109, borderCallout1: 110, borderCallout2: 111, borderCallout3: 112, accentBorderCallout1: 113, accentBorderCallout2: 114, accentBorderCallout3: 115, wedgeRectCallout: 116, wedgeRoundRectCallout: 117, wedgeEllipseCallout: 118, cloudCallout: 119, cloud: 120, ribbon: 121, ribbon2: 122, ellipseRibbon: 123, ellipseRibbon2: 124, leftRightRibbon: 125, verticalScroll: 126, horizontalScroll: 127, wave: 128, doubleWave: 129, plus: 130, flowChartProcess: 131, flowChartDecision: 132, flowChartInputOutput: 133, flowChartPredefinedProcess: 134, flowChartInternalStorage: 135, flowChartDocument: 136, flowChartMultidocument: 137, flowChartTerminator: 138, flowChartPreparation: 139, flowChartManualInput: 140, flowChartManualOperation: 141, flowChartConnector: 142, flowChartPunchedCard: 143, flowChartPunchedTape: 144, flowChartSummingJunction: 145, flowChartOr: 146, flowChartCollate: 147, flowChartSort: 148, flowChartExtract: 149, flowChartMerge: 150, flowChartOfflineStorage: 151, flowChartOnlineStorage: 152, flowChartMagneticTape: 153, flowChartMagneticDisk: 154, flowChartMagneticDrum: 155, flowChartDisplay: 156, flowChartDelay: 157, flowChartAlternateProcess: 158, flowChartOffpageConnector: 159, actionButtonBlank: 160, actionButtonHome: 161, actionButtonHelp: 162, actionButtonInformation: 163, actionButtonForwardNext: 164, actionButtonBackPrevious: 165, actionButtonEnd: 166, actionButtonBeginning: 167, actionButtonReturn: 168, actionButtonDocument: 169, actionButtonSound: 170, actionButtonMovie: 171, gear6: 172, gear9: 173, funnel: 174, mathPlus: 175, mathMinus: 176, mathMultiply: 177, mathDivide: 178, mathEqual: 179, mathNotEqual: 180, cornerTabs: 181, squareTabs: 182, plaqueTabs: 183, chartX: 184, chartStar: 185, chartPlus: 186",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,
            10,
            11,
            12,
            13,
            14,
            15,
            16,
            17,
            18,
            19,
            20,
            21,
            22,
            23,
            24,
            25,
            26,
            27,
            28,
            29,
            30,
            31,
            32,
            33,
            34,
            35,
            36,
            37,
            38,
            39,
            40,
            41,
            42,
            43,
            44,
            45,
            46,
            47,
            48,
            49,
            50,
            51,
            52,
            53,
            54,
            55,
            56,
            57,
            58,
            59,
            60,
            61,
            62,
            63,
            64,
            65,
            66,
            67,
            68,
            69,
            70,
            71,
            72,
            73,
            74,
            75,
            76,
            77,
            78,
            79,
            80,
            81,
            82,
            83,
            84,
            85,
            86,
            87,
            88,
            89,
            90,
            91,
            92,
            93,
            94,
            95,
            96,
            97,
            98,
            99,
            100,
            101,
            102,
            103,
            104,
            105,
            106,
            107,
            108,
            109,
            110,
            111,
            112,
            113,
            114,
            115,
            116,
            117,
            118,
            119,
            120,
            121,
            122,
            123,
            124,
            125,
            126,
            127,
            128,
            129,
            130,
            131,
            132,
            133,
            134,
            135,
            136,
            137,
            138,
            139,
            140,
            141,
            142,
            143,
            144,
            145,
            146,
            147,
            148,
            149,
            150,
            151,
            152,
            153,
            154,
            155,
            156,
            157,
            158,
            159,
            160,
            161,
            162,
            163,
            164,
            165,
            166,
            167,
            168,
            169,
            170,
            171,
            172,
            173,
            174,
            175,
            176,
            177,
            178,
            179,
            180,
            181,
            182,
            183,
            184,
            185,
            186
          ]
        },
        "CT_ShapeType": {
          "title": "ShapeType",
          "description": "Specifies the shape type. CT_AlternateContent: 0, CT_Picture: 1, CT_GraphicalObjectFrame: 2, CT_GroupShape: 3, CT_Connector: 4, CT_Shape: 5.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5
          ]
        },
        "LineCapStyle": {
          "title": "LineEndingCapType",
          "description": "Specifies the ending caps that should be used for this line. round: 0, square: 1, flat: 2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "LineDashStyle": {
          "title": "PresetDash",
          "description": "Specifies which preset dashing scheme is to be used. solid: 0, squareDot: 1, dash: 2, longDash: 3, dashDot: 4, longDashDot: 5, longDashDotDot: 6,sysDash: 7, sysDot: 8, sysDashDot: 9, dashDotDot: 10, roundDot: 11",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,
            10,
            11
          ]
        },
        "TextHorizontalAlignment": {
          "description": "Specifies the text horizontal alignment. left: 0, center: 1, right: 2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "TextVerticalAlignment": {
          "description": "Specifies the text vertical alignment. top: 0, middle: 1, bottom: 2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "ArrowheadStyle": {
          "description": "Specifies the line end decoration. none: 0, triangle: 1, stealth: 2, diamond: 3, oval: 4, open: 5.",
          "enum": [
            0,
            1,
            2,
            3,
            4,
            5
          ]
        },
        "ArrowheadLength": {
          "description": "Specifies the line end length in relation to the line width. short: 0, medium: 1, long: 2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "ArrowheadWidth": {
          "description": "Specifies the line end width in relation to the line width. narrow: 0, medium: 1, wide: 2.",
          "enum": [
            0,
            1,
            2
          ]
        },
        "RichText": {
          "title": "RichText",
          "type": "object",
          "description": "Specifies a richText",
          "properties": {
            "text": {
              "type": "string"
            },
            "richText": {
              "type": "array",
              "items": {
                "type": "object",
                "description": "Specifies a rich text.",
                "properties": {
                  "text": {
                    "type": "string"
                  },
                  "style": {
                    "type": "object",
                    "properties": {
                      "font": {
                        "type": "string"
                      },
                      "textDecoration": {
                        "anyOf": [
                          {
                            "$ref": "#/definitions/TextDecorationType"
                          },
                          {
                            "type": "null"
                          }
                        ],
                        "default": 0
                      },
                      "foreColor": {
                        "type": "string"
                      },
                      "vertAlign": {
                        "$ref": "#/definitions/VertAlign"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "VertAlign": {
          "title": "VertAlign",
          "description": "Specifies a subscript text or a superscript text. Normal: 0, superscript: 1, subscript: 2.",
          "enum": [
            0,
            1,
            2
          ]
        }
      }
    }