{
  "type": "object",
  "properties": {
    "fitContent": {
      "description": "Set fitContent to true to optimize the dynamic page responsiveness on small screens and behavior when the DynamicPageHeader is expanded or collapsed.",
      "type": "boolean",
      "artifactType": "FlexChange",
      "controlType": "sap.f.DynamicPage"
    },
    "header": {
      "$ref": "#/definitions/Header",
      "description": "Header"
    },
    "filterBar": {
      "$ref": "#/definitions/ListReportFilterBar"
    },
    "table": {
      "anyOf": [
        {
          "$ref": "#/definitions/AnalyticalTable"
        },
        {
          "$ref": "#/definitions/GridTable"
        },
        {
          "$ref": "#/definitions/TreeTable"
        },
        {
          "$ref": "#/definitions/ResponsiveTableWithMultiSelect"
        },
        {
          "$ref": "#/definitions/ResponsiveTableWithInlineDelete"
        }
      ]
    },
    "footer": {
      "$ref": "#/definitions/GenericFooter"
    },
    "$schema": {
      "type": "string"
    }
  },
  "additionalProperties": false,
  "definitions": {
    "Header": {
      "description": "Header",
      "isViewNode": true,
      "type": "object",
      "properties": {
        "actions": {
          "$ref": "#/definitions/HeaderActionsStandard"
        }
      },
      "additionalProperties": false
    },
    "HeaderActionsStandard": {
      "type": "object",
      "properties": {
        "Share": {
          "$ref": "#/definitions/Share"
        }
      },
      "additionalProperties": false
    },
    "Share": {
      "description": "Share",
      "isViewNode": true,
      "type": "object",
      "properties": {
        "visible": {
          "description": "Allows you to define if the button is visible on the screen.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Button"
        }
      },
      "additionalProperties": false
    },
    "ListReportFilterBar": {
      "description": "Filter Bar",
      "isViewNode": true,
      "type": "object",
      "properties": {
        "annotationPath": {
          "description": "Specify a SelectionVariant (in order to set default values for the filter bar), a PresentationVariant (in order to define the layout of the table), or a SelectionPresentationVariant (combining both)",
          "type": "string",
          "artifactType": "Manifest",
          "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/49a6ba5b8d6946208322a9f7e16837c2"
        },
        "smartVariantManagement": {
          "description": "Controls whether smart variant management is active. Default is true.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "liveMode": {
          "description": "If liveMode is set, the search will be automatically triggered when a filter value is set.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smartfilterbar.SmartFilterBar"
        },
        "variantManagementHidden": {
          "description": "If you set the flag to true, then standard variant management is not available in the app. The app name is displayed instead.\nIf the flag is false or undefined, the standard variant management is available and can be enabled or disabled.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "subTitleIfVariantMgmtHidden": {
          "description": "You can choose an app-specific title by setting the corresponding value for the subTitleIfVariantMgmtHidden property.",
          "i18nClassification": "TIT: Subtitle if variant management is hidden",
          "type": "string",
          "artifactType": "Manifest"
        },
        "dateSettings": {
          "$ref": "#/definitions/DateRange",
          "description": "Defines the date settings for fields in the smart filter bar.",
          "artifactType": "Manifest"
        },
        "showClearOnFB": {
          "description": "Handles the visibility of the Clear button on the filter bar.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smartfilterbar.SmartFilterBar"
        },
        "showFilterConfiguration": {
          "description": "Handles the visibility of the Filter button on the filter bar.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smartfilterbar.SmartFilterBar"
        },
        "showRestoreOnFB": {
          "description": "Handles the visibility of the Restore button on the filter bar.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smartfilterbar.SmartFilterBar"
        },
        "selectionFields": {
          "$ref": "#/definitions/SelectionFields"
        }
      },
      "additionalProperties": false
    },
    "DateRange": {
      "type": "object",
      "properties": {
        "useDateRange": {
          "description": "If set to true all date fields with filter restriction interval will be treated as DateTimeRange filters.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "selectedValues": {
          "description": "The selectedValues property is a set of standard date range values that you want to include or exclude.",
          "type": "array",
          "items": {
            "enum": [
              "DATE",
              "DATERANGE",
              "DAYS",
              "FROM",
              "LAST2WEEKS",
              "LAST3WEEKS",
              "LAST4WEEKS",
              "LAST5WEEKS",
              "LASTDAYS",
              "LASTMONTH",
              "LASTMONTHS",
              "LASTQUARTER",
              "LASTQUARTERS",
              "LASTWEEK",
              "LASTWEEKS",
              "LASTYEAR",
              "LASTYEARS",
              "MONTH",
              "NEXT",
              "NEXT2WEEKS",
              "NEXT3WEEKS",
              "NEXT4WEEKS",
              "NEXT5WEEKS",
              "NEXTDAYS",
              "NEXTMONTH",
              "NEXTMONTHS",
              "NEXTQUARTER",
              "NEXTQUARTERS",
              "NEXTWEEK",
              "NEXTWEEKS",
              "NEXTYEARS",
              "QUARTER",
              "QUARTER1",
              "QUARTER2",
              "QUARTER3",
              "QUARTER4",
              "SPECIFICMONTH",
              "THISMONTH",
              "THISQUARTER",
              "THISWEEK",
              "TO",
              "TODAY",
              "TODAYFROMTO",
              "TOMORROW",
              "WEEK",
              "YEAR",
              "YEARTODATE",
              "YESTERDAY"
            ],
            "type": "string"
          },
          "artifactType": "Manifest"
        },
        "exclude": {
          "description": "This property is set to True by default. This excludes all values given as selectedValues from the list of date range filters.\nIf the exclude property is set to False, the application shows only selected values in the list of date range filters.",
          "type": "boolean",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false
    },
    "SelectionFields": {
      "description": "Filter Fields",
      "isViewNode": true,
      "type": "object",
      "additionalProperties": {
        "description": "Filter Field",
        "isViewNode": true,
        "anyOf": [
          {
            "type": "object",
            "properties": {}
          },
          {
            "$ref": "#/definitions/SelectionFieldDateSettings"
          }
        ]
      }
    },
    "SelectionFieldDateSettings": {
      "description": "Filter Field for Date Settings",
      "isViewNode": true,
      "type": "object",
      "properties": {
        "selectedValues": {
          "description": "Defines a set of standard date range values that you want to include or exclude.",
          "type": "array",
          "items": {
            "enum": [
              "DATE",
              "DATERANGE",
              "DAYS",
              "FROM",
              "LAST2WEEKS",
              "LAST3WEEKS",
              "LAST4WEEKS",
              "LAST5WEEKS",
              "LASTDAYS",
              "LASTMONTH",
              "LASTMONTHS",
              "LASTQUARTER",
              "LASTQUARTERS",
              "LASTWEEK",
              "LASTWEEKS",
              "LASTYEAR",
              "LASTYEARS",
              "MONTH",
              "NEXT",
              "NEXT2WEEKS",
              "NEXT3WEEKS",
              "NEXT4WEEKS",
              "NEXT5WEEKS",
              "NEXTDAYS",
              "NEXTMONTH",
              "NEXTMONTHS",
              "NEXTQUARTER",
              "NEXTQUARTERS",
              "NEXTWEEK",
              "NEXTWEEKS",
              "NEXTYEARS",
              "QUARTER",
              "QUARTER1",
              "QUARTER2",
              "QUARTER3",
              "QUARTER4",
              "SPECIFICMONTH",
              "THISMONTH",
              "THISQUARTER",
              "THISWEEK",
              "TO",
              "TODAY",
              "TODAYFROMTO",
              "TOMORROW",
              "WEEK",
              "YEAR",
              "YEARTODATE",
              "YESTERDAY"
            ],
            "type": "string"
          },
          "artifactType": "Manifest"
        },
        "exclude": {
          "description": "This property is set to True by default which excludes all values given as selectedValues from the list of date range filters.\nIf this property is set to False, the application shows only selected values in the list of date range filters.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "customDateRangeImplementation": {
          "description": "This property references a JS class, which can be used to modify the date range value list.\nYou can either remove the standard data range values or add custom values.\nThe customDateRangeImplementation setting takes priority followed by filter and selectedValues when excluding date range types.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "filter": {
          "description": "You can use the filter settings to include and exclude specific date range values.",
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "path": {
                "$ref": "#/definitions/FilterPathType",
                "description": "Choose 'key' to define filter values for single values of the date range, or 'category' to filter by a whole subset."
              },
              "contains": {
                "description": "Specifies a filter describing a set of values of the date range type.",
                "type": "string"
              },
              "equals": {
                "description": "Defines a single value of the standard date range type.",
                "type": "array",
                "items": {
                  "enum": [
                    "DATE",
                    "DATERANGE",
                    "DAYS",
                    "FROM",
                    "LAST2WEEKS",
                    "LAST3WEEKS",
                    "LAST4WEEKS",
                    "LAST5WEEKS",
                    "LASTDAYS",
                    "LASTMONTH",
                    "LASTMONTHS",
                    "LASTQUARTER",
                    "LASTQUARTERS",
                    "LASTWEEK",
                    "LASTWEEKS",
                    "LASTYEAR",
                    "LASTYEARS",
                    "MONTH",
                    "NEXT",
                    "NEXT2WEEKS",
                    "NEXT3WEEKS",
                    "NEXT4WEEKS",
                    "NEXT5WEEKS",
                    "NEXTDAYS",
                    "NEXTMONTH",
                    "NEXTMONTHS",
                    "NEXTQUARTER",
                    "NEXTQUARTERS",
                    "NEXTWEEK",
                    "NEXTWEEKS",
                    "NEXTYEARS",
                    "QUARTER",
                    "QUARTER1",
                    "QUARTER2",
                    "QUARTER3",
                    "QUARTER4",
                    "SPECIFICMONTH",
                    "THISMONTH",
                    "THISQUARTER",
                    "THISWEEK",
                    "TO",
                    "TODAY",
                    "TODAYFROMTO",
                    "TOMORROW",
                    "WEEK",
                    "YEAR",
                    "YEARTODATE",
                    "YESTERDAY"
                  ],
                  "type": "string"
                }
              },
              "exclude": {
                "description": "This property is set to True by default which excludes all values given as selectedValues from the list of date range filters.\nIf this property is set to False, the application shows only selected values in the list of date range filters.",
                "type": "boolean"
              }
            },
            "additionalProperties": false,
            "required": [
              "path"
            ]
          },
          "artifactType": "Manifest"
        },
        "defaultValue": {
          "$ref": "#/definitions/DefaultDateRange",
          "description": "You can set a default value for semantic date range.",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false
    },
    "FilterPathType": {
      "enum": [
        "category",
        "key"
      ],
      "type": "string"
    },
    "DefaultDateRange": {
      "type": "object",
      "properties": {
        "operation": {
          "$ref": "#/definitions/DefaultDateRangeValueType",
          "description": "The operation property is the value that will be set for semantic date range.",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "operation"
      ]
    },
    "DefaultDateRangeValueType": {
      "enum": [
        "DATETOYEAR",
        "LAST2WEEKS",
        "LAST3WEEKS",
        "LAST4WEEKS",
        "LAST5WEEKS",
        "LASTMONTH",
        "LASTQUARTER",
        "LASTWEEK",
        "LASTYEAR",
        "QUARTER1",
        "QUARTER2",
        "QUARTER3",
        "QUARTER4",
        "THISMONTH",
        "THISQUARTER",
        "THISWEEK",
        "THISYEAR",
        "TODAY",
        "TOMORROW",
        "YEARTODATE",
        "YESTERDAY"
      ],
      "type": "string"
    },
    "AnalyticalTable": {
      "description": "Table",
      "isViewNode": true,
      "controlProperty": "type",
      "type": "object",
      "properties": {
        "type": {
          "description": "Specifies the type of table.",
          "type": "string",
          "const": "AnalyticalTable",
          "artifactType": "Manifest",
          "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/7f844f1021cd4791b8f7408eac7c1cec"
        },
        "qualifier": {
          "description": "Represents the qualifier of an annotation. ALP looks for a SelectionPresentationVariant with this qualifier. If it's not found, it looks for a PresentationVariant with this qualifier instead.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "defaultContentView": {
          "$ref": "#/definitions/DefaultContentView",
          "description": "Determines the visualization of the content area.",
          "artifactType": "Manifest"
        },
        "defaultFilterMode": {
          "$ref": "#/definitions/DefaultFilterMode",
          "description": "Determines the filter mode that is used.",
          "artifactType": "Manifest"
        },
        "contentTitle": {
          "description": "Lets you define a title for the content area.",
          "i18nClassification": "TIT: Title for the content area",
          "type": "string",
          "artifactType": "Manifest"
        },
        "allFiltersAsInParameters": {
          "description": "Determines if filter fields will be set as in parameter.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "createWithFilters": {
          "$ref": "#/definitions/CreateWithFilters",
          "description": "Adds a create action that uses the filter settings as input.",
          "artifactType": "Manifest"
        },
        "multiSelect": {
          "description": "Single selection in tables is enabled by default. If you want, you can enable multi-select.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "createWithParameterDialog": {
          "$ref": "#/definitions/Fields4Dialog",
          "description": "Enables the creation of objects that have a maximum of eight data fields through a dialog in the list report page.",
          "artifactType": "Manifest"
        },
        "selectAll": {
          "description": "The Select All button is disabled by default. To enable it, set this property to true.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "selectionLimit": {
          "description": "When new data is loaded, the number of lines is restricted to the specified limit. The default value is 200.\nIf selectAll is true, the selection limit is not evaluated.",
          "type": "number",
          "artifactType": "Manifest"
        },
        "showTablePersonalisation": {
          "description": "The showTablePersonalisation attribute can be set to false to hide the table personalization button.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "enableExport": {
          "description": "Enables the export of data from the SmartTable control to another file, for example, a spreadsheet. If exportType is GW, any $expand parameters are removed when sending the request to generate the file.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "useExportToExcel": {
          "description": "useExportToExcel must be set to true if you want to export data to a spreadsheet application, for example Microsoft Excel.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "exportType": {
          "$ref": "#/definitions/smarttable.ExportType",
          "description": "Specifies the type of export to be used in the SmartTable control.",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "copy": {
          "description": "If copy is set to true, the Copy to Clipboard button is shown in the table toolbar.\nBy default, the Copy to Clipboard button is displayed in the table toolbar if the selection mode is configured for the corresponding table.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "quickVariantSelection": {
          "$ref": "#/definitions/QuickVariantSelection",
          "description": "With quickVariantSelection, you can switch to multiple views (single table mode).\nEach view links to a variant you have added to your annotations.",
          "artifactType": "Manifest"
        },
        "quickVariantSelectionX": {
          "$ref": "#/definitions/QuickVariantSelectionX",
          "description": "Switches to multiple views (multi-table mode), based on variants you have defined as annotations.",
          "artifactType": "Manifest"
        },
        "condensedTableLayout": {
          "description": "Sets a condensed table layout for analytical tables, grid tables, and tree tables.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableTableFilterInPageVariant": {
          "description": "If you have enabled harmonized variant management, by default, business users cannot set a filter in the table personalization settings.\nTo enable filtering for business users, you must set the enableTableFilterInPageVariant property to true.",
          "type": "boolean",
          "artifactType": "Manifest",
          "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/3e2b4d212b66481a829ccef1dc0ca16b"
        },
        "dataLoadSettings": {
          "$ref": "#/definitions/DataLoadSettings",
          "description": "Change the default behavior for autoloading of data.",
          "artifactType": "Manifest"
        },
        "toolBar": {
          "$ref": "#/definitions/ToolBar",
          "description": "Tool Bar"
        },
        "columns": {
          "$ref": "#/definitions/GenericColumns",
          "description": "Columns"
        }
      },
      "additionalProperties": false
    },
    "DefaultContentView": {
      "enum": [
        "chart",
        "charttable",
        "table"
      ],
      "type": "string"
    },
    "DefaultFilterMode": {
      "enum": [
        "compact",
        "visual"
      ],
      "type": "string"
    },
    "CreateWithFilters": {
      "type": "object",
      "properties": {
        "strategy": {
          "description": "For the create action to use the filter settings as input, set this property to extension and implement the extension function as mentioned in help.sap.com for SAP S/4HANA, section \"Prefilling Fields When Creating a New Entity Using an Extension Point\".",
          "descriptionSrcURL": "https://ui5.sap.com/sdk#/topic/189e2d8a59f04a2693a4fde7f4a91a65",
          "type": "string",
          "const": "extension",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "strategy"
      ]
    },
    "Fields4Dialog": {
      "type": "object",
      "properties": {
        "fields": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "fields"
      ]
    },
    "smarttable.ExportType": {
      "description": "Provides the type of services available for export in the `SmartTable` control.\n\nThis enum is part of the 'sap/ui/comp/library' module export and must be accessed by the property 'smarttable.ExportType'.",
      "enum": [
        "GW",
        "UI5Client",
        "UI5ClientPDF"
      ],
      "type": "string"
    },
    "QuickVariantSelection": {
      "type": "object",
      "properties": {
        "showCounts": {
          "description": "To show the number of records available, set showCounts to true.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "variants": {
          "description": "The variants section contains a set of entries that point to a SelectionVariant or SelectionPresentationVariant annotation.",
          "type": "object",
          "additionalProperties": {
            "$ref": "#/definitions/QuickVariant"
          },
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "variants"
      ]
    },
    "QuickVariant": {
      "type": "object",
      "properties": {
        "key": {
          "description": "The key property is mandatory. It is used for initializing the corresponding SegmentedButton item.",
          "type": "string"
        },
        "annotationPath": {
          "description": "Use annotationPath to define a specific variant that points to a SelectionVariant or SelectionPresentationVariant annotation.",
          "type": "string"
        }
      },
      "additionalProperties": false,
      "required": [
        "annotationPath",
        "key"
      ]
    },
    "QuickVariantSelectionX": {
      "type": "object",
      "properties": {
        "enableAutoBinding": {
          "description": "When set to true, this enables automatic binding of the table with either the tableBindingPath (if it exists) or the entitySet property.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "variants": {
          "description": "The variants section contains a set of entries that point to a SelectionVariant or SelectionPresentationVariant annotation.",
          "type": "object",
          "additionalProperties": {
            "$ref": "#/definitions/QuickVariantX"
          },
          "artifactType": "Manifest"
        },
        "showCounts": {
          "description": "To show the number of records available, set showCounts to true.",
          "type": "boolean",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "variants"
      ]
    },
    "QuickVariantX": {
      "type": "object",
      "properties": {
        "entitySet": {
          "description": "Represents the entity set that is displayed in this variant.",
          "type": "string"
        },
        "multiSelect": {
          "description": "Single selection in tables is enabled by default. If you want, you can enable multi-select.",
          "type": "boolean"
        },
        "selectAll": {
          "description": "The 'Select All' button is disabled by default. To enable it, set selectAll to true.",
          "type": "boolean"
        },
        "selectionLimit": {
          "description": "When new data is loaded from the back-end system, the number of lines is restricted to the specified limit. The default value is 200.\nIf selectAll is true, the selection limit is not evaluated.",
          "type": "number"
        },
        "type": {
          "$ref": "#/definitions/AnyTableType",
          "description": "Specifies the type of table"
        },
        "showItemNavigationOnChart": {
          "description": "To enable navigation for charts, you have to set the property to \"true\" and maintain an internal navigation target in the manifest.",
          "type": "boolean"
        },
        "inlineDelete": {
          "description": "Used to enable inline deletion in a responsive table of list report and object page",
          "type": "boolean"
        },
        "key": {
          "description": "The key property is mandatory. It is used for initializing the corresponding SegmentedButton item.",
          "type": "string"
        },
        "annotationPath": {
          "description": "Use annotationPath to define a specific variant that points to a SelectionVariant or SelectionPresentationVariant annotation.",
          "type": "string"
        }
      },
      "additionalProperties": false,
      "required": [
        "annotationPath",
        "entitySet",
        "key"
      ]
    },
    "AnyTableType": {
      "enum": [
        "AnalyticalTable",
        "GridTable",
        "ResponsiveTable",
        "TreeTable"
      ],
      "type": "string"
    },
    "DataLoadSettings": {
      "type": "object",
      "properties": {
        "loadDataOnAppLaunch": {
          "$ref": "#/definitions/LoadDataOnAppLaunchSettings",
          "description": "Changes the default behavior for autoloading data.\nFor multi-view scenarios, you can change the enableAutobinding property to False under quickVariantSelectionX instead.",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "loadDataOnAppLaunch"
      ]
    },
    "LoadDataOnAppLaunchSettings": {
      "enum": [
        "always",
        "ifAnyFilterExist",
        "never"
      ],
      "type": "string"
    },
    "ToolBar": {
      "description": "Toolbar",
      "isViewNode": true,
      "type": "object",
      "properties": {
        "actions": {
          "$ref": "#/definitions/Actions"
        }
      },
      "additionalProperties": false,
      "required": [
        "actions"
      ]
    },
    "Actions": {
      "description": "Actions",
      "isViewNode": true,
      "type": "object",
      "additionalProperties": {
        "$ref": "#/definitions/Action"
      }
    },
    "Action": {
      "description": "Action",
      "isViewNode": true,
      "type": "object",
      "properties": {
        "tooltip": {
          "description": "The text of the button tooltip, preferably as an i18n key.",
          "i18nClassification": "ACT: Text for tooltip of button.",
          "type": "string",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Button"
        },
        "icon": {
          "description": "An icon to be displayed as a graphical element within the button.\nThis can be an image or an icon from the Icon Explorer (https://ui5.sap.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
          "type": "string",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Button"
        },
        "activeIcon": {
          "description": "An alternative icon for the active (depressed) state of the button.\nThis can be an image or an icon from the Icon Explorer (https://ui5.sap.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
          "type": "string",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Button"
        },
        "type": {
          "$ref": "#/definitions/ButtonType",
          "description": "Defines the Button type.",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Button"
        }
      },
      "additionalProperties": false
    },
    "ButtonType": {
      "description": "Different predefined button types for the {@link sap.m.Button sap.m.Button}.\n\nThis enum is part of the 'sap/m/library' module export and must be accessed by the property 'ButtonType'.",
      "enum": [
        "Accept",
        "Attention",
        "Back",
        "Critical",
        "Default",
        "Emphasized",
        "Ghost",
        "Negative",
        "Neutral",
        "Reject",
        "Success",
        "Transparent",
        "Unstyled",
        "Up"
      ],
      "type": "string"
    },
    "GenericColumns": {
      "type": "object",
      "additionalProperties": {
        "anyOf": [
          {
            "$ref": "#/definitions/TableColumn"
          },
          {
            "$ref": "#/definitions/TableColumnAction"
          },
          {
            "description": "Custom Columns",
            "isViewNode": true,
            "type": "array",
            "items": {
              "$ref": "#/definitions/TableCustomColumn"
            }
          }
        ]
      }
    },
    "TableColumn": {
      "description": "Column",
      "isViewNode": true,
      "type": "object",
      "properties": {
        "width": {
          "description": "Defines the width of the column.",
          "type": "string",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Column"
        },
        "hAlign": {
          "pattern": "^(Begin|Center|End|Initial|Left|Right)$|^{[A-Za-z0-9{}&$!@#%? _|,<>'()[\\]\\/:=.]+}$",
          "anyOf": [
            {
              "$ref": "#/definitions/TextAlign"
            },
            {
              "type": "string"
            }
          ],
          "description": "Defines the horizontal alignment of the column content.",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Column"
        }
      },
      "additionalProperties": false
    },
    "TextAlign": {
      "description": "Configuration options for text alignments.\n\nThis enum is part of the 'sap/ui/core/library' module export and must be accessed by the property 'TextAlign'.",
      "enum": [
        "Begin",
        "Center",
        "End",
        "Initial",
        "Left",
        "Right"
      ],
      "type": "string"
    },
    "TableColumnAction": {
      "description": "Column Action",
      "isViewNode": true,
      "type": "object",
      "properties": {
        "tooltip": {
          "description": "The text of the button tooltip, preferably as an i18n key.",
          "i18nClassification": "ACT: Text for tooltip of button.",
          "type": "string",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Button"
        },
        "icon": {
          "description": "An icon to be displayed as a graphical element within the button.\nThis can be an image or an icon from the Icon Explorer (https://ui5.sap.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
          "type": "string",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Button"
        },
        "activeIcon": {
          "description": "An alternative icon for the active (depressed) state of the button.\nThis can be an image or an icon from the Icon Explorer (https://ui5.sap.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
          "type": "string",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Button"
        },
        "type": {
          "$ref": "#/definitions/ButtonType",
          "description": "Defines the Button type.",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Button"
        },
        "width": {
          "description": "Defines the width of the column.",
          "type": "string",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Column"
        },
        "hAlign": {
          "pattern": "^(Begin|Center|End|Initial|Left|Right)$|^{[A-Za-z0-9{}&$!@#%? _|,<>'()[\\]\\/:=.]+}$",
          "anyOf": [
            {
              "$ref": "#/definitions/TextAlign"
            },
            {
              "type": "string"
            }
          ],
          "description": "Defines the horizontal alignment of the column content.",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Column"
        }
      },
      "additionalProperties": false
    },
    "TableCustomColumn": {
      "description": "Custom Column",
      "isViewNode": true,
      "type": "object",
      "properties": {
        "id": {
          "description": "If the fragment needs to be reused for multiple tabs, the id property must be set to make the IDs unique.",
          "artifactType": "XMLProperty",
          "type": "string"
        },
        "text": {
          "description": "The label of the custom column, preferably as an i18n key.",
          "i18nClassification": "COL: Custom column header text",
          "artifactType": "XMLProperty",
          "type": "string"
        },
        "columnKey": {
          "description": "The column key.",
          "artifactType": "XMLProperty",
          "type": "string"
        },
        "columnIndex": {
          "description": "The index of the column in the overall collection; if undefined, the custom column will be added at the end of the table.",
          "minimum": 0,
          "hidden": true,
          "artifactType": "XMLProperty",
          "type": "number"
        },
        "leadingProperty": {
          "description": "If the content of your custom column refers to a property (such as{Price}), you need to include a corresponding 'leadingProperty' entry in the column definition.",
          "artifactType": "XMLProperty",
          "type": "string"
        },
        "className": {
          "description": "The UI5 control used for your extension.",
          "artifactType": "Manifest",
          "type": "string",
          "const": "sap.ui.core.Fragment"
        },
        "fragmentName": {
          "description": "The relative path to your fragment with path segments separated by '.'. The first element is the app ID.",
          "artifactType": "Manifest",
          "type": "string"
        },
        "cellsFragmentName": {
          "description": "In case of a responsive table, you additionally need to specify a fragment for the table cells.",
          "artifactType": "Manifest",
          "type": "string"
        },
        "tabKey": {
          "description": "If you use QuickVariantSelectionX, you need to define the extensions per tab. 'tabKey' is the key provided when defining the QuickVariantSelectionX.",
          "hidden": true,
          "artifactType": "Manifest",
          "type": "string"
        },
        "extensionType": {
          "$ref": "#/definitions/TableColumnExtensionTypeV2",
          "description": "Type of custom column view extension."
        }
      },
      "additionalProperties": false,
      "required": [
        "className",
        "columnKey",
        "extensionType",
        "fragmentName"
      ]
    },
    "TableColumnExtensionTypeV2": {
      "enum": [
        "AnalyticalTableColumnsExtension",
        "GridTableColumnsExtension",
        "ResponsiveTableColumnsExtension",
        "TreeTableColumnsExtension"
      ],
      "type": "string"
    },
    "GridTable": {
      "description": "Table",
      "isViewNode": true,
      "controlProperty": "type",
      "type": "object",
      "properties": {
        "type": {
          "description": "Specifies the type of table.",
          "type": "string",
          "const": "GridTable",
          "artifactType": "Manifest",
          "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/7f844f1021cd4791b8f7408eac7c1cec"
        },
        "createWithFilters": {
          "$ref": "#/definitions/CreateWithFilters",
          "description": "Adds a create action that uses the filter settings as input.",
          "artifactType": "Manifest"
        },
        "multiSelect": {
          "description": "Single selection in tables is enabled by default. If you want, you can enable multi-select.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "createWithParameterDialog": {
          "$ref": "#/definitions/Fields4Dialog",
          "description": "Enables the creation of objects that have a maximum of eight data fields through a dialog in the list report page.",
          "artifactType": "Manifest"
        },
        "selectAll": {
          "description": "The Select All button is disabled by default. To enable it, set this property to true.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "selectionLimit": {
          "description": "When new data is loaded, the number of lines is restricted to the specified limit. The default value is 200.\nIf selectAll is true, the selection limit is not evaluated.",
          "type": "number",
          "artifactType": "Manifest"
        },
        "showTablePersonalisation": {
          "description": "The showTablePersonalisation attribute can be set to false to hide the table personalization button.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "enableExport": {
          "description": "Enables the export of data from the SmartTable control to another file, for example, a spreadsheet. If exportType is GW, any $expand parameters are removed when sending the request to generate the file.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "useExportToExcel": {
          "description": "useExportToExcel must be set to true if you want to export data to a spreadsheet application, for example Microsoft Excel.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "exportType": {
          "$ref": "#/definitions/smarttable.ExportType",
          "description": "Specifies the type of export to be used in the SmartTable control.",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "copy": {
          "description": "If copy is set to true, the Copy to Clipboard button is shown in the table toolbar.\nBy default, the Copy to Clipboard button is displayed in the table toolbar if the selection mode is configured for the corresponding table.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "quickVariantSelection": {
          "$ref": "#/definitions/QuickVariantSelection",
          "description": "With quickVariantSelection, you can switch to multiple views (single table mode).\nEach view links to a variant you have added to your annotations.",
          "artifactType": "Manifest"
        },
        "quickVariantSelectionX": {
          "$ref": "#/definitions/QuickVariantSelectionX",
          "description": "Switches to multiple views (multi-table mode), based on variants you have defined as annotations.",
          "artifactType": "Manifest"
        },
        "condensedTableLayout": {
          "description": "Sets a condensed table layout for analytical tables, grid tables, and tree tables.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableTableFilterInPageVariant": {
          "description": "If you have enabled harmonized variant management, by default, business users cannot set a filter in the table personalization settings.\nTo enable filtering for business users, you must set the enableTableFilterInPageVariant property to true.",
          "type": "boolean",
          "artifactType": "Manifest",
          "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/3e2b4d212b66481a829ccef1dc0ca16b"
        },
        "dataLoadSettings": {
          "$ref": "#/definitions/DataLoadSettings",
          "description": "Change the default behavior for autoloading of data.",
          "artifactType": "Manifest"
        },
        "toolBar": {
          "$ref": "#/definitions/ToolBar",
          "description": "Tool Bar"
        },
        "columns": {
          "$ref": "#/definitions/GenericColumns",
          "description": "Columns"
        }
      },
      "additionalProperties": false
    },
    "TreeTable": {
      "description": "Table",
      "isViewNode": true,
      "controlProperty": "type",
      "type": "object",
      "properties": {
        "type": {
          "description": "Specifies the type of table.",
          "type": "string",
          "const": "TreeTable",
          "artifactType": "Manifest",
          "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/7f844f1021cd4791b8f7408eac7c1cec"
        },
        "multiSelect": {
          "description": "Single selection in tables is enabled by default. If you want, you can enable multi-select.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "createWithParameterDialog": {
          "$ref": "#/definitions/Fields4Dialog",
          "description": "Enables the creation of objects that have a maximum of eight data fields through a dialog in the list report page.",
          "artifactType": "Manifest"
        },
        "selectAll": {
          "description": "The Select All button is disabled by default. To enable it, set this property to true.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "selectionLimit": {
          "description": "When new data is loaded, the number of lines is restricted to the specified limit. The default value is 200.\nIf selectAll is true, the selection limit is not evaluated.",
          "type": "number",
          "artifactType": "Manifest"
        },
        "showTablePersonalisation": {
          "description": "The showTablePersonalisation attribute can be set to false to hide the table personalization button.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "enableExport": {
          "description": "Enables the export of data from the SmartTable control to another file, for example, a spreadsheet. If exportType is GW, any $expand parameters are removed when sending the request to generate the file.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "useExportToExcel": {
          "description": "useExportToExcel must be set to true if you want to export data to a spreadsheet application, for example Microsoft Excel.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "exportType": {
          "$ref": "#/definitions/smarttable.ExportType",
          "description": "Specifies the type of export to be used in the SmartTable control.",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "copy": {
          "description": "If copy is set to true, the Copy to Clipboard button is shown in the table toolbar.\nBy default, the Copy to Clipboard button is displayed in the table toolbar if the selection mode is configured for the corresponding table.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "quickVariantSelection": {
          "$ref": "#/definitions/QuickVariantSelection",
          "description": "With quickVariantSelection, you can switch to multiple views (single table mode).\nEach view links to a variant you have added to your annotations.",
          "artifactType": "Manifest"
        },
        "quickVariantSelectionX": {
          "$ref": "#/definitions/QuickVariantSelectionX",
          "description": "Switches to multiple views (multi-table mode), based on variants you have defined as annotations.",
          "artifactType": "Manifest"
        },
        "condensedTableLayout": {
          "description": "Sets a condensed table layout for analytical tables, grid tables, and tree tables.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableTableFilterInPageVariant": {
          "description": "If you have enabled harmonized variant management, by default, business users cannot set a filter in the table personalization settings.\nTo enable filtering for business users, you must set the enableTableFilterInPageVariant property to true.",
          "type": "boolean",
          "artifactType": "Manifest",
          "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/3e2b4d212b66481a829ccef1dc0ca16b"
        },
        "dataLoadSettings": {
          "$ref": "#/definitions/DataLoadSettings",
          "description": "Change the default behavior for autoloading of data.",
          "artifactType": "Manifest"
        },
        "toolBar": {
          "$ref": "#/definitions/ToolBar",
          "description": "Tool Bar"
        },
        "columns": {
          "$ref": "#/definitions/GenericColumns",
          "description": "Columns"
        }
      },
      "additionalProperties": false
    },
    "ResponsiveTableWithMultiSelect": {
      "description": "Table",
      "isViewNode": true,
      "controlProperty": "type",
      "type": "object",
      "properties": {
        "multiSelect": {
          "description": "Single selection in tables is enabled by default. If you want, you can enable multi-select.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "type": {
          "description": "Specifies the type of table.",
          "type": "string",
          "const": "ResponsiveTable",
          "artifactType": "Manifest",
          "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/7f844f1021cd4791b8f7408eac7c1cec"
        },
        "includeItemInSelection": {
          "description": "Set this property to true if you want items to be selectable when they are clicked rather than after the selection control has been set.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Table"
        },
        "popinLayout": {
          "pattern": "^(Block|GridLarge|GridSmall)$|^{[A-Za-z0-9{}&$!@#%? _|,<>'()[\\]\\/:=.]+}$",
          "anyOf": [
            {
              "$ref": "#/definitions/PopinLayout"
            },
            {
              "type": "string"
            }
          ],
          "description": "Defines the layout the table pop-in rows are rendered in.",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Table"
        },
        "createWithFilters": {
          "$ref": "#/definitions/CreateWithFilters",
          "description": "Adds a new create action that uses the filter settings as input.",
          "artifactType": "Manifest"
        },
        "growingThreshold": {
          "description": "Defines the number of items to be requested from the model for each grow. This property can only be used if the growing property is set to true.",
          "type": "number",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Table"
        },
        "multiEdit": {
          "$ref": "#/definitions/MultiEdit",
          "description": "Allows you to edit multiple objects using a dialog.",
          "artifactType": "Manifest"
        },
        "createWithParameterDialog": {
          "$ref": "#/definitions/Fields4Dialog",
          "description": "Enables the creation of objects that have a maximum of eight data fields through a dialog in the list report page.",
          "artifactType": "Manifest"
        },
        "selectAll": {
          "description": "The Select All button is disabled by default. To enable it, set this property to true.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "selectionLimit": {
          "description": "When new data is loaded, the number of lines is restricted to the specified limit. The default value is 200.\nIf selectAll is true, the selection limit is not evaluated.",
          "type": "number",
          "artifactType": "Manifest"
        },
        "showTablePersonalisation": {
          "description": "The showTablePersonalisation attribute can be set to false to hide the table personalization button.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "enableExport": {
          "description": "Enables the export of data from the SmartTable control to another file, for example, a spreadsheet. If exportType is GW, any $expand parameters are removed when sending the request to generate the file.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "useExportToExcel": {
          "description": "useExportToExcel must be set to true if you want to export data to a spreadsheet application, for example Microsoft Excel.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "exportType": {
          "$ref": "#/definitions/smarttable.ExportType",
          "description": "Specifies the type of export to be used in the SmartTable control.",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "copy": {
          "description": "If copy is set to true, the Copy to Clipboard button is shown in the table toolbar.\nBy default, the Copy to Clipboard button is displayed in the table toolbar if the selection mode is configured for the corresponding table.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "quickVariantSelection": {
          "$ref": "#/definitions/QuickVariantSelection",
          "description": "With quickVariantSelection, you can switch to multiple views (single table mode).\nEach view links to a variant you have added to your annotations.",
          "artifactType": "Manifest"
        },
        "quickVariantSelectionX": {
          "$ref": "#/definitions/QuickVariantSelectionX",
          "description": "Switches to multiple views (multi-table mode), based on variants you have defined as annotations.",
          "artifactType": "Manifest"
        },
        "condensedTableLayout": {
          "description": "Sets a condensed table layout for analytical tables, grid tables, and tree tables.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableTableFilterInPageVariant": {
          "description": "If you have enabled harmonized variant management, by default, business users cannot set a filter in the table personalization settings.\nTo enable filtering for business users, you must set the enableTableFilterInPageVariant property to true.",
          "type": "boolean",
          "artifactType": "Manifest",
          "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/3e2b4d212b66481a829ccef1dc0ca16b"
        },
        "dataLoadSettings": {
          "$ref": "#/definitions/DataLoadSettings",
          "description": "Change the default behavior for autoloading of data.",
          "artifactType": "Manifest"
        },
        "toolBar": {
          "$ref": "#/definitions/ToolBar",
          "description": "Tool Bar"
        },
        "columns": {
          "$ref": "#/definitions/GenericColumns",
          "description": "Columns"
        }
      },
      "additionalProperties": false
    },
    "PopinLayout": {
      "description": "Defines the layout options of the table popins.\n\nThis enum is part of the 'sap/m/library' module export and must be accessed by the property 'PopinLayout'.",
      "enum": [
        "Block",
        "GridLarge",
        "GridSmall"
      ],
      "type": "string"
    },
    "MultiEdit": {
      "type": "object",
      "properties": {
        "enabled": {
          "description": "When multiEdit is enabled, by default the dialog displays editable fields corresponding to columns that are currently displayed in the table.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "annotationPath": {
          "description": "Use annotationPath to define a mass edit dialog that points to a FieldGroup annotation with a qualifier.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "ignoredFields": {
          "description": "Determines which fields are hidden in key user adaptation and restricts them from being added to the Mass Edit dialog.",
          "type": "array",
          "items": {
            "type": "string",
            "const": "GENERICPROPERTY"
          },
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false
    },
    "ResponsiveTableWithInlineDelete": {
      "description": "Table",
      "isViewNode": true,
      "controlProperty": "type",
      "type": "object",
      "properties": {
        "inlineDelete": {
          "description": "Used to enable inline deletion in a responsive table.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "type": {
          "description": "Specifies the type of table.",
          "type": "string",
          "const": "ResponsiveTable",
          "artifactType": "Manifest",
          "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/7f844f1021cd4791b8f7408eac7c1cec"
        },
        "includeItemInSelection": {
          "description": "Set this property to true if you want items to be selectable when they are clicked rather than after the selection control has been set.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Table"
        },
        "popinLayout": {
          "pattern": "^(Block|GridLarge|GridSmall)$|^{[A-Za-z0-9{}&$!@#%? _|,<>'()[\\]\\/:=.]+}$",
          "anyOf": [
            {
              "$ref": "#/definitions/PopinLayout"
            },
            {
              "type": "string"
            }
          ],
          "description": "Defines the layout the table pop-in rows are rendered in.",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Table"
        },
        "createWithFilters": {
          "$ref": "#/definitions/CreateWithFilters",
          "description": "Adds a new create action that uses the filter settings as input.",
          "artifactType": "Manifest"
        },
        "growingThreshold": {
          "description": "Defines the number of items to be requested from the model for each grow. This property can only be used if the growing property is set to true.",
          "type": "number",
          "artifactType": "FlexChange",
          "controlType": "sap.m.Table"
        },
        "multiEdit": {
          "$ref": "#/definitions/MultiEdit",
          "description": "Allows you to edit multiple objects using a dialog.",
          "artifactType": "Manifest"
        },
        "createWithParameterDialog": {
          "$ref": "#/definitions/Fields4Dialog",
          "description": "Enables the creation of objects that have a maximum of eight data fields through a dialog in the list report page.",
          "artifactType": "Manifest"
        },
        "selectAll": {
          "description": "The Select All button is disabled by default. To enable it, set this property to true.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "selectionLimit": {
          "description": "When new data is loaded, the number of lines is restricted to the specified limit. The default value is 200.\nIf selectAll is true, the selection limit is not evaluated.",
          "type": "number",
          "artifactType": "Manifest"
        },
        "showTablePersonalisation": {
          "description": "The showTablePersonalisation attribute can be set to false to hide the table personalization button.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "enableExport": {
          "description": "Enables the export of data from the SmartTable control to another file, for example, a spreadsheet. If exportType is GW, any $expand parameters are removed when sending the request to generate the file.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "useExportToExcel": {
          "description": "useExportToExcel must be set to true if you want to export data to a spreadsheet application, for example Microsoft Excel.",
          "type": "boolean",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "exportType": {
          "$ref": "#/definitions/smarttable.ExportType",
          "description": "Specifies the type of export to be used in the SmartTable control.",
          "artifactType": "FlexChange",
          "controlType": "sap.ui.comp.smarttable.SmartTable"
        },
        "copy": {
          "description": "If copy is set to true, the Copy to Clipboard button is shown in the table toolbar.\nBy default, the Copy to Clipboard button is displayed in the table toolbar if the selection mode is configured for the corresponding table.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "quickVariantSelection": {
          "$ref": "#/definitions/QuickVariantSelection",
          "description": "With quickVariantSelection, you can switch to multiple views (single table mode).\nEach view links to a variant you have added to your annotations.",
          "artifactType": "Manifest"
        },
        "quickVariantSelectionX": {
          "$ref": "#/definitions/QuickVariantSelectionX",
          "description": "Switches to multiple views (multi-table mode), based on variants you have defined as annotations.",
          "artifactType": "Manifest"
        },
        "condensedTableLayout": {
          "description": "Sets a condensed table layout for analytical tables, grid tables, and tree tables.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableTableFilterInPageVariant": {
          "description": "If you have enabled harmonized variant management, by default, business users cannot set a filter in the table personalization settings.\nTo enable filtering for business users, you must set the enableTableFilterInPageVariant property to true.",
          "type": "boolean",
          "artifactType": "Manifest",
          "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/3e2b4d212b66481a829ccef1dc0ca16b"
        },
        "dataLoadSettings": {
          "$ref": "#/definitions/DataLoadSettings",
          "description": "Change the default behavior for autoloading of data.",
          "artifactType": "Manifest"
        },
        "toolBar": {
          "$ref": "#/definitions/ToolBar",
          "description": "Tool Bar"
        },
        "columns": {
          "$ref": "#/definitions/GenericColumns",
          "description": "Columns"
        }
      },
      "additionalProperties": false
    },
    "GenericFooter": {
      "description": "Footer",
      "isViewNode": true,
      "type": "object",
      "properties": {
        "actions": {
          "$ref": "#/definitions/Actions"
        }
      },
      "additionalProperties": false
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}