class CfnTemplate (construct)
| Language | Type name | 
|---|---|
|  .NET | Amazon.CDK.AWS.QuickSight.CfnTemplate | 
|  Java | software.amazon.awscdk.services.quicksight.CfnTemplate | 
|  Python | aws_cdk.aws_quicksight.CfnTemplate | 
|  TypeScript | @aws-cdk/aws-quicksight»CfnTemplate | 
Implements
IConstruct, IConstruct, IDependable, IInspectable
A CloudFormation AWS::QuickSight::Template.
Creates a template from an existing Amazon QuickSight analysis or template. You can use the resulting template to create a dashboard.
A template is an entity in Amazon QuickSight that encapsulates the metadata required to create an analysis and that you can use to create s dashboard. A template adds a layer of abstraction by using placeholders to replace the dataset associated with the analysis. You can use templates to create dashboards by replacing dataset placeholders with datasets that follow the same schema that was used to create the source analysis and template.
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 cfnTemplate = new quicksight.CfnTemplate(this, 'MyCfnTemplate', {
  awsAccountId: 'awsAccountId',
  templateId: 'templateId',
  // the properties below are optional
  definition: {
    dataSetConfigurations: [{
      columnGroupSchemaList: [{
        columnGroupColumnSchemaList: [{
          name: 'name',
        }],
        name: 'name',
      }],
      dataSetSchema: {
        columnSchemaList: [{
          dataType: 'dataType',
          geographicRole: 'geographicRole',
          name: 'name',
        }],
      },
      placeholder: 'placeholder',
    }],
    // the properties below are optional
    analysisDefaults: {
      defaultNewSheetConfiguration: {
        interactiveLayoutConfiguration: {
          freeForm: {
            canvasSizeOptions: {
              screenCanvasSizeOptions: {
                optimizedViewPortWidth: 'optimizedViewPortWidth',
              },
            },
          },
          grid: {
            canvasSizeOptions: {
              screenCanvasSizeOptions: {
                resizeOption: 'resizeOption',
                // the properties below are optional
                optimizedViewPortWidth: 'optimizedViewPortWidth',
              },
            },
          },
        },
        paginatedLayoutConfiguration: {
          sectionBased: {
            canvasSizeOptions: {
              paperCanvasSizeOptions: {
                paperMargin: {
                  bottom: 'bottom',
                  left: 'left',
                  right: 'right',
                  top: 'top',
                },
                paperOrientation: 'paperOrientation',
                paperSize: 'paperSize',
              },
            },
          },
        },
        sheetContentType: 'sheetContentType',
      },
    },
    calculatedFields: [{
      dataSetIdentifier: 'dataSetIdentifier',
      expression: 'expression',
      name: 'name',
    }],
    columnConfigurations: [{
      column: {
        columnName: 'columnName',
        dataSetIdentifier: 'dataSetIdentifier',
      },
      // the properties below are optional
      colorsConfiguration: {
        customColors: [{
          color: 'color',
          // the properties below are optional
          fieldValue: 'fieldValue',
          specialValue: 'specialValue',
        }],
      },
      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',
            },
          },
        },
      },
      role: 'role',
    }],
    filterGroups: [{
      crossDataset: 'crossDataset',
      filterGroupId: 'filterGroupId',
      filters: [{
        categoryFilter: {
          column: {
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          },
          configuration: {
            customFilterConfiguration: {
              matchOperator: 'matchOperator',
              nullOption: 'nullOption',
              // the properties below are optional
              categoryValue: 'categoryValue',
              parameterName: 'parameterName',
              selectAllOptions: 'selectAllOptions',
            },
            customFilterListConfiguration: {
              matchOperator: 'matchOperator',
              nullOption: 'nullOption',
              // the properties below are optional
              categoryValues: ['categoryValues'],
              selectAllOptions: 'selectAllOptions',
            },
            filterListConfiguration: {
              matchOperator: 'matchOperator',
              // the properties below are optional
              categoryValues: ['categoryValues'],
              selectAllOptions: 'selectAllOptions',
            },
          },
          filterId: 'filterId',
        },
        numericEqualityFilter: {
          column: {
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          },
          filterId: 'filterId',
          matchOperator: 'matchOperator',
          nullOption: 'nullOption',
          // the properties below are optional
          aggregationFunction: {
            categoricalAggregationFunction: 'categoricalAggregationFunction',
            dateAggregationFunction: 'dateAggregationFunction',
            numericalAggregationFunction: {
              percentileAggregation: {
                percentileValue: 123,
              },
              simpleNumericalAggregation: 'simpleNumericalAggregation',
            },
          },
          parameterName: 'parameterName',
          selectAllOptions: 'selectAllOptions',
          value: 123,
        },
        numericRangeFilter: {
          column: {
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          },
          filterId: 'filterId',
          nullOption: 'nullOption',
          // the properties below are optional
          aggregationFunction: {
            categoricalAggregationFunction: 'categoricalAggregationFunction',
            dateAggregationFunction: 'dateAggregationFunction',
            numericalAggregationFunction: {
              percentileAggregation: {
                percentileValue: 123,
              },
              simpleNumericalAggregation: 'simpleNumericalAggregation',
            },
          },
          includeMaximum: false,
          includeMinimum: false,
          rangeMaximum: {
            parameter: 'parameter',
            staticValue: 123,
          },
          rangeMinimum: {
            parameter: 'parameter',
            staticValue: 123,
          },
          selectAllOptions: 'selectAllOptions',
        },
        relativeDatesFilter: {
          anchorDateConfiguration: {
            anchorOption: 'anchorOption',
            parameterName: 'parameterName',
          },
          column: {
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          },
          filterId: 'filterId',
          nullOption: 'nullOption',
          relativeDateType: 'relativeDateType',
          timeGranularity: 'timeGranularity',
          // the properties below are optional
          excludePeriodConfiguration: {
            amount: 123,
            granularity: 'granularity',
            // the properties below are optional
            status: 'status',
          },
          minimumGranularity: 'minimumGranularity',
          parameterName: 'parameterName',
          relativeDateValue: 123,
        },
        timeEqualityFilter: {
          column: {
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          },
          filterId: 'filterId',
          // the properties below are optional
          parameterName: 'parameterName',
          timeGranularity: 'timeGranularity',
          value: 'value',
        },
        timeRangeFilter: {
          column: {
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          },
          filterId: 'filterId',
          nullOption: 'nullOption',
          // the properties below are optional
          excludePeriodConfiguration: {
            amount: 123,
            granularity: 'granularity',
            // the properties below are optional
            status: 'status',
          },
          includeMaximum: false,
          includeMinimum: false,
          rangeMaximumValue: {
            parameter: 'parameter',
            rollingDate: {
              expression: 'expression',
              // the properties below are optional
              dataSetIdentifier: 'dataSetIdentifier',
            },
            staticValue: 'staticValue',
          },
          rangeMinimumValue: {
            parameter: 'parameter',
            rollingDate: {
              expression: 'expression',
              // the properties below are optional
              dataSetIdentifier: 'dataSetIdentifier',
            },
            staticValue: 'staticValue',
          },
          timeGranularity: 'timeGranularity',
        },
        topBottomFilter: {
          aggregationSortConfigurations: [{
            aggregationFunction: {
              categoricalAggregationFunction: 'categoricalAggregationFunction',
              dateAggregationFunction: 'dateAggregationFunction',
              numericalAggregationFunction: {
                percentileAggregation: {
                  percentileValue: 123,
                },
                simpleNumericalAggregation: 'simpleNumericalAggregation',
              },
            },
            column: {
              columnName: 'columnName',
              dataSetIdentifier: 'dataSetIdentifier',
            },
            sortDirection: 'sortDirection',
          }],
          column: {
            columnName: 'columnName',
            dataSetIdentifier: 'dataSetIdentifier',
          },
          filterId: 'filterId',
          // the properties below are optional
          limit: 123,
          parameterName: 'parameterName',
          timeGranularity: 'timeGranularity',
        },
      }],
      scopeConfiguration: {
        selectedSheets: {
          sheetVisualScopingConfigurations: [{
            scope: 'scope',
            sheetId: 'sheetId',
            // the properties below are optional
            visualIds: ['visualIds'],
          }],
        },
      },
      // the properties below are optional
      status: 'status',
    }],
    parameterDeclarations: [{
      dateTimeParameterDeclaration: {
        name: 'name',
        // the properties below are optional
        defaultValues: {
          dynamicValue: {
            defaultValueColumn: {
              columnName: 'columnName',
              dataSetIdentifier: 'dataSetIdentifier',
            },
            // the properties below are optional
            groupNameColumn: {
              columnName: 'columnName',
              dataSetIdentifier: 'dataSetIdentifier',
            },
            userNameColumn: {
              columnName: 'columnName',
              dataSetIdentifier: 'dataSetIdentifier',
            },
          },
          rollingDate: {
            expression: 'expression',
            // the properties below are optional
            dataSetIdentifier: 'dataSetIdentifier',
          },
          staticValues: ['staticValues'],
        },
        mappedDataSetParameters: [{
          dataSetIdentifier: 'dataSetIdentifier',
          dataSetParameterName: 'dataSetParameterName',
        }],
        timeGranularity: 'timeGranularity',
        valueWhenUnset: {
          customValue: 'customValue',
          valueWhenUnsetOption: 'valueWhenUnsetOption',
        },
      },
      decimalParameterDeclaration: {
        name: 'name',
        parameterValueType: 'parameterValueType',
        // the properties below are optional
        defaultValues: {
          dynamicValue: {
            defaultValueColumn: {
              columnName: 'columnName',
              dataSetIdentifier: 'dataSetIdentifier',
            },
            // the properties below are optional
            groupNameColumn: {
              columnName: 'columnName',
              dataSetIdentifier: 'dataSetIdentifier',
            },
            userNameColumn: {
              columnName: 'columnName',
              dataSetIdentifier: 'dataSetIdentifier',
            },
          },
          staticValues: [123],
        },
        mappedDataSetParameters: [{
          dataSetIdentifier: 'dataSetIdentifier',
          dataSetParameterName: 'dataSetParameterName',
        }],
        valueWhenUnset: {
          customValue: 123,
          valueWhenUnsetOption: 'valueWhenUnsetOption',
        },
      },
      integerParameterDeclaration: {
        name: 'name',
        parameterValueType: 'parameterValueType',
        // the properties below are optional
        defaultValues: {
          dynamicValue: {
            defaultValueColumn: {
              columnName: 'columnName',
              dataSetIdentifier: 'dataSetIdentifier',
            },
            // the properties below are optional
            groupNameColumn: {
              columnName: 'columnName',
              dataSetIdentifier: 'dataSetIdentifier',
            },
            userNameColumn: {
              columnName: 'columnName',
              dataSetIdentifier: 'dataSetIdentifier',
            },
          },
          staticValues: [123],
        },
        mappedDataSetParameters: [{
          dataSetIdentifier: 'dataSetIdentifier',
          dataSetParameterName: 'dataSetParameterName',
        }],
        valueWhenUnset: {
          customValue: 123,
          valueWhenUnsetOption: 'valueWhenUnsetOption',
        },
      },
      stringParameterDeclaration: {
        name: 'name',
        parameterValueType: 'parameterValueType',
        // the properties below are optional
        defaultValues: {
          dynamicValue: {
            defaultValueColumn: {
              columnName: 'columnName',
              dataSetIdentifier: 'dataSetIdentifier',
            },
            // the properties below are optional
            groupNameColumn: {
              columnName: 'columnName',
              dataSetIdentifier: 'dataSetIdentifier',
            },
            userNameColumn: {
              columnName: 'columnName',
              dataSetIdentifier: 'dataSetIdentifier',
            },
          },
          staticValues: ['staticValues'],
        },
        mappedDataSetParameters: [{
          dataSetIdentifier: 'dataSetIdentifier',
          dataSetParameterName: 'dataSetParameterName',
        }],
        valueWhenUnset: {
          customValue: 'customValue',
          valueWhenUnsetOption: 'valueWhenUnsetOption',
        },
      },
    }],
    sheets: [{
      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',
          },
        },
      }],
    }],
  },
  name: 'name',
  permissions: [{
    actions: ['actions'],
    principal: 'principal',
    // the properties below are optional
    resource: 'resource',
  }],
  sourceEntity: {
    sourceAnalysis: {
      arn: 'arn',
      dataSetReferences: [{
        dataSetArn: 'dataSetArn',
        dataSetPlaceholder: 'dataSetPlaceholder',
      }],
    },
    sourceTemplate: {
      arn: 'arn',
    },
  },
  tags: [{
    key: 'key',
    value: 'value',
  }],
  versionDescription: 'versionDescription',
});
Initializer
new CfnTemplate(scope: Construct, id: string, props: CfnTemplateProps)
Parameters
- scope Construct— - scope in which this resource is defined.
- id string— - scoped id of the resource.
- props Cfn— - resource properties.Template Props 
Create a new AWS::QuickSight::Template.
Construct Props
| Name | Type | Description | 
|---|---|---|
| aws | string | The ID for the AWS account that the group is in. | 
| template | string | An ID for the template that you want to create. | 
| definition? | IResolvable | Template | AWS::QuickSight::Template.Definition. | 
| name? | string | A display name for the template. | 
| permissions? | IResolvable | IResolvable | Resource[] | A list of resource permissions to be set on the template. | 
| source | IResolvable | Template | The entity that you are using as a source when you create the template. | 
| tags? | Cfn[] | Contains a map of the key-value pairs for the resource tag or tags assigned to the resource. | 
| version | string | A description of the current template version being created. | 
awsAccountId
Type:
string
The ID for the AWS account that the group is in.
You use the ID for the AWS account that contains your Amazon QuickSight account.
templateId
Type:
string
An ID for the template that you want to create.
This template is unique per AWS Region ; in each AWS account.
definition?
Type:
IResolvable | Template
(optional)
AWS::QuickSight::Template.Definition.
name?
Type:
string
(optional)
A display name for the template.
permissions?
Type:
IResolvable | IResolvable | Resource[]
(optional)
A list of resource permissions to be set on the template.
sourceEntity?
Type:
IResolvable | Template
(optional)
The entity that you are using as a source when you create the template.
In SourceEntity , you specify the type of object you're using as source: SourceTemplate for a template or SourceAnalysis for an analysis. Both of these require an Amazon Resource Name (ARN). For SourceTemplate , specify the ARN of the source template. For SourceAnalysis , specify the ARN of the source analysis. The SourceTemplate ARN can contain any AWS account and any Amazon QuickSight-supported AWS Region .
Use the DataSetReferences entity within SourceTemplate or SourceAnalysis to list the replacement datasets for the placeholders listed in the original. The schema in each dataset must match its placeholder.
Either a SourceEntity or a Definition must be provided in order for the request to be valid.
tags?
Type:
Cfn[]
(optional)
Contains a map of the key-value pairs for the resource tag or tags assigned to the resource.
versionDescription?
Type:
string
(optional)
A description of the current template version being created.
This API operation creates the first version of the template. Every time UpdateTemplate is called, a new version is created. Each version of the template maintains a description of the version in the VersionDescription field.
Properties
| Name | Type | Description | 
|---|---|---|
| attr | string | The Amazon Resource Name (ARN) of the template. | 
| attr | string | The time this template was created. | 
| attr | string | The time this template was last updated. | 
| attr | string | |
| attr | IResolvable | |
| attr | string | |
| attr | IResolvable | |
| attr | IResolvable | |
| attr | string | |
| attr | string | |
| attr | string | |
| attr | IResolvable | |
| aws | string | The ID for the AWS account that the group is in. | 
| cfn | ICfn | Options for this resource, such as condition, update policy etc. | 
| cfn | { [string]: any } | |
| cfn | string | AWS resource type. | 
| creation | string[] | |
| logical | string | The logical ID for this CloudFormation stack element. | 
| node | Construct | The construct tree node associated with this construct. | 
| ref | string | Return a string that will be resolved to a CloudFormation { Ref }for this element. | 
| stack | Stack | The stack in which this element is defined. | 
| tags | Tag | Contains a map of the key-value pairs for the resource tag or tags assigned to the resource. | 
| template | string | An ID for the template that you want to create. | 
| definition? | IResolvable | Template | AWS::QuickSight::Template.Definition. | 
| name? | string | A display name for the template. | 
| permissions? | IResolvable | IResolvable | Resource[] | A list of resource permissions to be set on the template. | 
| source | IResolvable | Template | The entity that you are using as a source when you create the template. | 
| version | string | A description of the current template version being created. | 
| static CFN_RESOURCE_TYPE_NAME | string | The CloudFormation resource type name for this resource class. | 
attrArn
Type:
string
The Amazon Resource Name (ARN) of the template.
attrCreatedTime
Type:
string
The time this template was created.
attrLastUpdatedTime
Type:
string
The time this template was last updated.
attrVersionCreatedTime
Type:
string
attrVersionDataSetConfigurations
Type:
IResolvable
attrVersionDescription
Type:
string
attrVersionErrors
Type:
IResolvable
attrVersionSheets
Type:
IResolvable
attrVersionSourceEntityArn
Type:
string
attrVersionStatus
Type:
string
attrVersionThemeArn
Type:
string
attrVersionVersionNumber
Type:
IResolvable
awsAccountId
Type:
string
The ID for the AWS account that the group is in.
You use the ID for the AWS account that contains your Amazon QuickSight account.
cfnOptions
Type:
ICfn
Options for this resource, such as condition, update policy etc.
cfnProperties
Type:
{ [string]: any }
cfnResourceType
Type:
string
AWS resource type.
creationStack
Type:
string[]
logicalId
Type:
string
The logical ID for this CloudFormation stack element.
The logical ID of the element is calculated from the path of the resource node in the construct tree.
To override this value, use overrideLogicalId(newLogicalId).
node
Type:
Construct
The construct tree node associated with this construct.
ref
Type:
string
Return a string that will be resolved to a CloudFormation { Ref } for this element.
If, by any chance, the intrinsic reference of a resource is not a string, you could
coerce it to an IResolvable through Lazy.any({ produce: resource.ref }).
stack
Type:
Stack
The stack in which this element is defined.
CfnElements must be defined within a stack scope (directly or indirectly).
tags
Type:
Tag
Contains a map of the key-value pairs for the resource tag or tags assigned to the resource.
templateId
Type:
string
An ID for the template that you want to create.
This template is unique per AWS Region ; in each AWS account.
definition?
Type:
IResolvable | Template
(optional)
AWS::QuickSight::Template.Definition.
name?
Type:
string
(optional)
A display name for the template.
permissions?
Type:
IResolvable | IResolvable | Resource[]
(optional)
A list of resource permissions to be set on the template.
sourceEntity?
Type:
IResolvable | Template
(optional)
The entity that you are using as a source when you create the template.
In SourceEntity , you specify the type of object you're using as source: SourceTemplate for a template or SourceAnalysis for an analysis. Both of these require an Amazon Resource Name (ARN). For SourceTemplate , specify the ARN of the source template. For SourceAnalysis , specify the ARN of the source analysis. The SourceTemplate ARN can contain any AWS account and any Amazon QuickSight-supported AWS Region .
Use the DataSetReferences entity within SourceTemplate or SourceAnalysis to list the replacement datasets for the placeholders listed in the original. The schema in each dataset must match its placeholder.
Either a SourceEntity or a Definition must be provided in order for the request to be valid.
versionDescription?
Type:
string
(optional)
A description of the current template version being created.
This API operation creates the first version of the template. Every time UpdateTemplate is called, a new version is created. Each version of the template maintains a description of the version in the VersionDescription field.
static CFN_RESOURCE_TYPE_NAME
Type:
string
The CloudFormation resource type name for this resource class.
Methods
| Name | Description | 
|---|---|
| add | Syntactic sugar for addOverride(path, undefined). | 
| add | Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. | 
| add | Add a value to the CloudFormation Resource Metadata. | 
| add | Adds an override to the synthesized CloudFormation resource. | 
| add | Adds an override that deletes the value of a property from the resource definition. | 
| add | Adds an override to a resource property. | 
| apply | Sets the deletion policy of the resource based on the removal policy specified. | 
| get | Returns a token for an runtime attribute of this resource. | 
| get | Retrieve a value value from the CloudFormation Resource Metadata. | 
| inspect(inspector) | Examines the CloudFormation resource and discloses attributes. | 
| override | Overrides the auto-generated logical ID with a specific ID. | 
| to | Returns a string representation of this construct. | 
| protected render | 
addDeletionOverride(path)  
public addDeletionOverride(path: string): void
Parameters
- path string— The path of the value to delete.
Syntactic sugar for addOverride(path, undefined).
addDependsOn(target)  
public addDependsOn(target: CfnResource): void
Parameters
- target CfnResource 
Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
This can be used for resources across stacks (or nested stack) boundaries and the dependency will automatically be transferred to the relevant scope.
addMetadata(key, value) 
public addMetadata(key: string, value: any): void
Parameters
- key string
- value any
Add a value to the CloudFormation Resource Metadata.
Note that this is a different set of metadata from CDK node metadata; this metadata ends up in the stack template under the resource, whereas CDK node metadata ends up in the Cloud Assembly.](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
Note that this is a different set of metadata from CDK node metadata; this metadata ends up in the stack template under the resource, whereas CDK node metadata ends up in the Cloud Assembly.)
addOverride(path, value) 
public addOverride(path: string, value: any): void
Parameters
- path string— - The path of the property, you can use dot notation to override values in complex types.
- value any— - The value.
Adds an override to the synthesized CloudFormation resource.
To add a
property override, either use addPropertyOverride or prefix path with
"Properties." (i.e. Properties.TopicName).
If the override is nested, separate each nested level using a dot (.) in the path parameter. If there is an array as part of the nesting, specify the index in the path.
To include a literal . in the property name, prefix with a \. In most
programming languages you will need to write this as "\\." because the
\ itself will need to be escaped.
For example,
cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
would add the overrides
"Properties": {
   "GlobalSecondaryIndexes": [
     {
       "Projection": {
         "NonKeyAttributes": [ "myattribute" ]
         ...
       }
       ...
     },
     {
       "ProjectionType": "INCLUDE"
       ...
     },
   ]
   ...
}
The value argument to addOverride will not be processed or translated
in any way. Pass raw JSON values in here with the correct capitalization
for CloudFormation. If you pass CDK classes or structs, they will be
rendered with lowercased key names, and CloudFormation will reject the
template.
addPropertyDeletionOverride(propertyPath)   
public addPropertyDeletionOverride(propertyPath: string): void
Parameters
- propertyPath string— The path to the property.
Adds an override that deletes the value of a property from the resource definition.
addPropertyOverride(propertyPath, value)  
public addPropertyOverride(propertyPath: string, value: any): void
Parameters
- propertyPath string— The path of the property.
- value any— The value.
Adds an override to a resource property.
Syntactic sugar for addOverride("Properties.<...>", value).
applyRemovalPolicy(policy?, options?)  
public applyRemovalPolicy(policy?: RemovalPolicy, options?: RemovalPolicyOptions): void
Parameters
- policy RemovalPolicy 
- options RemovalPolicy Options 
Sets the deletion policy of the resource based on the removal policy specified.
The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you've removed it from the CDK application or because you've made a change that requires the resource to be replaced.
The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS
account for data recovery and cleanup later (RemovalPolicy.RETAIN).
getAtt(attributeName) 
public getAtt(attributeName: string): Reference
Parameters
- attributeName string— The name of the attribute.
Returns
Returns a token for an runtime attribute of this resource.
Ideally, use generated attribute accessors (e.g. resource.arn), but this can be used for future compatibility
in case there is no generated attribute.
getMetadata(key) 
public getMetadata(key: string): any
Parameters
- key string
Returns
- any
Retrieve a value value from the CloudFormation Resource Metadata.
Note that this is a different set of metadata from CDK node metadata; this metadata ends up in the stack template under the resource, whereas CDK node metadata ends up in the Cloud Assembly.](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
Note that this is a different set of metadata from CDK node metadata; this metadata ends up in the stack template under the resource, whereas CDK node metadata ends up in the Cloud Assembly.)
inspect(inspector)
public inspect(inspector: TreeInspector): void
Parameters
- inspector Tree— - tree inspector to collect and process attributes.Inspector 
Examines the CloudFormation resource and discloses attributes.
overrideLogicalId(newLogicalId)  
public overrideLogicalId(newLogicalId: string): void
Parameters
- newLogicalId string— The new logical ID to use for this stack element.
Overrides the auto-generated logical ID with a specific ID.
toString() 
public toString(): string
Returns
- string
Returns a string representation of this construct.
protected renderProperties(props) 
protected renderProperties(props: { [string]: any }): { [string]: any }
Parameters
- props { [string]: any }
Returns
- { [string]: any }
