interface SheetDefinitionProperty
| Language | Type name | 
|---|---|
|  .NET | Amazon.CDK.AWS.QuickSight.CfnDashboard.SheetDefinitionProperty | 
|  Java | software.amazon.awscdk.services.quicksight.CfnDashboard.SheetDefinitionProperty | 
|  Python | aws_cdk.aws_quicksight.CfnDashboard.SheetDefinitionProperty | 
|  TypeScript | @aws-cdk/aws-quicksight»CfnDashboard»SheetDefinitionProperty | 
A sheet is an object that contains a set of visuals that are viewed together on one page in a paginated report.
Every analysis and dashboard must contain at least one sheet.
Example
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import * as quicksight from '@aws-cdk/aws-quicksight';
declare const dataDriven: any;
const sheetDefinitionProperty: quicksight.CfnDashboard.SheetDefinitionProperty = {
  sheetId: 'sheetId',
  // the properties below are optional
  contentType: 'contentType',
  description: 'description',
  filterControls: [{
    dateTimePicker: {
      filterControlId: 'filterControlId',
      sourceFilterId: 'sourceFilterId',
      title: 'title',
      // the properties below are optional
      displayOptions: {
        dateTimeFormat: 'dateTimeFormat',
        titleOptions: {
          customLabel: 'customLabel',
          fontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          visibility: 'visibility',
        },
      },
      type: 'type',
    },
    dropdown: {
      filterControlId: 'filterControlId',
      sourceFilterId: 'sourceFilterId',
      title: 'title',
      // the properties below are optional
      cascadingControlConfiguration: {
        sourceControls: [{
          columnToMatch: {
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          },
          sourceSheetControlId: 'sourceSheetControlId',
        }],
      },
      displayOptions: {
        selectAllOptions: {
          visibility: 'visibility',
        },
        titleOptions: {
          customLabel: 'customLabel',
          fontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          visibility: 'visibility',
        },
      },
      selectableValues: {
        values: ['values'],
      },
      type: 'type',
    },
    list: {
      filterControlId: 'filterControlId',
      sourceFilterId: 'sourceFilterId',
      title: 'title',
      // the properties below are optional
      cascadingControlConfiguration: {
        sourceControls: [{
          columnToMatch: {
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          },
          sourceSheetControlId: 'sourceSheetControlId',
        }],
      },
      displayOptions: {
        searchOptions: {
          visibility: 'visibility',
        },
        selectAllOptions: {
          visibility: 'visibility',
        },
        titleOptions: {
          customLabel: 'customLabel',
          fontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          visibility: 'visibility',
        },
      },
      selectableValues: {
        values: ['values'],
      },
      type: 'type',
    },
    relativeDateTime: {
      filterControlId: 'filterControlId',
      sourceFilterId: 'sourceFilterId',
      title: 'title',
      // the properties below are optional
      displayOptions: {
        dateTimeFormat: 'dateTimeFormat',
        titleOptions: {
          customLabel: 'customLabel',
          fontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          visibility: 'visibility',
        },
      },
    },
    slider: {
      filterControlId: 'filterControlId',
      maximumValue: 123,
      minimumValue: 123,
      sourceFilterId: 'sourceFilterId',
      stepSize: 123,
      title: 'title',
      // the properties below are optional
      displayOptions: {
        titleOptions: {
          customLabel: 'customLabel',
          fontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          visibility: 'visibility',
        },
      },
      type: 'type',
    },
    textArea: {
      filterControlId: 'filterControlId',
      sourceFilterId: 'sourceFilterId',
      title: 'title',
      // the properties below are optional
      delimiter: 'delimiter',
      displayOptions: {
        placeholderOptions: {
          visibility: 'visibility',
        },
        titleOptions: {
          customLabel: 'customLabel',
          fontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          visibility: 'visibility',
        },
      },
    },
    textField: {
      filterControlId: 'filterControlId',
      sourceFilterId: 'sourceFilterId',
      title: 'title',
      // the properties below are optional
      displayOptions: {
        placeholderOptions: {
          visibility: 'visibility',
        },
        titleOptions: {
          customLabel: 'customLabel',
          fontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          visibility: 'visibility',
        },
      },
    },
  }],
  layouts: [{
    configuration: {
      freeFormLayout: {
        elements: [{
          elementId: 'elementId',
          elementType: 'elementType',
          height: 'height',
          width: 'width',
          xAxisLocation: 'xAxisLocation',
          yAxisLocation: 'yAxisLocation',
          // the properties below are optional
          backgroundStyle: {
            color: 'color',
            visibility: 'visibility',
          },
          borderStyle: {
            color: 'color',
            visibility: 'visibility',
          },
          loadingAnimation: {
            visibility: 'visibility',
          },
          renderingRules: [{
            configurationOverrides: {
              visibility: 'visibility',
            },
            expression: 'expression',
          }],
          selectedBorderStyle: {
            color: 'color',
            visibility: 'visibility',
          },
          visibility: 'visibility',
        }],
        // the properties below are optional
        canvasSizeOptions: {
          screenCanvasSizeOptions: {
            optimizedViewPortWidth: 'optimizedViewPortWidth',
          },
        },
      },
      gridLayout: {
        elements: [{
          columnSpan: 123,
          elementId: 'elementId',
          elementType: 'elementType',
          rowSpan: 123,
          // the properties below are optional
          columnIndex: 123,
          rowIndex: 123,
        }],
        // the properties below are optional
        canvasSizeOptions: {
          screenCanvasSizeOptions: {
            resizeOption: 'resizeOption',
            // the properties below are optional
            optimizedViewPortWidth: 'optimizedViewPortWidth',
          },
        },
      },
      sectionBasedLayout: {
        bodySections: [{
          content: {
            layout: {
              freeFormLayout: {
                elements: [{
                  elementId: 'elementId',
                  elementType: 'elementType',
                  height: 'height',
                  width: 'width',
                  xAxisLocation: 'xAxisLocation',
                  yAxisLocation: 'yAxisLocation',
                  // the properties below are optional
                  backgroundStyle: {
                    color: 'color',
                    visibility: 'visibility',
                  },
                  borderStyle: {
                    color: 'color',
                    visibility: 'visibility',
                  },
                  loadingAnimation: {
                    visibility: 'visibility',
                  },
                  renderingRules: [{
                    configurationOverrides: {
                      visibility: 'visibility',
                    },
                    expression: 'expression',
                  }],
                  selectedBorderStyle: {
                    color: 'color',
                    visibility: 'visibility',
                  },
                  visibility: 'visibility',
                }],
              },
            },
          },
          sectionId: 'sectionId',
          // the properties below are optional
          pageBreakConfiguration: {
            after: {
              status: 'status',
            },
          },
          style: {
            height: 'height',
            padding: {
              bottom: 'bottom',
              left: 'left',
              right: 'right',
              top: 'top',
            },
          },
        }],
        canvasSizeOptions: {
          paperCanvasSizeOptions: {
            paperMargin: {
              bottom: 'bottom',
              left: 'left',
              right: 'right',
              top: 'top',
            },
            paperOrientation: 'paperOrientation',
            paperSize: 'paperSize',
          },
        },
        footerSections: [{
          layout: {
            freeFormLayout: {
              elements: [{
                elementId: 'elementId',
                elementType: 'elementType',
                height: 'height',
                width: 'width',
                xAxisLocation: 'xAxisLocation',
                yAxisLocation: 'yAxisLocation',
                // the properties below are optional
                backgroundStyle: {
                  color: 'color',
                  visibility: 'visibility',
                },
                borderStyle: {
                  color: 'color',
                  visibility: 'visibility',
                },
                loadingAnimation: {
                  visibility: 'visibility',
                },
                renderingRules: [{
                  configurationOverrides: {
                    visibility: 'visibility',
                  },
                  expression: 'expression',
                }],
                selectedBorderStyle: {
                  color: 'color',
                  visibility: 'visibility',
                },
                visibility: 'visibility',
              }],
            },
          },
          sectionId: 'sectionId',
          // the properties below are optional
          style: {
            height: 'height',
            padding: {
              bottom: 'bottom',
              left: 'left',
              right: 'right',
              top: 'top',
            },
          },
        }],
        headerSections: [{
          layout: {
            freeFormLayout: {
              elements: [{
                elementId: 'elementId',
                elementType: 'elementType',
                height: 'height',
                width: 'width',
                xAxisLocation: 'xAxisLocation',
                yAxisLocation: 'yAxisLocation',
                // the properties below are optional
                backgroundStyle: {
                  color: 'color',
                  visibility: 'visibility',
                },
                borderStyle: {
                  color: 'color',
                  visibility: 'visibility',
                },
                loadingAnimation: {
                  visibility: 'visibility',
                },
                renderingRules: [{
                  configurationOverrides: {
                    visibility: 'visibility',
                  },
                  expression: 'expression',
                }],
                selectedBorderStyle: {
                  color: 'color',
                  visibility: 'visibility',
                },
                visibility: 'visibility',
              }],
            },
          },
          sectionId: 'sectionId',
          // the properties below are optional
          style: {
            height: 'height',
            padding: {
              bottom: 'bottom',
              left: 'left',
              right: 'right',
              top: 'top',
            },
          },
        }],
      },
    },
  }],
  name: 'name',
  parameterControls: [{
    dateTimePicker: {
      parameterControlId: 'parameterControlId',
      sourceParameterName: 'sourceParameterName',
      title: 'title',
      // the properties below are optional
      displayOptions: {
        dateTimeFormat: 'dateTimeFormat',
        titleOptions: {
          customLabel: 'customLabel',
          fontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          visibility: 'visibility',
        },
      },
    },
    dropdown: {
      parameterControlId: 'parameterControlId',
      sourceParameterName: 'sourceParameterName',
      title: 'title',
      // the properties below are optional
      cascadingControlConfiguration: {
        sourceControls: [{
          columnToMatch: {
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          },
          sourceSheetControlId: 'sourceSheetControlId',
        }],
      },
      displayOptions: {
        selectAllOptions: {
          visibility: 'visibility',
        },
        titleOptions: {
          customLabel: 'customLabel',
          fontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          visibility: 'visibility',
        },
      },
      selectableValues: {
        linkToDataSetColumn: {
          columnName: 'columnName',
          dataSetIdentifier: 'dataSetIdentifier',
        },
        values: ['values'],
      },
      type: 'type',
    },
    list: {
      parameterControlId: 'parameterControlId',
      sourceParameterName: 'sourceParameterName',
      title: 'title',
      // the properties below are optional
      cascadingControlConfiguration: {
        sourceControls: [{
          columnToMatch: {
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          },
          sourceSheetControlId: 'sourceSheetControlId',
        }],
      },
      displayOptions: {
        searchOptions: {
          visibility: 'visibility',
        },
        selectAllOptions: {
          visibility: 'visibility',
        },
        titleOptions: {
          customLabel: 'customLabel',
          fontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          visibility: 'visibility',
        },
      },
      selectableValues: {
        linkToDataSetColumn: {
          columnName: 'columnName',
          dataSetIdentifier: 'dataSetIdentifier',
        },
        values: ['values'],
      },
      type: 'type',
    },
    slider: {
      maximumValue: 123,
      minimumValue: 123,
      parameterControlId: 'parameterControlId',
      sourceParameterName: 'sourceParameterName',
      stepSize: 123,
      title: 'title',
      // the properties below are optional
      displayOptions: {
        titleOptions: {
          customLabel: 'customLabel',
          fontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          visibility: 'visibility',
        },
      },
    },
    textArea: {
      parameterControlId: 'parameterControlId',
      sourceParameterName: 'sourceParameterName',
      title: 'title',
      // the properties below are optional
      delimiter: 'delimiter',
      displayOptions: {
        placeholderOptions: {
          visibility: 'visibility',
        },
        titleOptions: {
          customLabel: 'customLabel',
          fontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          visibility: 'visibility',
        },
      },
    },
    textField: {
      parameterControlId: 'parameterControlId',
      sourceParameterName: 'sourceParameterName',
      title: 'title',
      // the properties below are optional
      displayOptions: {
        placeholderOptions: {
          visibility: 'visibility',
        },
        titleOptions: {
          customLabel: 'customLabel',
          fontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          visibility: 'visibility',
        },
      },
    },
  }],
  sheetControlLayouts: [{
    configuration: {
      gridLayout: {
        elements: [{
          columnSpan: 123,
          elementId: 'elementId',
          elementType: 'elementType',
          rowSpan: 123,
          // the properties below are optional
          columnIndex: 123,
          rowIndex: 123,
        }],
        // the properties below are optional
        canvasSizeOptions: {
          screenCanvasSizeOptions: {
            resizeOption: 'resizeOption',
            // the properties below are optional
            optimizedViewPortWidth: 'optimizedViewPortWidth',
          },
        },
      },
    },
  }],
  textBoxes: [{
    sheetTextBoxId: 'sheetTextBoxId',
    // the properties below are optional
    content: 'content',
  }],
  title: 'title',
  visuals: [{
    barChartVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        barsArrangement: 'barsArrangement',
        categoryAxis: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
        categoryLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        colorLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        contributionAnalysisDefaults: [{
          contributorDimensions: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          measureFieldId: 'measureFieldId',
        }],
        dataLabels: {
          categoryLabelVisibility: 'categoryLabelVisibility',
          dataLabelTypes: [{
            dataPathLabelType: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
              visibility: 'visibility',
            },
            fieldLabelType: {
              fieldId: 'fieldId',
              visibility: 'visibility',
            },
            maximumLabelType: {
              visibility: 'visibility',
            },
            minimumLabelType: {
              visibility: 'visibility',
            },
            rangeEndsLabelType: {
              visibility: 'visibility',
            },
          }],
          labelColor: 'labelColor',
          labelContent: 'labelContent',
          labelFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          measureLabelVisibility: 'measureLabelVisibility',
          overlap: 'overlap',
          position: 'position',
          visibility: 'visibility',
        },
        fieldWells: {
          barChartAggregatedFieldWells: {
            category: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            colors: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            smallMultiples: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            values: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        legend: {
          height: 'height',
          position: 'position',
          title: {
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            visibility: 'visibility',
          },
          visibility: 'visibility',
          width: 'width',
        },
        orientation: 'orientation',
        referenceLines: [{
          dataConfiguration: {
            axisBinding: 'axisBinding',
            dynamicConfiguration: {
              calculation: {
                percentileAggregation: {
                  percentileValue: 123,
                },
                simpleNumericalAggregation: 'simpleNumericalAggregation',
              },
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              measureAggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            staticConfiguration: {
              value: 123,
            },
          },
          // the properties below are optional
          labelConfiguration: {
            customLabelConfiguration: {
              customLabel: 'customLabel',
            },
            fontColor: 'fontColor',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            horizontalPosition: 'horizontalPosition',
            valueLabelConfiguration: {
              formatConfiguration: {
                currencyDisplayFormatConfiguration: {
                  decimalPlacesConfiguration: {
                    decimalPlaces: 123,
                  },
                  negativeValueConfiguration: {
                    displayMode: 'displayMode',
                  },
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numberScale: 'numberScale',
                  prefix: 'prefix',
                  separatorConfiguration: {
                    decimalSeparator: 'decimalSeparator',
                    thousandsSeparator: {
                      symbol: 'symbol',
                      visibility: 'visibility',
                    },
                  },
                  suffix: 'suffix',
                  symbol: 'symbol',
                },
                numberDisplayFormatConfiguration: {
                  decimalPlacesConfiguration: {
                    decimalPlaces: 123,
                  },
                  negativeValueConfiguration: {
                    displayMode: 'displayMode',
                  },
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numberScale: 'numberScale',
                  prefix: 'prefix',
                  separatorConfiguration: {
                    decimalSeparator: 'decimalSeparator',
                    thousandsSeparator: {
                      symbol: 'symbol',
                      visibility: 'visibility',
                    },
                  },
                  suffix: 'suffix',
                },
                percentageDisplayFormatConfiguration: {
                  decimalPlacesConfiguration: {
                    decimalPlaces: 123,
                  },
                  negativeValueConfiguration: {
                    displayMode: 'displayMode',
                  },
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  prefix: 'prefix',
                  separatorConfiguration: {
                    decimalSeparator: 'decimalSeparator',
                    thousandsSeparator: {
                      symbol: 'symbol',
                      visibility: 'visibility',
                    },
                  },
                  suffix: 'suffix',
                },
              },
              relativePosition: 'relativePosition',
            },
            verticalPosition: 'verticalPosition',
          },
          status: 'status',
          styleConfiguration: {
            color: 'color',
            pattern: 'pattern',
          },
        }],
        smallMultiplesOptions: {
          maxVisibleColumns: 123,
          maxVisibleRows: 123,
          panelConfiguration: {
            backgroundColor: 'backgroundColor',
            backgroundVisibility: 'backgroundVisibility',
            borderColor: 'borderColor',
            borderStyle: 'borderStyle',
            borderThickness: 'borderThickness',
            borderVisibility: 'borderVisibility',
            gutterSpacing: 'gutterSpacing',
            gutterVisibility: 'gutterVisibility',
            title: {
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              horizontalTextAlignment: 'horizontalTextAlignment',
              visibility: 'visibility',
            },
          },
        },
        sortConfiguration: {
          categoryItemsLimit: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          categorySort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
          colorItemsLimit: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          colorSort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
          smallMultiplesLimitConfiguration: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          smallMultiplesSort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
        },
        tooltip: {
          fieldBasedTooltip: {
            aggregationVisibility: 'aggregationVisibility',
            tooltipFields: [{
              columnTooltipItem: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                // the properties below are optional
                aggregation: {
                  categoricalAggregationFunction: 'categoricalAggregationFunction',
                  dateAggregationFunction: 'dateAggregationFunction',
                  numericalAggregationFunction: {
                    percentileAggregation: {
                      percentileValue: 123,
                    },
                    simpleNumericalAggregation: 'simpleNumericalAggregation',
                  },
                },
                label: 'label',
                visibility: 'visibility',
              },
              fieldTooltipItem: {
                fieldId: 'fieldId',
                // the properties below are optional
                label: 'label',
                visibility: 'visibility',
              },
            }],
            tooltipTitleType: 'tooltipTitleType',
          },
          selectedTooltipType: 'selectedTooltipType',
          tooltipVisibility: 'tooltipVisibility',
        },
        valueAxis: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
        valueLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        visualPalette: {
          chartColor: 'chartColor',
          colorMap: [{
            color: 'color',
            element: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
            },
            // the properties below are optional
            timeGranularity: 'timeGranularity',
          }],
        },
      },
      columnHierarchies: [{
        dateTimeHierarchy: {
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        explicitHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        predefinedHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
      }],
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    boxPlotVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        boxPlotOptions: {
          allDataPointsVisibility: 'allDataPointsVisibility',
          outlierVisibility: 'outlierVisibility',
          styleOptions: {
            fillStyle: 'fillStyle',
          },
        },
        categoryAxis: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
        categoryLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        fieldWells: {
          boxPlotAggregatedFieldWells: {
            groupBy: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            values: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        legend: {
          height: 'height',
          position: 'position',
          title: {
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            visibility: 'visibility',
          },
          visibility: 'visibility',
          width: 'width',
        },
        primaryYAxisDisplayOptions: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
        primaryYAxisLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        referenceLines: [{
          dataConfiguration: {
            axisBinding: 'axisBinding',
            dynamicConfiguration: {
              calculation: {
                percentileAggregation: {
                  percentileValue: 123,
                },
                simpleNumericalAggregation: 'simpleNumericalAggregation',
              },
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              measureAggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            staticConfiguration: {
              value: 123,
            },
          },
          // the properties below are optional
          labelConfiguration: {
            customLabelConfiguration: {
              customLabel: 'customLabel',
            },
            fontColor: 'fontColor',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            horizontalPosition: 'horizontalPosition',
            valueLabelConfiguration: {
              formatConfiguration: {
                currencyDisplayFormatConfiguration: {
                  decimalPlacesConfiguration: {
                    decimalPlaces: 123,
                  },
                  negativeValueConfiguration: {
                    displayMode: 'displayMode',
                  },
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numberScale: 'numberScale',
                  prefix: 'prefix',
                  separatorConfiguration: {
                    decimalSeparator: 'decimalSeparator',
                    thousandsSeparator: {
                      symbol: 'symbol',
                      visibility: 'visibility',
                    },
                  },
                  suffix: 'suffix',
                  symbol: 'symbol',
                },
                numberDisplayFormatConfiguration: {
                  decimalPlacesConfiguration: {
                    decimalPlaces: 123,
                  },
                  negativeValueConfiguration: {
                    displayMode: 'displayMode',
                  },
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numberScale: 'numberScale',
                  prefix: 'prefix',
                  separatorConfiguration: {
                    decimalSeparator: 'decimalSeparator',
                    thousandsSeparator: {
                      symbol: 'symbol',
                      visibility: 'visibility',
                    },
                  },
                  suffix: 'suffix',
                },
                percentageDisplayFormatConfiguration: {
                  decimalPlacesConfiguration: {
                    decimalPlaces: 123,
                  },
                  negativeValueConfiguration: {
                    displayMode: 'displayMode',
                  },
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  prefix: 'prefix',
                  separatorConfiguration: {
                    decimalSeparator: 'decimalSeparator',
                    thousandsSeparator: {
                      symbol: 'symbol',
                      visibility: 'visibility',
                    },
                  },
                  suffix: 'suffix',
                },
              },
              relativePosition: 'relativePosition',
            },
            verticalPosition: 'verticalPosition',
          },
          status: 'status',
          styleConfiguration: {
            color: 'color',
            pattern: 'pattern',
          },
        }],
        sortConfiguration: {
          categorySort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
          paginationConfiguration: {
            pageNumber: 123,
            pageSize: 123,
          },
        },
        tooltip: {
          fieldBasedTooltip: {
            aggregationVisibility: 'aggregationVisibility',
            tooltipFields: [{
              columnTooltipItem: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                // the properties below are optional
                aggregation: {
                  categoricalAggregationFunction: 'categoricalAggregationFunction',
                  dateAggregationFunction: 'dateAggregationFunction',
                  numericalAggregationFunction: {
                    percentileAggregation: {
                      percentileValue: 123,
                    },
                    simpleNumericalAggregation: 'simpleNumericalAggregation',
                  },
                },
                label: 'label',
                visibility: 'visibility',
              },
              fieldTooltipItem: {
                fieldId: 'fieldId',
                // the properties below are optional
                label: 'label',
                visibility: 'visibility',
              },
            }],
            tooltipTitleType: 'tooltipTitleType',
          },
          selectedTooltipType: 'selectedTooltipType',
          tooltipVisibility: 'tooltipVisibility',
        },
        visualPalette: {
          chartColor: 'chartColor',
          colorMap: [{
            color: 'color',
            element: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
            },
            // the properties below are optional
            timeGranularity: 'timeGranularity',
          }],
        },
      },
      columnHierarchies: [{
        dateTimeHierarchy: {
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        explicitHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        predefinedHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
      }],
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    comboChartVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        barDataLabels: {
          categoryLabelVisibility: 'categoryLabelVisibility',
          dataLabelTypes: [{
            dataPathLabelType: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
              visibility: 'visibility',
            },
            fieldLabelType: {
              fieldId: 'fieldId',
              visibility: 'visibility',
            },
            maximumLabelType: {
              visibility: 'visibility',
            },
            minimumLabelType: {
              visibility: 'visibility',
            },
            rangeEndsLabelType: {
              visibility: 'visibility',
            },
          }],
          labelColor: 'labelColor',
          labelContent: 'labelContent',
          labelFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          measureLabelVisibility: 'measureLabelVisibility',
          overlap: 'overlap',
          position: 'position',
          visibility: 'visibility',
        },
        barsArrangement: 'barsArrangement',
        categoryAxis: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
        categoryLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        colorLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        fieldWells: {
          comboChartAggregatedFieldWells: {
            barValues: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
            category: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            colors: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            lineValues: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        legend: {
          height: 'height',
          position: 'position',
          title: {
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            visibility: 'visibility',
          },
          visibility: 'visibility',
          width: 'width',
        },
        lineDataLabels: {
          categoryLabelVisibility: 'categoryLabelVisibility',
          dataLabelTypes: [{
            dataPathLabelType: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
              visibility: 'visibility',
            },
            fieldLabelType: {
              fieldId: 'fieldId',
              visibility: 'visibility',
            },
            maximumLabelType: {
              visibility: 'visibility',
            },
            minimumLabelType: {
              visibility: 'visibility',
            },
            rangeEndsLabelType: {
              visibility: 'visibility',
            },
          }],
          labelColor: 'labelColor',
          labelContent: 'labelContent',
          labelFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          measureLabelVisibility: 'measureLabelVisibility',
          overlap: 'overlap',
          position: 'position',
          visibility: 'visibility',
        },
        primaryYAxisDisplayOptions: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
        primaryYAxisLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        referenceLines: [{
          dataConfiguration: {
            axisBinding: 'axisBinding',
            dynamicConfiguration: {
              calculation: {
                percentileAggregation: {
                  percentileValue: 123,
                },
                simpleNumericalAggregation: 'simpleNumericalAggregation',
              },
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              measureAggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            staticConfiguration: {
              value: 123,
            },
          },
          // the properties below are optional
          labelConfiguration: {
            customLabelConfiguration: {
              customLabel: 'customLabel',
            },
            fontColor: 'fontColor',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            horizontalPosition: 'horizontalPosition',
            valueLabelConfiguration: {
              formatConfiguration: {
                currencyDisplayFormatConfiguration: {
                  decimalPlacesConfiguration: {
                    decimalPlaces: 123,
                  },
                  negativeValueConfiguration: {
                    displayMode: 'displayMode',
                  },
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numberScale: 'numberScale',
                  prefix: 'prefix',
                  separatorConfiguration: {
                    decimalSeparator: 'decimalSeparator',
                    thousandsSeparator: {
                      symbol: 'symbol',
                      visibility: 'visibility',
                    },
                  },
                  suffix: 'suffix',
                  symbol: 'symbol',
                },
                numberDisplayFormatConfiguration: {
                  decimalPlacesConfiguration: {
                    decimalPlaces: 123,
                  },
                  negativeValueConfiguration: {
                    displayMode: 'displayMode',
                  },
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numberScale: 'numberScale',
                  prefix: 'prefix',
                  separatorConfiguration: {
                    decimalSeparator: 'decimalSeparator',
                    thousandsSeparator: {
                      symbol: 'symbol',
                      visibility: 'visibility',
                    },
                  },
                  suffix: 'suffix',
                },
                percentageDisplayFormatConfiguration: {
                  decimalPlacesConfiguration: {
                    decimalPlaces: 123,
                  },
                  negativeValueConfiguration: {
                    displayMode: 'displayMode',
                  },
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  prefix: 'prefix',
                  separatorConfiguration: {
                    decimalSeparator: 'decimalSeparator',
                    thousandsSeparator: {
                      symbol: 'symbol',
                      visibility: 'visibility',
                    },
                  },
                  suffix: 'suffix',
                },
              },
              relativePosition: 'relativePosition',
            },
            verticalPosition: 'verticalPosition',
          },
          status: 'status',
          styleConfiguration: {
            color: 'color',
            pattern: 'pattern',
          },
        }],
        secondaryYAxisDisplayOptions: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
        secondaryYAxisLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        sortConfiguration: {
          categoryItemsLimit: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          categorySort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
          colorItemsLimit: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          colorSort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
        },
        tooltip: {
          fieldBasedTooltip: {
            aggregationVisibility: 'aggregationVisibility',
            tooltipFields: [{
              columnTooltipItem: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                // the properties below are optional
                aggregation: {
                  categoricalAggregationFunction: 'categoricalAggregationFunction',
                  dateAggregationFunction: 'dateAggregationFunction',
                  numericalAggregationFunction: {
                    percentileAggregation: {
                      percentileValue: 123,
                    },
                    simpleNumericalAggregation: 'simpleNumericalAggregation',
                  },
                },
                label: 'label',
                visibility: 'visibility',
              },
              fieldTooltipItem: {
                fieldId: 'fieldId',
                // the properties below are optional
                label: 'label',
                visibility: 'visibility',
              },
            }],
            tooltipTitleType: 'tooltipTitleType',
          },
          selectedTooltipType: 'selectedTooltipType',
          tooltipVisibility: 'tooltipVisibility',
        },
        visualPalette: {
          chartColor: 'chartColor',
          colorMap: [{
            color: 'color',
            element: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
            },
            // the properties below are optional
            timeGranularity: 'timeGranularity',
          }],
        },
      },
      columnHierarchies: [{
        dateTimeHierarchy: {
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        explicitHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        predefinedHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
      }],
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    customContentVisual: {
      dataSetIdentifier: 'dataSetIdentifier',
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        contentType: 'contentType',
        contentUrl: 'contentUrl',
        imageScaling: 'imageScaling',
      },
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    emptyVisual: {
      dataSetIdentifier: 'dataSetIdentifier',
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
    },
    filledMapVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        fieldWells: {
          filledMapAggregatedFieldWells: {
            geospatial: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            values: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        legend: {
          height: 'height',
          position: 'position',
          title: {
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            visibility: 'visibility',
          },
          visibility: 'visibility',
          width: 'width',
        },
        mapStyleOptions: {
          baseMapStyle: 'baseMapStyle',
        },
        sortConfiguration: {
          categorySort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
        },
        tooltip: {
          fieldBasedTooltip: {
            aggregationVisibility: 'aggregationVisibility',
            tooltipFields: [{
              columnTooltipItem: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                // the properties below are optional
                aggregation: {
                  categoricalAggregationFunction: 'categoricalAggregationFunction',
                  dateAggregationFunction: 'dateAggregationFunction',
                  numericalAggregationFunction: {
                    percentileAggregation: {
                      percentileValue: 123,
                    },
                    simpleNumericalAggregation: 'simpleNumericalAggregation',
                  },
                },
                label: 'label',
                visibility: 'visibility',
              },
              fieldTooltipItem: {
                fieldId: 'fieldId',
                // the properties below are optional
                label: 'label',
                visibility: 'visibility',
              },
            }],
            tooltipTitleType: 'tooltipTitleType',
          },
          selectedTooltipType: 'selectedTooltipType',
          tooltipVisibility: 'tooltipVisibility',
        },
        windowOptions: {
          bounds: {
            east: 123,
            north: 123,
            south: 123,
            west: 123,
          },
          mapZoomMode: 'mapZoomMode',
        },
      },
      columnHierarchies: [{
        dateTimeHierarchy: {
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        explicitHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        predefinedHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
      }],
      conditionalFormatting: {
        conditionalFormattingOptions: [{
          shape: {
            fieldId: 'fieldId',
            // the properties below are optional
            format: {
              backgroundColor: {
                gradient: {
                  color: {
                    stops: [{
                      gradientOffset: 123,
                      // the properties below are optional
                      color: 'color',
                      dataValue: 123,
                    }],
                  },
                  expression: 'expression',
                },
                solid: {
                  expression: 'expression',
                  // the properties below are optional
                  color: 'color',
                },
              },
            },
          },
        }],
      },
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    funnelChartVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        categoryLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        dataLabelOptions: {
          categoryLabelVisibility: 'categoryLabelVisibility',
          labelColor: 'labelColor',
          labelFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          measureDataLabelStyle: 'measureDataLabelStyle',
          measureLabelVisibility: 'measureLabelVisibility',
          position: 'position',
          visibility: 'visibility',
        },
        fieldWells: {
          funnelChartAggregatedFieldWells: {
            category: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            values: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        sortConfiguration: {
          categoryItemsLimit: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          categorySort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
        },
        tooltip: {
          fieldBasedTooltip: {
            aggregationVisibility: 'aggregationVisibility',
            tooltipFields: [{
              columnTooltipItem: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                // the properties below are optional
                aggregation: {
                  categoricalAggregationFunction: 'categoricalAggregationFunction',
                  dateAggregationFunction: 'dateAggregationFunction',
                  numericalAggregationFunction: {
                    percentileAggregation: {
                      percentileValue: 123,
                    },
                    simpleNumericalAggregation: 'simpleNumericalAggregation',
                  },
                },
                label: 'label',
                visibility: 'visibility',
              },
              fieldTooltipItem: {
                fieldId: 'fieldId',
                // the properties below are optional
                label: 'label',
                visibility: 'visibility',
              },
            }],
            tooltipTitleType: 'tooltipTitleType',
          },
          selectedTooltipType: 'selectedTooltipType',
          tooltipVisibility: 'tooltipVisibility',
        },
        valueLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        visualPalette: {
          chartColor: 'chartColor',
          colorMap: [{
            color: 'color',
            element: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
            },
            // the properties below are optional
            timeGranularity: 'timeGranularity',
          }],
        },
      },
      columnHierarchies: [{
        dateTimeHierarchy: {
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        explicitHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        predefinedHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
      }],
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    gaugeChartVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        dataLabels: {
          categoryLabelVisibility: 'categoryLabelVisibility',
          dataLabelTypes: [{
            dataPathLabelType: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
              visibility: 'visibility',
            },
            fieldLabelType: {
              fieldId: 'fieldId',
              visibility: 'visibility',
            },
            maximumLabelType: {
              visibility: 'visibility',
            },
            minimumLabelType: {
              visibility: 'visibility',
            },
            rangeEndsLabelType: {
              visibility: 'visibility',
            },
          }],
          labelColor: 'labelColor',
          labelContent: 'labelContent',
          labelFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          measureLabelVisibility: 'measureLabelVisibility',
          overlap: 'overlap',
          position: 'position',
          visibility: 'visibility',
        },
        fieldWells: {
          targetValues: [{
            calculatedMeasureField: {
              expression: 'expression',
              fieldId: 'fieldId',
            },
            categoricalMeasureField: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              aggregationFunction: 'aggregationFunction',
              formatConfiguration: {
                nullValueFormatConfiguration: {
                  nullString: 'nullString',
                },
                numericFormatConfiguration: {
                  currencyDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                    symbol: 'symbol',
                  },
                  numberDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                  percentageDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                },
              },
            },
            dateMeasureField: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              aggregationFunction: 'aggregationFunction',
              formatConfiguration: {
                dateTimeFormat: 'dateTimeFormat',
                nullValueFormatConfiguration: {
                  nullString: 'nullString',
                },
                numericFormatConfiguration: {
                  currencyDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                    symbol: 'symbol',
                  },
                  numberDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                  percentageDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                },
              },
            },
            numericalMeasureField: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              aggregationFunction: {
                percentileAggregation: {
                  percentileValue: 123,
                },
                simpleNumericalAggregation: 'simpleNumericalAggregation',
              },
              formatConfiguration: {
                formatConfiguration: {
                  currencyDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                    symbol: 'symbol',
                  },
                  numberDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                  percentageDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                },
              },
            },
          }],
          values: [{
            calculatedMeasureField: {
              expression: 'expression',
              fieldId: 'fieldId',
            },
            categoricalMeasureField: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              aggregationFunction: 'aggregationFunction',
              formatConfiguration: {
                nullValueFormatConfiguration: {
                  nullString: 'nullString',
                },
                numericFormatConfiguration: {
                  currencyDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                    symbol: 'symbol',
                  },
                  numberDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                  percentageDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                },
              },
            },
            dateMeasureField: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              aggregationFunction: 'aggregationFunction',
              formatConfiguration: {
                dateTimeFormat: 'dateTimeFormat',
                nullValueFormatConfiguration: {
                  nullString: 'nullString',
                },
                numericFormatConfiguration: {
                  currencyDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                    symbol: 'symbol',
                  },
                  numberDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                  percentageDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                },
              },
            },
            numericalMeasureField: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              aggregationFunction: {
                percentileAggregation: {
                  percentileValue: 123,
                },
                simpleNumericalAggregation: 'simpleNumericalAggregation',
              },
              formatConfiguration: {
                formatConfiguration: {
                  currencyDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                    symbol: 'symbol',
                  },
                  numberDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                  percentageDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                },
              },
            },
          }],
        },
        gaugeChartOptions: {
          arc: {
            arcAngle: 123,
            arcThickness: 'arcThickness',
          },
          arcAxis: {
            range: {
              max: 123,
              min: 123,
            },
            reserveRange: 123,
          },
          comparison: {
            comparisonFormat: {
              numberDisplayFormatConfiguration: {
                decimalPlacesConfiguration: {
                  decimalPlaces: 123,
                },
                negativeValueConfiguration: {
                  displayMode: 'displayMode',
                },
                nullValueFormatConfiguration: {
                  nullString: 'nullString',
                },
                numberScale: 'numberScale',
                prefix: 'prefix',
                separatorConfiguration: {
                  decimalSeparator: 'decimalSeparator',
                  thousandsSeparator: {
                    symbol: 'symbol',
                    visibility: 'visibility',
                  },
                },
                suffix: 'suffix',
              },
              percentageDisplayFormatConfiguration: {
                decimalPlacesConfiguration: {
                  decimalPlaces: 123,
                },
                negativeValueConfiguration: {
                  displayMode: 'displayMode',
                },
                nullValueFormatConfiguration: {
                  nullString: 'nullString',
                },
                prefix: 'prefix',
                separatorConfiguration: {
                  decimalSeparator: 'decimalSeparator',
                  thousandsSeparator: {
                    symbol: 'symbol',
                    visibility: 'visibility',
                  },
                },
                suffix: 'suffix',
              },
            },
            comparisonMethod: 'comparisonMethod',
          },
          primaryValueDisplayType: 'primaryValueDisplayType',
          primaryValueFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
        },
        tooltipOptions: {
          fieldBasedTooltip: {
            aggregationVisibility: 'aggregationVisibility',
            tooltipFields: [{
              columnTooltipItem: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                // the properties below are optional
                aggregation: {
                  categoricalAggregationFunction: 'categoricalAggregationFunction',
                  dateAggregationFunction: 'dateAggregationFunction',
                  numericalAggregationFunction: {
                    percentileAggregation: {
                      percentileValue: 123,
                    },
                    simpleNumericalAggregation: 'simpleNumericalAggregation',
                  },
                },
                label: 'label',
                visibility: 'visibility',
              },
              fieldTooltipItem: {
                fieldId: 'fieldId',
                // the properties below are optional
                label: 'label',
                visibility: 'visibility',
              },
            }],
            tooltipTitleType: 'tooltipTitleType',
          },
          selectedTooltipType: 'selectedTooltipType',
          tooltipVisibility: 'tooltipVisibility',
        },
        visualPalette: {
          chartColor: 'chartColor',
          colorMap: [{
            color: 'color',
            element: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
            },
            // the properties below are optional
            timeGranularity: 'timeGranularity',
          }],
        },
      },
      conditionalFormatting: {
        conditionalFormattingOptions: [{
          arc: {
            foregroundColor: {
              gradient: {
                color: {
                  stops: [{
                    gradientOffset: 123,
                    // the properties below are optional
                    color: 'color',
                    dataValue: 123,
                  }],
                },
                expression: 'expression',
              },
              solid: {
                expression: 'expression',
                // the properties below are optional
                color: 'color',
              },
            },
          },
          primaryValue: {
            icon: {
              customCondition: {
                expression: 'expression',
                iconOptions: {
                  icon: 'icon',
                  unicodeIcon: 'unicodeIcon',
                },
                // the properties below are optional
                color: 'color',
                displayConfiguration: {
                  iconDisplayOption: 'iconDisplayOption',
                },
              },
              iconSet: {
                expression: 'expression',
                // the properties below are optional
                iconSetType: 'iconSetType',
              },
            },
            textColor: {
              gradient: {
                color: {
                  stops: [{
                    gradientOffset: 123,
                    // the properties below are optional
                    color: 'color',
                    dataValue: 123,
                  }],
                },
                expression: 'expression',
              },
              solid: {
                expression: 'expression',
                // the properties below are optional
                color: 'color',
              },
            },
          },
        }],
      },
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    geospatialMapVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        fieldWells: {
          geospatialMapAggregatedFieldWells: {
            colors: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            geospatial: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            values: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        legend: {
          height: 'height',
          position: 'position',
          title: {
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            visibility: 'visibility',
          },
          visibility: 'visibility',
          width: 'width',
        },
        mapStyleOptions: {
          baseMapStyle: 'baseMapStyle',
        },
        pointStyleOptions: {
          clusterMarkerConfiguration: {
            clusterMarker: {
              simpleClusterMarker: {
                color: 'color',
              },
            },
          },
          selectedPointStyle: 'selectedPointStyle',
        },
        tooltip: {
          fieldBasedTooltip: {
            aggregationVisibility: 'aggregationVisibility',
            tooltipFields: [{
              columnTooltipItem: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                // the properties below are optional
                aggregation: {
                  categoricalAggregationFunction: 'categoricalAggregationFunction',
                  dateAggregationFunction: 'dateAggregationFunction',
                  numericalAggregationFunction: {
                    percentileAggregation: {
                      percentileValue: 123,
                    },
                    simpleNumericalAggregation: 'simpleNumericalAggregation',
                  },
                },
                label: 'label',
                visibility: 'visibility',
              },
              fieldTooltipItem: {
                fieldId: 'fieldId',
                // the properties below are optional
                label: 'label',
                visibility: 'visibility',
              },
            }],
            tooltipTitleType: 'tooltipTitleType',
          },
          selectedTooltipType: 'selectedTooltipType',
          tooltipVisibility: 'tooltipVisibility',
        },
        visualPalette: {
          chartColor: 'chartColor',
          colorMap: [{
            color: 'color',
            element: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
            },
            // the properties below are optional
            timeGranularity: 'timeGranularity',
          }],
        },
        windowOptions: {
          bounds: {
            east: 123,
            north: 123,
            south: 123,
            west: 123,
          },
          mapZoomMode: 'mapZoomMode',
        },
      },
      columnHierarchies: [{
        dateTimeHierarchy: {
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        explicitHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        predefinedHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
      }],
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    heatMapVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        colorScale: {
          colorFillType: 'colorFillType',
          colors: [{
            color: 'color',
            dataValue: 123,
          }],
          // the properties below are optional
          nullValueColor: {
            color: 'color',
            dataValue: 123,
          },
        },
        columnLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        dataLabels: {
          categoryLabelVisibility: 'categoryLabelVisibility',
          dataLabelTypes: [{
            dataPathLabelType: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
              visibility: 'visibility',
            },
            fieldLabelType: {
              fieldId: 'fieldId',
              visibility: 'visibility',
            },
            maximumLabelType: {
              visibility: 'visibility',
            },
            minimumLabelType: {
              visibility: 'visibility',
            },
            rangeEndsLabelType: {
              visibility: 'visibility',
            },
          }],
          labelColor: 'labelColor',
          labelContent: 'labelContent',
          labelFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          measureLabelVisibility: 'measureLabelVisibility',
          overlap: 'overlap',
          position: 'position',
          visibility: 'visibility',
        },
        fieldWells: {
          heatMapAggregatedFieldWells: {
            columns: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            rows: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            values: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        legend: {
          height: 'height',
          position: 'position',
          title: {
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            visibility: 'visibility',
          },
          visibility: 'visibility',
          width: 'width',
        },
        rowLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        sortConfiguration: {
          heatMapColumnItemsLimitConfiguration: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          heatMapColumnSort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
          heatMapRowItemsLimitConfiguration: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          heatMapRowSort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
        },
        tooltip: {
          fieldBasedTooltip: {
            aggregationVisibility: 'aggregationVisibility',
            tooltipFields: [{
              columnTooltipItem: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                // the properties below are optional
                aggregation: {
                  categoricalAggregationFunction: 'categoricalAggregationFunction',
                  dateAggregationFunction: 'dateAggregationFunction',
                  numericalAggregationFunction: {
                    percentileAggregation: {
                      percentileValue: 123,
                    },
                    simpleNumericalAggregation: 'simpleNumericalAggregation',
                  },
                },
                label: 'label',
                visibility: 'visibility',
              },
              fieldTooltipItem: {
                fieldId: 'fieldId',
                // the properties below are optional
                label: 'label',
                visibility: 'visibility',
              },
            }],
            tooltipTitleType: 'tooltipTitleType',
          },
          selectedTooltipType: 'selectedTooltipType',
          tooltipVisibility: 'tooltipVisibility',
        },
      },
      columnHierarchies: [{
        dateTimeHierarchy: {
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        explicitHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        predefinedHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
      }],
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    histogramVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        binOptions: {
          binCount: {
            value: 123,
          },
          binWidth: {
            binCountLimit: 123,
            value: 123,
          },
          selectedBinType: 'selectedBinType',
          startValue: 123,
        },
        dataLabels: {
          categoryLabelVisibility: 'categoryLabelVisibility',
          dataLabelTypes: [{
            dataPathLabelType: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
              visibility: 'visibility',
            },
            fieldLabelType: {
              fieldId: 'fieldId',
              visibility: 'visibility',
            },
            maximumLabelType: {
              visibility: 'visibility',
            },
            minimumLabelType: {
              visibility: 'visibility',
            },
            rangeEndsLabelType: {
              visibility: 'visibility',
            },
          }],
          labelColor: 'labelColor',
          labelContent: 'labelContent',
          labelFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          measureLabelVisibility: 'measureLabelVisibility',
          overlap: 'overlap',
          position: 'position',
          visibility: 'visibility',
        },
        fieldWells: {
          histogramAggregatedFieldWells: {
            values: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        tooltip: {
          fieldBasedTooltip: {
            aggregationVisibility: 'aggregationVisibility',
            tooltipFields: [{
              columnTooltipItem: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                // the properties below are optional
                aggregation: {
                  categoricalAggregationFunction: 'categoricalAggregationFunction',
                  dateAggregationFunction: 'dateAggregationFunction',
                  numericalAggregationFunction: {
                    percentileAggregation: {
                      percentileValue: 123,
                    },
                    simpleNumericalAggregation: 'simpleNumericalAggregation',
                  },
                },
                label: 'label',
                visibility: 'visibility',
              },
              fieldTooltipItem: {
                fieldId: 'fieldId',
                // the properties below are optional
                label: 'label',
                visibility: 'visibility',
              },
            }],
            tooltipTitleType: 'tooltipTitleType',
          },
          selectedTooltipType: 'selectedTooltipType',
          tooltipVisibility: 'tooltipVisibility',
        },
        visualPalette: {
          chartColor: 'chartColor',
          colorMap: [{
            color: 'color',
            element: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
            },
            // the properties below are optional
            timeGranularity: 'timeGranularity',
          }],
        },
        xAxisDisplayOptions: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
        xAxisLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        yAxisDisplayOptions: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
      },
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    insightVisual: {
      dataSetIdentifier: 'dataSetIdentifier',
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      insightConfiguration: {
        computations: [{
          forecast: {
            computationId: 'computationId',
            time: {
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            },
            // the properties below are optional
            customSeasonalityValue: 123,
            lowerBoundary: 123,
            name: 'name',
            periodsBackward: 123,
            periodsForward: 123,
            predictionInterval: 123,
            seasonality: 'seasonality',
            upperBoundary: 123,
            value: {
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            },
          },
          growthRate: {
            computationId: 'computationId',
            time: {
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            },
            // the properties below are optional
            name: 'name',
            periodSize: 123,
            value: {
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            },
          },
          maximumMinimum: {
            computationId: 'computationId',
            time: {
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            },
            type: 'type',
            // the properties below are optional
            name: 'name',
            value: {
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            },
          },
          metricComparison: {
            computationId: 'computationId',
            fromValue: {
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            },
            targetValue: {
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            },
            time: {
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            },
            // the properties below are optional
            name: 'name',
          },
          periodOverPeriod: {
            computationId: 'computationId',
            time: {
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            },
            // the properties below are optional
            name: 'name',
            value: {
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            },
          },
          periodToDate: {
            computationId: 'computationId',
            time: {
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            },
            // the properties below are optional
            name: 'name',
            periodTimeGranularity: 'periodTimeGranularity',
            value: {
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            },
          },
          topBottomMovers: {
            category: {
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            },
            computationId: 'computationId',
            time: {
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            },
            type: 'type',
            // the properties below are optional
            moverSize: 123,
            name: 'name',
            sortOrder: 'sortOrder',
            value: {
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            },
          },
          topBottomRanked: {
            category: {
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            },
            computationId: 'computationId',
            type: 'type',
            // the properties below are optional
            name: 'name',
            resultSize: 123,
            value: {
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            },
          },
          totalAggregation: {
            computationId: 'computationId',
            value: {
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            },
            // the properties below are optional
            name: 'name',
          },
          uniqueValues: {
            category: {
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            },
            computationId: 'computationId',
            // the properties below are optional
            name: 'name',
          },
        }],
        customNarrative: {
          narrative: 'narrative',
        },
      },
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    kpiVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        fieldWells: {
          targetValues: [{
            calculatedMeasureField: {
              expression: 'expression',
              fieldId: 'fieldId',
            },
            categoricalMeasureField: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              aggregationFunction: 'aggregationFunction',
              formatConfiguration: {
                nullValueFormatConfiguration: {
                  nullString: 'nullString',
                },
                numericFormatConfiguration: {
                  currencyDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                    symbol: 'symbol',
                  },
                  numberDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                  percentageDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                },
              },
            },
            dateMeasureField: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              aggregationFunction: 'aggregationFunction',
              formatConfiguration: {
                dateTimeFormat: 'dateTimeFormat',
                nullValueFormatConfiguration: {
                  nullString: 'nullString',
                },
                numericFormatConfiguration: {
                  currencyDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                    symbol: 'symbol',
                  },
                  numberDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                  percentageDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                },
              },
            },
            numericalMeasureField: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              aggregationFunction: {
                percentileAggregation: {
                  percentileValue: 123,
                },
                simpleNumericalAggregation: 'simpleNumericalAggregation',
              },
              formatConfiguration: {
                formatConfiguration: {
                  currencyDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                    symbol: 'symbol',
                  },
                  numberDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                  percentageDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                },
              },
            },
          }],
          trendGroups: [{
            categoricalDimensionField: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              formatConfiguration: {
                nullValueFormatConfiguration: {
                  nullString: 'nullString',
                },
                numericFormatConfiguration: {
                  currencyDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                    symbol: 'symbol',
                  },
                  numberDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                  percentageDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                },
              },
              hierarchyId: 'hierarchyId',
            },
            dateDimensionField: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              dateGranularity: 'dateGranularity',
              formatConfiguration: {
                dateTimeFormat: 'dateTimeFormat',
                nullValueFormatConfiguration: {
                  nullString: 'nullString',
                },
                numericFormatConfiguration: {
                  currencyDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                    symbol: 'symbol',
                  },
                  numberDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                  percentageDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                },
              },
              hierarchyId: 'hierarchyId',
            },
            numericalDimensionField: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              formatConfiguration: {
                formatConfiguration: {
                  currencyDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                    symbol: 'symbol',
                  },
                  numberDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                  percentageDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                },
              },
              hierarchyId: 'hierarchyId',
            },
          }],
          values: [{
            calculatedMeasureField: {
              expression: 'expression',
              fieldId: 'fieldId',
            },
            categoricalMeasureField: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              aggregationFunction: 'aggregationFunction',
              formatConfiguration: {
                nullValueFormatConfiguration: {
                  nullString: 'nullString',
                },
                numericFormatConfiguration: {
                  currencyDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                    symbol: 'symbol',
                  },
                  numberDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                  percentageDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                },
              },
            },
            dateMeasureField: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              aggregationFunction: 'aggregationFunction',
              formatConfiguration: {
                dateTimeFormat: 'dateTimeFormat',
                nullValueFormatConfiguration: {
                  nullString: 'nullString',
                },
                numericFormatConfiguration: {
                  currencyDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                    symbol: 'symbol',
                  },
                  numberDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                  percentageDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                },
              },
            },
            numericalMeasureField: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              aggregationFunction: {
                percentileAggregation: {
                  percentileValue: 123,
                },
                simpleNumericalAggregation: 'simpleNumericalAggregation',
              },
              formatConfiguration: {
                formatConfiguration: {
                  currencyDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                    symbol: 'symbol',
                  },
                  numberDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    numberScale: 'numberScale',
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                  percentageDisplayFormatConfiguration: {
                    decimalPlacesConfiguration: {
                      decimalPlaces: 123,
                    },
                    negativeValueConfiguration: {
                      displayMode: 'displayMode',
                    },
                    nullValueFormatConfiguration: {
                      nullString: 'nullString',
                    },
                    prefix: 'prefix',
                    separatorConfiguration: {
                      decimalSeparator: 'decimalSeparator',
                      thousandsSeparator: {
                        symbol: 'symbol',
                        visibility: 'visibility',
                      },
                    },
                    suffix: 'suffix',
                  },
                },
              },
            },
          }],
        },
        kpiOptions: {
          comparison: {
            comparisonFormat: {
              numberDisplayFormatConfiguration: {
                decimalPlacesConfiguration: {
                  decimalPlaces: 123,
                },
                negativeValueConfiguration: {
                  displayMode: 'displayMode',
                },
                nullValueFormatConfiguration: {
                  nullString: 'nullString',
                },
                numberScale: 'numberScale',
                prefix: 'prefix',
                separatorConfiguration: {
                  decimalSeparator: 'decimalSeparator',
                  thousandsSeparator: {
                    symbol: 'symbol',
                    visibility: 'visibility',
                  },
                },
                suffix: 'suffix',
              },
              percentageDisplayFormatConfiguration: {
                decimalPlacesConfiguration: {
                  decimalPlaces: 123,
                },
                negativeValueConfiguration: {
                  displayMode: 'displayMode',
                },
                nullValueFormatConfiguration: {
                  nullString: 'nullString',
                },
                prefix: 'prefix',
                separatorConfiguration: {
                  decimalSeparator: 'decimalSeparator',
                  thousandsSeparator: {
                    symbol: 'symbol',
                    visibility: 'visibility',
                  },
                },
                suffix: 'suffix',
              },
            },
            comparisonMethod: 'comparisonMethod',
          },
          primaryValueDisplayType: 'primaryValueDisplayType',
          primaryValueFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          progressBar: {
            visibility: 'visibility',
          },
          secondaryValue: {
            visibility: 'visibility',
          },
          secondaryValueFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          trendArrows: {
            visibility: 'visibility',
          },
        },
        sortConfiguration: {
          trendGroupSort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
        },
      },
      columnHierarchies: [{
        dateTimeHierarchy: {
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        explicitHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        predefinedHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
      }],
      conditionalFormatting: {
        conditionalFormattingOptions: [{
          primaryValue: {
            icon: {
              customCondition: {
                expression: 'expression',
                iconOptions: {
                  icon: 'icon',
                  unicodeIcon: 'unicodeIcon',
                },
                // the properties below are optional
                color: 'color',
                displayConfiguration: {
                  iconDisplayOption: 'iconDisplayOption',
                },
              },
              iconSet: {
                expression: 'expression',
                // the properties below are optional
                iconSetType: 'iconSetType',
              },
            },
            textColor: {
              gradient: {
                color: {
                  stops: [{
                    gradientOffset: 123,
                    // the properties below are optional
                    color: 'color',
                    dataValue: 123,
                  }],
                },
                expression: 'expression',
              },
              solid: {
                expression: 'expression',
                // the properties below are optional
                color: 'color',
              },
            },
          },
          progressBar: {
            foregroundColor: {
              gradient: {
                color: {
                  stops: [{
                    gradientOffset: 123,
                    // the properties below are optional
                    color: 'color',
                    dataValue: 123,
                  }],
                },
                expression: 'expression',
              },
              solid: {
                expression: 'expression',
                // the properties below are optional
                color: 'color',
              },
            },
          },
        }],
      },
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    lineChartVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        contributionAnalysisDefaults: [{
          contributorDimensions: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          measureFieldId: 'measureFieldId',
        }],
        dataLabels: {
          categoryLabelVisibility: 'categoryLabelVisibility',
          dataLabelTypes: [{
            dataPathLabelType: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
              visibility: 'visibility',
            },
            fieldLabelType: {
              fieldId: 'fieldId',
              visibility: 'visibility',
            },
            maximumLabelType: {
              visibility: 'visibility',
            },
            minimumLabelType: {
              visibility: 'visibility',
            },
            rangeEndsLabelType: {
              visibility: 'visibility',
            },
          }],
          labelColor: 'labelColor',
          labelContent: 'labelContent',
          labelFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          measureLabelVisibility: 'measureLabelVisibility',
          overlap: 'overlap',
          position: 'position',
          visibility: 'visibility',
        },
        defaultSeriesSettings: {
          axisBinding: 'axisBinding',
          lineStyleSettings: {
            lineInterpolation: 'lineInterpolation',
            lineStyle: 'lineStyle',
            lineVisibility: 'lineVisibility',
            lineWidth: 'lineWidth',
          },
          markerStyleSettings: {
            markerColor: 'markerColor',
            markerShape: 'markerShape',
            markerSize: 'markerSize',
            markerVisibility: 'markerVisibility',
          },
        },
        fieldWells: {
          lineChartAggregatedFieldWells: {
            category: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            colors: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            smallMultiples: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            values: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        forecastConfigurations: [{
          forecastProperties: {
            lowerBoundary: 123,
            periodsBackward: 123,
            periodsForward: 123,
            predictionInterval: 123,
            seasonality: 123,
            upperBoundary: 123,
          },
          scenario: {
            whatIfPointScenario: {
              date: 'date',
              value: 123,
            },
            whatIfRangeScenario: {
              endDate: 'endDate',
              startDate: 'startDate',
              value: 123,
            },
          },
        }],
        legend: {
          height: 'height',
          position: 'position',
          title: {
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            visibility: 'visibility',
          },
          visibility: 'visibility',
          width: 'width',
        },
        primaryYAxisDisplayOptions: {
          axisOptions: {
            axisLineVisibility: 'axisLineVisibility',
            axisOffset: 'axisOffset',
            dataOptions: {
              dateAxisOptions: {
                missingDateVisibility: 'missingDateVisibility',
              },
              numericAxisOptions: {
                range: {
                  dataDriven: dataDriven,
                  minMax: {
                    maximum: 123,
                    minimum: 123,
                  },
                },
                scale: {
                  linear: {
                    stepCount: 123,
                    stepSize: 123,
                  },
                  logarithmic: {
                    base: 123,
                  },
                },
              },
            },
            gridLineVisibility: 'gridLineVisibility',
            scrollbarOptions: {
              visibility: 'visibility',
              visibleRange: {
                percentRange: {
                  from: 123,
                  to: 123,
                },
              },
            },
            tickLabelOptions: {
              labelOptions: {
                customLabel: 'customLabel',
                fontConfiguration: {
                  fontColor: 'fontColor',
                  fontDecoration: 'fontDecoration',
                  fontSize: {
                    relative: 'relative',
                  },
                  fontStyle: 'fontStyle',
                  fontWeight: {
                    name: 'name',
                  },
                },
                visibility: 'visibility',
              },
              rotationAngle: 123,
            },
          },
          missingDataConfigurations: [{
            treatmentOption: 'treatmentOption',
          }],
        },
        primaryYAxisLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        referenceLines: [{
          dataConfiguration: {
            axisBinding: 'axisBinding',
            dynamicConfiguration: {
              calculation: {
                percentileAggregation: {
                  percentileValue: 123,
                },
                simpleNumericalAggregation: 'simpleNumericalAggregation',
              },
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              measureAggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            staticConfiguration: {
              value: 123,
            },
          },
          // the properties below are optional
          labelConfiguration: {
            customLabelConfiguration: {
              customLabel: 'customLabel',
            },
            fontColor: 'fontColor',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            horizontalPosition: 'horizontalPosition',
            valueLabelConfiguration: {
              formatConfiguration: {
                currencyDisplayFormatConfiguration: {
                  decimalPlacesConfiguration: {
                    decimalPlaces: 123,
                  },
                  negativeValueConfiguration: {
                    displayMode: 'displayMode',
                  },
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numberScale: 'numberScale',
                  prefix: 'prefix',
                  separatorConfiguration: {
                    decimalSeparator: 'decimalSeparator',
                    thousandsSeparator: {
                      symbol: 'symbol',
                      visibility: 'visibility',
                    },
                  },
                  suffix: 'suffix',
                  symbol: 'symbol',
                },
                numberDisplayFormatConfiguration: {
                  decimalPlacesConfiguration: {
                    decimalPlaces: 123,
                  },
                  negativeValueConfiguration: {
                    displayMode: 'displayMode',
                  },
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numberScale: 'numberScale',
                  prefix: 'prefix',
                  separatorConfiguration: {
                    decimalSeparator: 'decimalSeparator',
                    thousandsSeparator: {
                      symbol: 'symbol',
                      visibility: 'visibility',
                    },
                  },
                  suffix: 'suffix',
                },
                percentageDisplayFormatConfiguration: {
                  decimalPlacesConfiguration: {
                    decimalPlaces: 123,
                  },
                  negativeValueConfiguration: {
                    displayMode: 'displayMode',
                  },
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  prefix: 'prefix',
                  separatorConfiguration: {
                    decimalSeparator: 'decimalSeparator',
                    thousandsSeparator: {
                      symbol: 'symbol',
                      visibility: 'visibility',
                    },
                  },
                  suffix: 'suffix',
                },
              },
              relativePosition: 'relativePosition',
            },
            verticalPosition: 'verticalPosition',
          },
          status: 'status',
          styleConfiguration: {
            color: 'color',
            pattern: 'pattern',
          },
        }],
        secondaryYAxisDisplayOptions: {
          axisOptions: {
            axisLineVisibility: 'axisLineVisibility',
            axisOffset: 'axisOffset',
            dataOptions: {
              dateAxisOptions: {
                missingDateVisibility: 'missingDateVisibility',
              },
              numericAxisOptions: {
                range: {
                  dataDriven: dataDriven,
                  minMax: {
                    maximum: 123,
                    minimum: 123,
                  },
                },
                scale: {
                  linear: {
                    stepCount: 123,
                    stepSize: 123,
                  },
                  logarithmic: {
                    base: 123,
                  },
                },
              },
            },
            gridLineVisibility: 'gridLineVisibility',
            scrollbarOptions: {
              visibility: 'visibility',
              visibleRange: {
                percentRange: {
                  from: 123,
                  to: 123,
                },
              },
            },
            tickLabelOptions: {
              labelOptions: {
                customLabel: 'customLabel',
                fontConfiguration: {
                  fontColor: 'fontColor',
                  fontDecoration: 'fontDecoration',
                  fontSize: {
                    relative: 'relative',
                  },
                  fontStyle: 'fontStyle',
                  fontWeight: {
                    name: 'name',
                  },
                },
                visibility: 'visibility',
              },
              rotationAngle: 123,
            },
          },
          missingDataConfigurations: [{
            treatmentOption: 'treatmentOption',
          }],
        },
        secondaryYAxisLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        series: [{
          dataFieldSeriesItem: {
            axisBinding: 'axisBinding',
            fieldId: 'fieldId',
            // the properties below are optional
            fieldValue: 'fieldValue',
            settings: {
              lineStyleSettings: {
                lineInterpolation: 'lineInterpolation',
                lineStyle: 'lineStyle',
                lineVisibility: 'lineVisibility',
                lineWidth: 'lineWidth',
              },
              markerStyleSettings: {
                markerColor: 'markerColor',
                markerShape: 'markerShape',
                markerSize: 'markerSize',
                markerVisibility: 'markerVisibility',
              },
            },
          },
          fieldSeriesItem: {
            axisBinding: 'axisBinding',
            fieldId: 'fieldId',
            // the properties below are optional
            settings: {
              lineStyleSettings: {
                lineInterpolation: 'lineInterpolation',
                lineStyle: 'lineStyle',
                lineVisibility: 'lineVisibility',
                lineWidth: 'lineWidth',
              },
              markerStyleSettings: {
                markerColor: 'markerColor',
                markerShape: 'markerShape',
                markerSize: 'markerSize',
                markerVisibility: 'markerVisibility',
              },
            },
          },
        }],
        smallMultiplesOptions: {
          maxVisibleColumns: 123,
          maxVisibleRows: 123,
          panelConfiguration: {
            backgroundColor: 'backgroundColor',
            backgroundVisibility: 'backgroundVisibility',
            borderColor: 'borderColor',
            borderStyle: 'borderStyle',
            borderThickness: 'borderThickness',
            borderVisibility: 'borderVisibility',
            gutterSpacing: 'gutterSpacing',
            gutterVisibility: 'gutterVisibility',
            title: {
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              horizontalTextAlignment: 'horizontalTextAlignment',
              visibility: 'visibility',
            },
          },
        },
        sortConfiguration: {
          categoryItemsLimitConfiguration: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          categorySort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
          colorItemsLimitConfiguration: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          smallMultiplesLimitConfiguration: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          smallMultiplesSort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
        },
        tooltip: {
          fieldBasedTooltip: {
            aggregationVisibility: 'aggregationVisibility',
            tooltipFields: [{
              columnTooltipItem: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                // the properties below are optional
                aggregation: {
                  categoricalAggregationFunction: 'categoricalAggregationFunction',
                  dateAggregationFunction: 'dateAggregationFunction',
                  numericalAggregationFunction: {
                    percentileAggregation: {
                      percentileValue: 123,
                    },
                    simpleNumericalAggregation: 'simpleNumericalAggregation',
                  },
                },
                label: 'label',
                visibility: 'visibility',
              },
              fieldTooltipItem: {
                fieldId: 'fieldId',
                // the properties below are optional
                label: 'label',
                visibility: 'visibility',
              },
            }],
            tooltipTitleType: 'tooltipTitleType',
          },
          selectedTooltipType: 'selectedTooltipType',
          tooltipVisibility: 'tooltipVisibility',
        },
        type: 'type',
        visualPalette: {
          chartColor: 'chartColor',
          colorMap: [{
            color: 'color',
            element: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
            },
            // the properties below are optional
            timeGranularity: 'timeGranularity',
          }],
        },
        xAxisDisplayOptions: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
        xAxisLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
      },
      columnHierarchies: [{
        dateTimeHierarchy: {
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        explicitHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        predefinedHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
      }],
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    pieChartVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        categoryLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        contributionAnalysisDefaults: [{
          contributorDimensions: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          measureFieldId: 'measureFieldId',
        }],
        dataLabels: {
          categoryLabelVisibility: 'categoryLabelVisibility',
          dataLabelTypes: [{
            dataPathLabelType: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
              visibility: 'visibility',
            },
            fieldLabelType: {
              fieldId: 'fieldId',
              visibility: 'visibility',
            },
            maximumLabelType: {
              visibility: 'visibility',
            },
            minimumLabelType: {
              visibility: 'visibility',
            },
            rangeEndsLabelType: {
              visibility: 'visibility',
            },
          }],
          labelColor: 'labelColor',
          labelContent: 'labelContent',
          labelFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          measureLabelVisibility: 'measureLabelVisibility',
          overlap: 'overlap',
          position: 'position',
          visibility: 'visibility',
        },
        donutOptions: {
          arcOptions: {
            arcThickness: 'arcThickness',
          },
          donutCenterOptions: {
            labelVisibility: 'labelVisibility',
          },
        },
        fieldWells: {
          pieChartAggregatedFieldWells: {
            category: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            smallMultiples: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            values: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        legend: {
          height: 'height',
          position: 'position',
          title: {
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            visibility: 'visibility',
          },
          visibility: 'visibility',
          width: 'width',
        },
        smallMultiplesOptions: {
          maxVisibleColumns: 123,
          maxVisibleRows: 123,
          panelConfiguration: {
            backgroundColor: 'backgroundColor',
            backgroundVisibility: 'backgroundVisibility',
            borderColor: 'borderColor',
            borderStyle: 'borderStyle',
            borderThickness: 'borderThickness',
            borderVisibility: 'borderVisibility',
            gutterSpacing: 'gutterSpacing',
            gutterVisibility: 'gutterVisibility',
            title: {
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              horizontalTextAlignment: 'horizontalTextAlignment',
              visibility: 'visibility',
            },
          },
        },
        sortConfiguration: {
          categoryItemsLimit: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          categorySort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
          smallMultiplesLimitConfiguration: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          smallMultiplesSort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
        },
        tooltip: {
          fieldBasedTooltip: {
            aggregationVisibility: 'aggregationVisibility',
            tooltipFields: [{
              columnTooltipItem: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                // the properties below are optional
                aggregation: {
                  categoricalAggregationFunction: 'categoricalAggregationFunction',
                  dateAggregationFunction: 'dateAggregationFunction',
                  numericalAggregationFunction: {
                    percentileAggregation: {
                      percentileValue: 123,
                    },
                    simpleNumericalAggregation: 'simpleNumericalAggregation',
                  },
                },
                label: 'label',
                visibility: 'visibility',
              },
              fieldTooltipItem: {
                fieldId: 'fieldId',
                // the properties below are optional
                label: 'label',
                visibility: 'visibility',
              },
            }],
            tooltipTitleType: 'tooltipTitleType',
          },
          selectedTooltipType: 'selectedTooltipType',
          tooltipVisibility: 'tooltipVisibility',
        },
        valueLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        visualPalette: {
          chartColor: 'chartColor',
          colorMap: [{
            color: 'color',
            element: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
            },
            // the properties below are optional
            timeGranularity: 'timeGranularity',
          }],
        },
      },
      columnHierarchies: [{
        dateTimeHierarchy: {
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        explicitHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        predefinedHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
      }],
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    pivotTableVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        fieldOptions: {
          dataPathOptions: [{
            dataPathList: [{
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
            }],
            // the properties below are optional
            width: 'width',
          }],
          selectedFieldOptions: [{
            fieldId: 'fieldId',
            // the properties below are optional
            customLabel: 'customLabel',
            visibility: 'visibility',
          }],
        },
        fieldWells: {
          pivotTableAggregatedFieldWells: {
            columns: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            rows: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            values: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        paginatedReportOptions: {
          overflowColumnHeaderVisibility: 'overflowColumnHeaderVisibility',
          verticalOverflowVisibility: 'verticalOverflowVisibility',
        },
        sortConfiguration: {
          fieldSortOptions: [{
            fieldId: 'fieldId',
            sortBy: {
              column: {
                direction: 'direction',
                sortBy: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                // the properties below are optional
                aggregationFunction: {
                  categoricalAggregationFunction: 'categoricalAggregationFunction',
                  dateAggregationFunction: 'dateAggregationFunction',
                  numericalAggregationFunction: {
                    percentileAggregation: {
                      percentileValue: 123,
                    },
                    simpleNumericalAggregation: 'simpleNumericalAggregation',
                  },
                },
              },
              dataPath: {
                direction: 'direction',
                sortPaths: [{
                  fieldId: 'fieldId',
                  fieldValue: 'fieldValue',
                }],
              },
              field: {
                direction: 'direction',
                fieldId: 'fieldId',
              },
            },
          }],
        },
        tableOptions: {
          cellStyle: {
            backgroundColor: 'backgroundColor',
            border: {
              sideSpecificBorder: {
                bottom: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                innerHorizontal: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                innerVertical: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                left: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                right: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                top: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              uniformBorder: {
                color: 'color',
                style: 'style',
                thickness: 123,
              },
            },
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            height: 123,
            horizontalTextAlignment: 'horizontalTextAlignment',
            textWrap: 'textWrap',
            verticalTextAlignment: 'verticalTextAlignment',
            visibility: 'visibility',
          },
          columnHeaderStyle: {
            backgroundColor: 'backgroundColor',
            border: {
              sideSpecificBorder: {
                bottom: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                innerHorizontal: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                innerVertical: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                left: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                right: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                top: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              uniformBorder: {
                color: 'color',
                style: 'style',
                thickness: 123,
              },
            },
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            height: 123,
            horizontalTextAlignment: 'horizontalTextAlignment',
            textWrap: 'textWrap',
            verticalTextAlignment: 'verticalTextAlignment',
            visibility: 'visibility',
          },
          columnNamesVisibility: 'columnNamesVisibility',
          metricPlacement: 'metricPlacement',
          rowAlternateColorOptions: {
            rowAlternateColors: ['rowAlternateColors'],
            status: 'status',
          },
          rowFieldNamesStyle: {
            backgroundColor: 'backgroundColor',
            border: {
              sideSpecificBorder: {
                bottom: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                innerHorizontal: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                innerVertical: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                left: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                right: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                top: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              uniformBorder: {
                color: 'color',
                style: 'style',
                thickness: 123,
              },
            },
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            height: 123,
            horizontalTextAlignment: 'horizontalTextAlignment',
            textWrap: 'textWrap',
            verticalTextAlignment: 'verticalTextAlignment',
            visibility: 'visibility',
          },
          rowHeaderStyle: {
            backgroundColor: 'backgroundColor',
            border: {
              sideSpecificBorder: {
                bottom: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                innerHorizontal: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                innerVertical: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                left: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                right: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                top: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              uniformBorder: {
                color: 'color',
                style: 'style',
                thickness: 123,
              },
            },
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            height: 123,
            horizontalTextAlignment: 'horizontalTextAlignment',
            textWrap: 'textWrap',
            verticalTextAlignment: 'verticalTextAlignment',
            visibility: 'visibility',
          },
          singleMetricVisibility: 'singleMetricVisibility',
          toggleButtonsVisibility: 'toggleButtonsVisibility',
        },
        totalOptions: {
          columnSubtotalOptions: {
            customLabel: 'customLabel',
            fieldLevel: 'fieldLevel',
            fieldLevelOptions: [{
              fieldId: 'fieldId',
            }],
            metricHeaderCellStyle: {
              backgroundColor: 'backgroundColor',
              border: {
                sideSpecificBorder: {
                  bottom: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerHorizontal: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerVertical: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  left: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  right: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  top: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                },
                uniformBorder: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              height: 123,
              horizontalTextAlignment: 'horizontalTextAlignment',
              textWrap: 'textWrap',
              verticalTextAlignment: 'verticalTextAlignment',
              visibility: 'visibility',
            },
            totalCellStyle: {
              backgroundColor: 'backgroundColor',
              border: {
                sideSpecificBorder: {
                  bottom: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerHorizontal: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerVertical: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  left: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  right: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  top: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                },
                uniformBorder: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              height: 123,
              horizontalTextAlignment: 'horizontalTextAlignment',
              textWrap: 'textWrap',
              verticalTextAlignment: 'verticalTextAlignment',
              visibility: 'visibility',
            },
            totalsVisibility: 'totalsVisibility',
            valueCellStyle: {
              backgroundColor: 'backgroundColor',
              border: {
                sideSpecificBorder: {
                  bottom: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerHorizontal: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerVertical: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  left: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  right: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  top: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                },
                uniformBorder: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              height: 123,
              horizontalTextAlignment: 'horizontalTextAlignment',
              textWrap: 'textWrap',
              verticalTextAlignment: 'verticalTextAlignment',
              visibility: 'visibility',
            },
          },
          columnTotalOptions: {
            customLabel: 'customLabel',
            metricHeaderCellStyle: {
              backgroundColor: 'backgroundColor',
              border: {
                sideSpecificBorder: {
                  bottom: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerHorizontal: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerVertical: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  left: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  right: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  top: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                },
                uniformBorder: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              height: 123,
              horizontalTextAlignment: 'horizontalTextAlignment',
              textWrap: 'textWrap',
              verticalTextAlignment: 'verticalTextAlignment',
              visibility: 'visibility',
            },
            placement: 'placement',
            scrollStatus: 'scrollStatus',
            totalCellStyle: {
              backgroundColor: 'backgroundColor',
              border: {
                sideSpecificBorder: {
                  bottom: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerHorizontal: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerVertical: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  left: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  right: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  top: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                },
                uniformBorder: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              height: 123,
              horizontalTextAlignment: 'horizontalTextAlignment',
              textWrap: 'textWrap',
              verticalTextAlignment: 'verticalTextAlignment',
              visibility: 'visibility',
            },
            totalsVisibility: 'totalsVisibility',
            valueCellStyle: {
              backgroundColor: 'backgroundColor',
              border: {
                sideSpecificBorder: {
                  bottom: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerHorizontal: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerVertical: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  left: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  right: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  top: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                },
                uniformBorder: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              height: 123,
              horizontalTextAlignment: 'horizontalTextAlignment',
              textWrap: 'textWrap',
              verticalTextAlignment: 'verticalTextAlignment',
              visibility: 'visibility',
            },
          },
          rowSubtotalOptions: {
            customLabel: 'customLabel',
            fieldLevel: 'fieldLevel',
            fieldLevelOptions: [{
              fieldId: 'fieldId',
            }],
            metricHeaderCellStyle: {
              backgroundColor: 'backgroundColor',
              border: {
                sideSpecificBorder: {
                  bottom: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerHorizontal: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerVertical: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  left: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  right: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  top: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                },
                uniformBorder: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              height: 123,
              horizontalTextAlignment: 'horizontalTextAlignment',
              textWrap: 'textWrap',
              verticalTextAlignment: 'verticalTextAlignment',
              visibility: 'visibility',
            },
            totalCellStyle: {
              backgroundColor: 'backgroundColor',
              border: {
                sideSpecificBorder: {
                  bottom: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerHorizontal: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerVertical: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  left: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  right: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  top: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                },
                uniformBorder: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              height: 123,
              horizontalTextAlignment: 'horizontalTextAlignment',
              textWrap: 'textWrap',
              verticalTextAlignment: 'verticalTextAlignment',
              visibility: 'visibility',
            },
            totalsVisibility: 'totalsVisibility',
            valueCellStyle: {
              backgroundColor: 'backgroundColor',
              border: {
                sideSpecificBorder: {
                  bottom: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerHorizontal: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerVertical: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  left: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  right: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  top: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                },
                uniformBorder: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              height: 123,
              horizontalTextAlignment: 'horizontalTextAlignment',
              textWrap: 'textWrap',
              verticalTextAlignment: 'verticalTextAlignment',
              visibility: 'visibility',
            },
          },
          rowTotalOptions: {
            customLabel: 'customLabel',
            metricHeaderCellStyle: {
              backgroundColor: 'backgroundColor',
              border: {
                sideSpecificBorder: {
                  bottom: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerHorizontal: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerVertical: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  left: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  right: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  top: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                },
                uniformBorder: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              height: 123,
              horizontalTextAlignment: 'horizontalTextAlignment',
              textWrap: 'textWrap',
              verticalTextAlignment: 'verticalTextAlignment',
              visibility: 'visibility',
            },
            placement: 'placement',
            scrollStatus: 'scrollStatus',
            totalCellStyle: {
              backgroundColor: 'backgroundColor',
              border: {
                sideSpecificBorder: {
                  bottom: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerHorizontal: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerVertical: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  left: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  right: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  top: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                },
                uniformBorder: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              height: 123,
              horizontalTextAlignment: 'horizontalTextAlignment',
              textWrap: 'textWrap',
              verticalTextAlignment: 'verticalTextAlignment',
              visibility: 'visibility',
            },
            totalsVisibility: 'totalsVisibility',
            valueCellStyle: {
              backgroundColor: 'backgroundColor',
              border: {
                sideSpecificBorder: {
                  bottom: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerHorizontal: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  innerVertical: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  left: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  right: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                  top: {
                    color: 'color',
                    style: 'style',
                    thickness: 123,
                  },
                },
                uniformBorder: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              height: 123,
              horizontalTextAlignment: 'horizontalTextAlignment',
              textWrap: 'textWrap',
              verticalTextAlignment: 'verticalTextAlignment',
              visibility: 'visibility',
            },
          },
        },
      },
      conditionalFormatting: {
        conditionalFormattingOptions: [{
          cell: {
            fieldId: 'fieldId',
            // the properties below are optional
            scope: {
              role: 'role',
            },
            textFormat: {
              backgroundColor: {
                gradient: {
                  color: {
                    stops: [{
                      gradientOffset: 123,
                      // the properties below are optional
                      color: 'color',
                      dataValue: 123,
                    }],
                  },
                  expression: 'expression',
                },
                solid: {
                  expression: 'expression',
                  // the properties below are optional
                  color: 'color',
                },
              },
              icon: {
                customCondition: {
                  expression: 'expression',
                  iconOptions: {
                    icon: 'icon',
                    unicodeIcon: 'unicodeIcon',
                  },
                  // the properties below are optional
                  color: 'color',
                  displayConfiguration: {
                    iconDisplayOption: 'iconDisplayOption',
                  },
                },
                iconSet: {
                  expression: 'expression',
                  // the properties below are optional
                  iconSetType: 'iconSetType',
                },
              },
              textColor: {
                gradient: {
                  color: {
                    stops: [{
                      gradientOffset: 123,
                      // the properties below are optional
                      color: 'color',
                      dataValue: 123,
                    }],
                  },
                  expression: 'expression',
                },
                solid: {
                  expression: 'expression',
                  // the properties below are optional
                  color: 'color',
                },
              },
            },
          },
        }],
      },
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    radarChartVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        alternateBandColorsVisibility: 'alternateBandColorsVisibility',
        alternateBandEvenColor: 'alternateBandEvenColor',
        alternateBandOddColor: 'alternateBandOddColor',
        baseSeriesSettings: {
          areaStyleSettings: {
            visibility: 'visibility',
          },
        },
        categoryAxis: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
        categoryLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        colorAxis: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
        colorLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        fieldWells: {
          radarChartAggregatedFieldWells: {
            category: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            color: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            values: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        legend: {
          height: 'height',
          position: 'position',
          title: {
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            visibility: 'visibility',
          },
          visibility: 'visibility',
          width: 'width',
        },
        shape: 'shape',
        sortConfiguration: {
          categoryItemsLimit: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          categorySort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
          colorItemsLimit: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          colorSort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
        },
        startAngle: 123,
        visualPalette: {
          chartColor: 'chartColor',
          colorMap: [{
            color: 'color',
            element: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
            },
            // the properties below are optional
            timeGranularity: 'timeGranularity',
          }],
        },
      },
      columnHierarchies: [{
        dateTimeHierarchy: {
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        explicitHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        predefinedHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
      }],
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    sankeyDiagramVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        dataLabels: {
          categoryLabelVisibility: 'categoryLabelVisibility',
          dataLabelTypes: [{
            dataPathLabelType: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
              visibility: 'visibility',
            },
            fieldLabelType: {
              fieldId: 'fieldId',
              visibility: 'visibility',
            },
            maximumLabelType: {
              visibility: 'visibility',
            },
            minimumLabelType: {
              visibility: 'visibility',
            },
            rangeEndsLabelType: {
              visibility: 'visibility',
            },
          }],
          labelColor: 'labelColor',
          labelContent: 'labelContent',
          labelFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          measureLabelVisibility: 'measureLabelVisibility',
          overlap: 'overlap',
          position: 'position',
          visibility: 'visibility',
        },
        fieldWells: {
          sankeyDiagramAggregatedFieldWells: {
            destination: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            source: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            weight: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        sortConfiguration: {
          destinationItemsLimit: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          sourceItemsLimit: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          weightSort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
        },
      },
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    scatterPlotVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        dataLabels: {
          categoryLabelVisibility: 'categoryLabelVisibility',
          dataLabelTypes: [{
            dataPathLabelType: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
              visibility: 'visibility',
            },
            fieldLabelType: {
              fieldId: 'fieldId',
              visibility: 'visibility',
            },
            maximumLabelType: {
              visibility: 'visibility',
            },
            minimumLabelType: {
              visibility: 'visibility',
            },
            rangeEndsLabelType: {
              visibility: 'visibility',
            },
          }],
          labelColor: 'labelColor',
          labelContent: 'labelContent',
          labelFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          measureLabelVisibility: 'measureLabelVisibility',
          overlap: 'overlap',
          position: 'position',
          visibility: 'visibility',
        },
        fieldWells: {
          scatterPlotCategoricallyAggregatedFieldWells: {
            category: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            size: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
            xAxis: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
            yAxis: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
          scatterPlotUnaggregatedFieldWells: {
            size: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
            xAxis: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            yAxis: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
          },
        },
        legend: {
          height: 'height',
          position: 'position',
          title: {
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            visibility: 'visibility',
          },
          visibility: 'visibility',
          width: 'width',
        },
        tooltip: {
          fieldBasedTooltip: {
            aggregationVisibility: 'aggregationVisibility',
            tooltipFields: [{
              columnTooltipItem: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                // the properties below are optional
                aggregation: {
                  categoricalAggregationFunction: 'categoricalAggregationFunction',
                  dateAggregationFunction: 'dateAggregationFunction',
                  numericalAggregationFunction: {
                    percentileAggregation: {
                      percentileValue: 123,
                    },
                    simpleNumericalAggregation: 'simpleNumericalAggregation',
                  },
                },
                label: 'label',
                visibility: 'visibility',
              },
              fieldTooltipItem: {
                fieldId: 'fieldId',
                // the properties below are optional
                label: 'label',
                visibility: 'visibility',
              },
            }],
            tooltipTitleType: 'tooltipTitleType',
          },
          selectedTooltipType: 'selectedTooltipType',
          tooltipVisibility: 'tooltipVisibility',
        },
        visualPalette: {
          chartColor: 'chartColor',
          colorMap: [{
            color: 'color',
            element: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
            },
            // the properties below are optional
            timeGranularity: 'timeGranularity',
          }],
        },
        xAxisDisplayOptions: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
        xAxisLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        yAxisDisplayOptions: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
        yAxisLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
      },
      columnHierarchies: [{
        dateTimeHierarchy: {
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        explicitHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        predefinedHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
      }],
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    tableVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        fieldOptions: {
          order: ['order'],
          selectedFieldOptions: [{
            fieldId: 'fieldId',
            // the properties below are optional
            customLabel: 'customLabel',
            urlStyling: {
              imageConfiguration: {
                sizingOptions: {
                  tableCellImageScalingConfiguration: 'tableCellImageScalingConfiguration',
                },
              },
              linkConfiguration: {
                content: {
                  customIconContent: {
                    icon: 'icon',
                  },
                  customTextContent: {
                    fontConfiguration: {
                      fontColor: 'fontColor',
                      fontDecoration: 'fontDecoration',
                      fontSize: {
                        relative: 'relative',
                      },
                      fontStyle: 'fontStyle',
                      fontWeight: {
                        name: 'name',
                      },
                    },
                    // the properties below are optional
                    value: 'value',
                  },
                },
                target: 'target',
              },
            },
            visibility: 'visibility',
            width: 'width',
          }],
        },
        fieldWells: {
          tableAggregatedFieldWells: {
            groupBy: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            values: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
          tableUnaggregatedFieldWells: {
            values: [{
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
              // the properties below are optional
              formatConfiguration: {
                dateTimeFormatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                numberFormatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                stringFormatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        paginatedReportOptions: {
          overflowColumnHeaderVisibility: 'overflowColumnHeaderVisibility',
          verticalOverflowVisibility: 'verticalOverflowVisibility',
        },
        sortConfiguration: {
          paginationConfiguration: {
            pageNumber: 123,
            pageSize: 123,
          },
          rowSort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
        },
        tableInlineVisualizations: [{
          dataBars: {
            fieldId: 'fieldId',
            // the properties below are optional
            negativeColor: 'negativeColor',
            positiveColor: 'positiveColor',
          },
        }],
        tableOptions: {
          cellStyle: {
            backgroundColor: 'backgroundColor',
            border: {
              sideSpecificBorder: {
                bottom: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                innerHorizontal: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                innerVertical: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                left: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                right: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                top: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              uniformBorder: {
                color: 'color',
                style: 'style',
                thickness: 123,
              },
            },
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            height: 123,
            horizontalTextAlignment: 'horizontalTextAlignment',
            textWrap: 'textWrap',
            verticalTextAlignment: 'verticalTextAlignment',
            visibility: 'visibility',
          },
          headerStyle: {
            backgroundColor: 'backgroundColor',
            border: {
              sideSpecificBorder: {
                bottom: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                innerHorizontal: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                innerVertical: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                left: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                right: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                top: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              uniformBorder: {
                color: 'color',
                style: 'style',
                thickness: 123,
              },
            },
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            height: 123,
            horizontalTextAlignment: 'horizontalTextAlignment',
            textWrap: 'textWrap',
            verticalTextAlignment: 'verticalTextAlignment',
            visibility: 'visibility',
          },
          orientation: 'orientation',
          rowAlternateColorOptions: {
            rowAlternateColors: ['rowAlternateColors'],
            status: 'status',
          },
        },
        totalOptions: {
          customLabel: 'customLabel',
          placement: 'placement',
          scrollStatus: 'scrollStatus',
          totalCellStyle: {
            backgroundColor: 'backgroundColor',
            border: {
              sideSpecificBorder: {
                bottom: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                innerHorizontal: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                innerVertical: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                left: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                right: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
                top: {
                  color: 'color',
                  style: 'style',
                  thickness: 123,
                },
              },
              uniformBorder: {
                color: 'color',
                style: 'style',
                thickness: 123,
              },
            },
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            height: 123,
            horizontalTextAlignment: 'horizontalTextAlignment',
            textWrap: 'textWrap',
            verticalTextAlignment: 'verticalTextAlignment',
            visibility: 'visibility',
          },
          totalsVisibility: 'totalsVisibility',
        },
      },
      conditionalFormatting: {
        conditionalFormattingOptions: [{
          cell: {
            fieldId: 'fieldId',
            // the properties below are optional
            textFormat: {
              backgroundColor: {
                gradient: {
                  color: {
                    stops: [{
                      gradientOffset: 123,
                      // the properties below are optional
                      color: 'color',
                      dataValue: 123,
                    }],
                  },
                  expression: 'expression',
                },
                solid: {
                  expression: 'expression',
                  // the properties below are optional
                  color: 'color',
                },
              },
              icon: {
                customCondition: {
                  expression: 'expression',
                  iconOptions: {
                    icon: 'icon',
                    unicodeIcon: 'unicodeIcon',
                  },
                  // the properties below are optional
                  color: 'color',
                  displayConfiguration: {
                    iconDisplayOption: 'iconDisplayOption',
                  },
                },
                iconSet: {
                  expression: 'expression',
                  // the properties below are optional
                  iconSetType: 'iconSetType',
                },
              },
              textColor: {
                gradient: {
                  color: {
                    stops: [{
                      gradientOffset: 123,
                      // the properties below are optional
                      color: 'color',
                      dataValue: 123,
                    }],
                  },
                  expression: 'expression',
                },
                solid: {
                  expression: 'expression',
                  // the properties below are optional
                  color: 'color',
                },
              },
            },
          },
          row: {
            backgroundColor: {
              gradient: {
                color: {
                  stops: [{
                    gradientOffset: 123,
                    // the properties below are optional
                    color: 'color',
                    dataValue: 123,
                  }],
                },
                expression: 'expression',
              },
              solid: {
                expression: 'expression',
                // the properties below are optional
                color: 'color',
              },
            },
            textColor: {
              gradient: {
                color: {
                  stops: [{
                    gradientOffset: 123,
                    // the properties below are optional
                    color: 'color',
                    dataValue: 123,
                  }],
                },
                expression: 'expression',
              },
              solid: {
                expression: 'expression',
                // the properties below are optional
                color: 'color',
              },
            },
          },
        }],
      },
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    treeMapVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        colorLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        colorScale: {
          colorFillType: 'colorFillType',
          colors: [{
            color: 'color',
            dataValue: 123,
          }],
          // the properties below are optional
          nullValueColor: {
            color: 'color',
            dataValue: 123,
          },
        },
        dataLabels: {
          categoryLabelVisibility: 'categoryLabelVisibility',
          dataLabelTypes: [{
            dataPathLabelType: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
              visibility: 'visibility',
            },
            fieldLabelType: {
              fieldId: 'fieldId',
              visibility: 'visibility',
            },
            maximumLabelType: {
              visibility: 'visibility',
            },
            minimumLabelType: {
              visibility: 'visibility',
            },
            rangeEndsLabelType: {
              visibility: 'visibility',
            },
          }],
          labelColor: 'labelColor',
          labelContent: 'labelContent',
          labelFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          measureLabelVisibility: 'measureLabelVisibility',
          overlap: 'overlap',
          position: 'position',
          visibility: 'visibility',
        },
        fieldWells: {
          treeMapAggregatedFieldWells: {
            colors: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
            groups: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            sizes: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        groupLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        legend: {
          height: 'height',
          position: 'position',
          title: {
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            visibility: 'visibility',
          },
          visibility: 'visibility',
          width: 'width',
        },
        sizeLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        sortConfiguration: {
          treeMapGroupItemsLimitConfiguration: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          treeMapSort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
        },
        tooltip: {
          fieldBasedTooltip: {
            aggregationVisibility: 'aggregationVisibility',
            tooltipFields: [{
              columnTooltipItem: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                // the properties below are optional
                aggregation: {
                  categoricalAggregationFunction: 'categoricalAggregationFunction',
                  dateAggregationFunction: 'dateAggregationFunction',
                  numericalAggregationFunction: {
                    percentileAggregation: {
                      percentileValue: 123,
                    },
                    simpleNumericalAggregation: 'simpleNumericalAggregation',
                  },
                },
                label: 'label',
                visibility: 'visibility',
              },
              fieldTooltipItem: {
                fieldId: 'fieldId',
                // the properties below are optional
                label: 'label',
                visibility: 'visibility',
              },
            }],
            tooltipTitleType: 'tooltipTitleType',
          },
          selectedTooltipType: 'selectedTooltipType',
          tooltipVisibility: 'tooltipVisibility',
        },
      },
      columnHierarchies: [{
        dateTimeHierarchy: {
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        explicitHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        predefinedHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
      }],
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    waterfallVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        categoryAxisDisplayOptions: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
        categoryAxisLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        dataLabels: {
          categoryLabelVisibility: 'categoryLabelVisibility',
          dataLabelTypes: [{
            dataPathLabelType: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
              visibility: 'visibility',
            },
            fieldLabelType: {
              fieldId: 'fieldId',
              visibility: 'visibility',
            },
            maximumLabelType: {
              visibility: 'visibility',
            },
            minimumLabelType: {
              visibility: 'visibility',
            },
            rangeEndsLabelType: {
              visibility: 'visibility',
            },
          }],
          labelColor: 'labelColor',
          labelContent: 'labelContent',
          labelFontConfiguration: {
            fontColor: 'fontColor',
            fontDecoration: 'fontDecoration',
            fontSize: {
              relative: 'relative',
            },
            fontStyle: 'fontStyle',
            fontWeight: {
              name: 'name',
            },
          },
          measureLabelVisibility: 'measureLabelVisibility',
          overlap: 'overlap',
          position: 'position',
          visibility: 'visibility',
        },
        fieldWells: {
          waterfallChartAggregatedFieldWells: {
            breakdowns: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            categories: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            values: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        legend: {
          height: 'height',
          position: 'position',
          title: {
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
            visibility: 'visibility',
          },
          visibility: 'visibility',
          width: 'width',
        },
        primaryYAxisDisplayOptions: {
          axisLineVisibility: 'axisLineVisibility',
          axisOffset: 'axisOffset',
          dataOptions: {
            dateAxisOptions: {
              missingDateVisibility: 'missingDateVisibility',
            },
            numericAxisOptions: {
              range: {
                dataDriven: dataDriven,
                minMax: {
                  maximum: 123,
                  minimum: 123,
                },
              },
              scale: {
                linear: {
                  stepCount: 123,
                  stepSize: 123,
                },
                logarithmic: {
                  base: 123,
                },
              },
            },
          },
          gridLineVisibility: 'gridLineVisibility',
          scrollbarOptions: {
            visibility: 'visibility',
            visibleRange: {
              percentRange: {
                from: 123,
                to: 123,
              },
            },
          },
          tickLabelOptions: {
            labelOptions: {
              customLabel: 'customLabel',
              fontConfiguration: {
                fontColor: 'fontColor',
                fontDecoration: 'fontDecoration',
                fontSize: {
                  relative: 'relative',
                },
                fontStyle: 'fontStyle',
                fontWeight: {
                  name: 'name',
                },
              },
              visibility: 'visibility',
            },
            rotationAngle: 123,
          },
        },
        primaryYAxisLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        sortConfiguration: {
          breakdownItemsLimit: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          categorySort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
        },
        visualPalette: {
          chartColor: 'chartColor',
          colorMap: [{
            color: 'color',
            element: {
              fieldId: 'fieldId',
              fieldValue: 'fieldValue',
            },
            // the properties below are optional
            timeGranularity: 'timeGranularity',
          }],
        },
        waterfallChartOptions: {
          totalBarLabel: 'totalBarLabel',
        },
      },
      columnHierarchies: [{
        dateTimeHierarchy: {
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        explicitHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        predefinedHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
      }],
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
    wordCloudVisual: {
      visualId: 'visualId',
      // the properties below are optional
      actions: [{
        actionOperations: [{
          filterOperation: {
            selectedFieldsConfiguration: {
              selectedFieldOptions: 'selectedFieldOptions',
              selectedFields: ['selectedFields'],
            },
            targetVisualsConfiguration: {
              sameSheetTargetVisualConfiguration: {
                targetVisualOptions: 'targetVisualOptions',
                targetVisuals: ['targetVisuals'],
              },
            },
          },
          navigationOperation: {
            localNavigationConfiguration: {
              targetSheetId: 'targetSheetId',
            },
          },
          setParametersOperation: {
            parameterValueConfigurations: [{
              destinationParameterName: 'destinationParameterName',
              value: {
                customValuesConfiguration: {
                  customValues: {
                    dateTimeValues: ['dateTimeValues'],
                    decimalValues: [123],
                    integerValues: [123],
                    stringValues: ['stringValues'],
                  },
                  // the properties below are optional
                  includeNullValue: false,
                },
                selectAllValueOptions: 'selectAllValueOptions',
                sourceField: 'sourceField',
                sourceParameterName: 'sourceParameterName',
              },
            }],
          },
          urlOperation: {
            urlTarget: 'urlTarget',
            urlTemplate: 'urlTemplate',
          },
        }],
        customActionId: 'customActionId',
        name: 'name',
        trigger: 'trigger',
        // the properties below are optional
        status: 'status',
      }],
      chartConfiguration: {
        categoryLabelOptions: {
          axisLabelOptions: [{
            applyTo: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              fieldId: 'fieldId',
            },
            customLabel: 'customLabel',
            fontConfiguration: {
              fontColor: 'fontColor',
              fontDecoration: 'fontDecoration',
              fontSize: {
                relative: 'relative',
              },
              fontStyle: 'fontStyle',
              fontWeight: {
                name: 'name',
              },
            },
          }],
          sortIconVisibility: 'sortIconVisibility',
          visibility: 'visibility',
        },
        fieldWells: {
          wordCloudAggregatedFieldWells: {
            groupBy: [{
              categoricalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              dateDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                dateGranularity: 'dateGranularity',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
              numericalDimensionField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
                hierarchyId: 'hierarchyId',
              },
            }],
            size: [{
              calculatedMeasureField: {
                expression: 'expression',
                fieldId: 'fieldId',
              },
              categoricalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              dateMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: 'aggregationFunction',
                formatConfiguration: {
                  dateTimeFormat: 'dateTimeFormat',
                  nullValueFormatConfiguration: {
                    nullString: 'nullString',
                  },
                  numericFormatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
              numericalMeasureField: {
                column: {
                  columnName: 'columnName',
                  dataSetIdentifier: 'dataSetIdentifier',
                },
                fieldId: 'fieldId',
                // the properties below are optional
                aggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
                formatConfiguration: {
                  formatConfiguration: {
                    currencyDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                      symbol: 'symbol',
                    },
                    numberDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      numberScale: 'numberScale',
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                    percentageDisplayFormatConfiguration: {
                      decimalPlacesConfiguration: {
                        decimalPlaces: 123,
                      },
                      negativeValueConfiguration: {
                        displayMode: 'displayMode',
                      },
                      nullValueFormatConfiguration: {
                        nullString: 'nullString',
                      },
                      prefix: 'prefix',
                      separatorConfiguration: {
                        decimalSeparator: 'decimalSeparator',
                        thousandsSeparator: {
                          symbol: 'symbol',
                          visibility: 'visibility',
                        },
                      },
                      suffix: 'suffix',
                    },
                  },
                },
              },
            }],
          },
        },
        sortConfiguration: {
          categoryItemsLimit: {
            itemsLimit: 123,
            otherCategories: 'otherCategories',
          },
          categorySort: [{
            columnSort: {
              direction: 'direction',
              sortBy: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              // the properties below are optional
              aggregationFunction: {
                categoricalAggregationFunction: 'categoricalAggregationFunction',
                dateAggregationFunction: 'dateAggregationFunction',
                numericalAggregationFunction: {
                  percentileAggregation: {
                    percentileValue: 123,
                  },
                  simpleNumericalAggregation: 'simpleNumericalAggregation',
                },
              },
            },
            fieldSort: {
              direction: 'direction',
              fieldId: 'fieldId',
            },
          }],
        },
        wordCloudOptions: {
          cloudLayout: 'cloudLayout',
          maximumStringLength: 123,
          wordCasing: 'wordCasing',
          wordOrientation: 'wordOrientation',
          wordPadding: 'wordPadding',
          wordScaling: 'wordScaling',
        },
      },
      columnHierarchies: [{
        dateTimeHierarchy: {
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        explicitHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
        predefinedHierarchy: {
          columns: [{
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          }],
          hierarchyId: 'hierarchyId',
          // the properties below are optional
          drillDownFilters: [{
            categoryFilter: {
              categoryValues: ['categoryValues'],
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
            },
            numericEqualityFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              value: 123,
            },
            timeRangeFilter: {
              column: {
                columnName: 'columnName',
                dataSetIdentifier: 'dataSetIdentifier',
              },
              rangeMaximum: 'rangeMaximum',
              rangeMinimum: 'rangeMinimum',
              timeGranularity: 'timeGranularity',
            },
          }],
        },
      }],
      subtitle: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
      title: {
        formatText: {
          plainText: 'plainText',
          richText: 'richText',
        },
        visibility: 'visibility',
      },
    },
  }],
};
Properties
| Name | Type | Description | 
|---|---|---|
| sheet | string | The unique identifier of a sheet. | 
| content | string | The layout content type of the sheet. Choose one of the following options:. | 
| description? | string | A description of the sheet. | 
| filter | IResolvable | IResolvable | Filter[] | The list of filter controls that are on a sheet. | 
| layouts? | IResolvable | IResolvable | Layout[] | Layouts define how the components of a sheet are arranged. | 
| name? | string | The name of the sheet. | 
| parameter | IResolvable | IResolvable | Parameter[] | The list of parameter controls that are on a sheet. | 
| sheet | IResolvable | IResolvable | Sheet[] | The control layouts of the sheet. | 
| text | IResolvable | IResolvable | Sheet[] | The text boxes that are on a sheet. | 
| title? | string | The title of the sheet. | 
| visuals? | IResolvable | IResolvable | Visual[] | A list of the visuals that are on a sheet. | 
sheetId
Type:
string
The unique identifier of a sheet.
contentType?
Type:
string
(optional)
The layout content type of the sheet. Choose one of the following options:.
- PAGINATED: Creates a sheet for a paginated report.
- INTERACTIVE: Creates a sheet for an interactive dashboard.
description?
Type:
string
(optional)
A description of the sheet.
filterControls?
Type:
IResolvable | IResolvable | Filter[]
(optional)
The list of filter controls that are on a sheet.
For more information, see Adding filter controls to analysis sheets in the Amazon QuickSight User Guide .
layouts?
Type:
IResolvable | IResolvable | Layout[]
(optional)
Layouts define how the components of a sheet are arranged.
For more information, see Types of layout in the Amazon QuickSight User Guide .
name?
Type:
string
(optional)
The name of the sheet.
This name is displayed on the sheet's tab in the Amazon QuickSight console.
parameterControls?
Type:
IResolvable | IResolvable | Parameter[]
(optional)
The list of parameter controls that are on a sheet.
For more information, see Using a Control with a Parameter in Amazon QuickSight in the Amazon QuickSight User Guide .
sheetControlLayouts?
Type:
IResolvable | IResolvable | Sheet[]
(optional)
The control layouts of the sheet.
textBoxes?
Type:
IResolvable | IResolvable | Sheet[]
(optional)
The text boxes that are on a sheet.
title?
Type:
string
(optional)
The title of the sheet.
visuals?
Type:
IResolvable | IResolvable | Visual[]
(optional)
A list of the visuals that are on a sheet.
Visual placement is determined by the layout of the sheet.
