{"data":{"allFile":{"nodes":[{"relativePath":"charts-overview/gallery.json","internal":{"content":"{\n    \"Bar/Column\": {\n        \"Simple Bar\": {\n            \"description\": \"Bar charts represent data using horizontal bars, with the length of each bar proportional to the value being plotted. They are useful for categorical data, and are simple to interpret. They work best where the number of data points is limited.\"\n        },\n        \"Grouped Bar\": {\n            \"description\": \"Grouped bar charts (also known as clustered bar charts) show multiple series with the <a href='../simple-bar/'>bars</a> grouped by category, to allow for easier comparisons across different series.\"\n        },\n        \"Stacked Bar\": {\n            \"description\": \"Stacked bar charts allow part-to-whole comparisons, with series stacked from left to right in the horizontal <a href='../simple-bar/'>bars</a>. They make it easy to compare combined bar lengths.\"\n        },\n        \"100% Stacked Bar\": {\n            \"description\": \"100% stacked bar charts show the relative percentage of multiple series in <a href='../stacked-bar/'>stacked bars</a>, where each stacked bar always totals to 100%.\"\n        },\n        \"Bar With Labels\": {\n            \"description\": \"Using labels in a <a href='../simple-bar/'>bar chart</a> can be useful to highlight the values of each bar.\"\n        },\n        \"Simple Column\": {\n            \"description\": \"Column charts (also known as vertical <a href='../simple-bar/'>bar charts</a>) represent data using vertical columns, with the height of each column proportional to the value being plotted. They can be used to plot both nominal and ordinal data, and are simple to interpret. They work best where the number of data points is limited.\"\n        },\n        \"Grouped Column\": {\n            \"description\": \"Grouped column charts (also known as clustered column charts) present multiple series with the <a href='../simple-column/'>columns</a> grouped by category, to allow for easier comparisons across different series.\"\n        },\n        \"Stacked Column\": {\n            \"description\": \"Stacked column charts allow part-to-whole comparisons, with series stacked on top of each other in the vertical <a href='../simple-column/'>columns</a>.\"\n        },\n        \"100% Stacked Column\": {\n            \"description\": \"100% stacked column charts show the relative percentage of multiple series in <a href='../stacked-column/'>stacked columns</a>, where each stacked column always totals to 100%.\"\n        },\n        \"Column With Negative Values\": {\n            \"description\": \"Column and bar charts can also be used to represent negative values alongside positive ones.\"\n        }\n    },\n    \"Pie/Doughnut\": {\n        \"Simple Pie\": {\n            \"description\": \"Pie charts are used to express a part-to-whole relationship, where all the slices combine to represent 100%. They work best for a small number of categories.\"\n        },\n        \"Simple Doughnut\": {\n            \"description\": \"Doughnut charts are similar to <a href='../simple-pie/'>pie charts</a>, being used to express a part-to-whole relationship, but allow for multiple series to be shown on the same chart for comparison.\"\n        }\n    },\n    \"Line\": {\n        \"Simple Line\": {\n            \"description\": \"Line charts represent each series as a separate line. They are useful to show change or trends over time, and are able to better present more data points than <a href='../simple-bar/'>bar</a> or <a href='../simple-column/'>column</a> charts.\"\n        },\n        \"Line With Gaps\": {\n            \"description\": \"When data is missing in some line series compared to others, these gaps in the data are reflected in the lines.\"\n        }\n    },\n    \"Scatter/Bubble\": {\n        \"Simple Scatter\": {\n            \"description\": \"Scatter charts (also known as scatter plots or XY charts) show the relationship between two variables, placing one variable on each axis, and can be useful for demonstrating any correlation between the variables.\"\n        },\n        \"Simple Bubble\": {\n            \"description\": \"Bubble charts are a specialised type of <a href='../simple-scatter/'>scatter charts</a> that can represent a third variable through the size of each marker (or bubble).\"\n        },\n        \"Bubble With Negative Values\": {\n            \"description\": \"The axes of scatter and bubble charts can be extended to plot positive and negative values.\"\n        },\n        \"Bubble With Categories\": {\n            \"description\": \"The axes of scatter and bubble charts can show categories in addition to values.\"\n        }\n    },\n    \"Area\": {\n        \"Simple Area\": {\n            \"description\": \"Area charts plot series using a line with the area below the line filled. They are useful to show changes over time, and are easy to interpret.\"\n        },\n        \"Stacked Area\": {\n            \"description\": \"Stacked area charts plot multiple <a href='../simple-area/'>area</a> series stacked on top of each other, showing how part-to-whole relationships change over time.\"\n        },\n        \"100% Stacked Area\": {\n            \"description\": \"100% stacked area charts show the relative percentage of multiple series in <a href='../stacked-area/'>stacked areas</a>, where the cumulative area always totals to 100%.\"\n        },\n        \"Area With Negative Values\": {\n            \"description\": \"<a href='../simple-area/'>Area charts</a> can also be used with negative values, with the area between the line and the axis being filled.\"\n        }\n    },\n    \"Histogram\": {\n        \"Simple Histogram\": {\n            \"description\": \"Histograms show your data grouped into bins, revealing underlying trends. A standard histogram plots the population size of each bin against the y-axis. Here we show the distribution of car engine sizes, using the <code>engine-size</code> field from the available data.\"\n        },\n        \"Histogram With Specified Bins\": {\n            \"description\": \"Rather than using the automatically generated fixed-width bins, it is possible to explicitly specify bins. In this case the bins can be different widths. In the example below the data is split into light, medium, and heavy vehicles, and we also demonstrate custom tooltips to give names to these categories.\"\n        },\n        \"XY Histogram With Mean Aggregation\": {\n            \"description\": \"Here we bin the data by car engine size, but plot the average highway MPG in the y-axis, revealing the relationship between these two fields. We also plot the same data as a scatter series to illustrate the aggregation.\"\n        }\n    },\n    \"Treemap\": {\n        \"Market Index Treemap\": {\n            \"description\": \"A treemap of a snapshot of the S&P 500 stock market index.\"\n        }\n    },\n    \"Feature Highlights\": {\n        \"Time Axis With Irregular Intervals\": {\n            \"description\": \"A time axis represents a continuous length of time, and so can be easily used to visualise data with irregular time intervals.\"\n        },\n        \"Log Axis\": {\n            \"description\": \"Log axis charts are great at showing the rate of change over time. If the line is straight, the rate of change is constant.\"\n        },\n        \"Real-Time Data Updates\": {\n            \"description\": \"Charts will re-render immediately when new data is provided. This example demonstrates the performance of a chart with new data introduced every 50 milliseconds.\"\n        },\n        \"Combination of Different Series Types\": {\n            \"description\": \"Different types of data series can be combined together in the same chart. This example shows how a <a href='../simple-line/'>line series</a> might be combined with a <a href='../grouped-column/'>grouped column series</a>.\"\n        },\n        \"Chart Customisation\": {\n            \"description\": \"As well as the series themselves, many other aspects of the charts can be customised and formatted to your liking, including the background, padding, titles, axes, and legend.\"\n        },\n        \"Custom Marker Shapes\": {\n            \"description\": \"The library provides a variety of different marker shapes that can be used. In addition, you can provide your own shapes by extending the <code>Marker</code> class, as shown with the heart-shaped marker below.\"\n        },\n        \"Custom Tooltips\": {\n            \"description\": \"The tooltips used in the charts can be fully customised, using your own HTML and CSS to achieve the look you want.\"\n        },\n        \"Per-Marker Customisation\": {\n            \"description\": \"As well as customising all markers for a particular series, you can also customise each marker in the series individually, based on the datum that the marker represents. For example, the colour of the markers below is set based on the magnitude.\"\n        }\n    }\n}"}},{"relativePath":"column-api/api.json","internal":{"content":"{\n    \"columns\": {\n        \"meta\": {\n            \"displayName\": \"Columns\",\n            \"description\": \"\"\n        },\n        \"getColumn\": {\n            \"description\": \"Returns the column with the given `colKey`, which can either be the `colId` (a string) or the `colDef` (an object).\"\n        },\n        \"getAllColumns\": {\n            \"description\": \"Returns all the columns, regardless of visible or not.\"\n        },\n        \"getAllGridColumns\": {\n            \"description\": \"Returns all the grid columns, same as `getAllColumns()`, except a) it has the order of the columns that are presented in the grid and b) it's after the 'pivot' step, so if pivoting, has the value columns for the pivot.\"\n        }\n    },\n    \"state\": {\n        \"meta\": {\n            \"displayName\": \"State\",\n            \"description\": \"See [Column State](/column-state/)\"\n        },\n        \"getColumnState\": {\n            \"description\": \"Gets the state of the columns. Typically used when saving column state.\"\n        },\n        \"applyColumnState\": {\n            \"description\": \"Applies the state of the columns from a previous state. Returns `false` if one or more columns could not be found.\"\n        },\n        \"resetColumnState\": {\n            \"description\": \"Sets the state back to match the originally provided column definitions.\"\n        },\n        \"getColumnGroupState\": {\n            \"description\": \"Gets the state of the column groups. Typically used when saving column group state.\"\n        },\n        \"setColumnGroupState\": {\n            \"description\": \"Sets the state of the column group state from a previous state.\"\n        },\n        \"resetColumnGroupState\": {\n            \"description\": \"Sets the state back to match the originally provided column definitions.\"\n        }\n    },\n    \"colGroups\": {\n        \"meta\": {\n            \"displayName\": \"Column Groups\",\n            \"description\": \"See [Column Groups](/column-groups/)\"\n        },\n        \"getColumnGroup\": {\n            \"description\": \"Returns the column group with the given name.\",\n            \"more\": {\n                \"name\": \"Column Groups\",\n                \"url\": \"/column-groups/\"\n            }\n        },\n        \"setColumnGroupOpened\": {\n            \"description\": \"Call this if you want to open or close a column group.\"\n        }\n    },\n    \"Sizing\": {\n        \"meta\": {\n            \"displayName\": \"Sizing\",\n            \"description\": \"See [Column Sizing](/column-sizing/)\"\n        },\n        \"setColumnWidth\": {\n            \"description\": \"Sets the column width on a single column. The finished flag gets included in the resulting event and not used internally by the grid. The finished flag is intended for dragging, where a dragging action will produce many `columnWidth` events, so the consumer of events knows when it receives the last event in a stream. The finished parameter is optional, and defaults to `true`.\"\n        },\n        \"setColumnWidths\": {\n            \"description\": \"Sets the column widths on multiple columns. This method offers better performance than calling `setColumnWidth` multiple times. The finished flag gets included in the resulting event and not used internally by the grid. The finished flag is intended for dragging, where a dragging action will produce many `columnWidth` events, so the consumer of events knows when it receives the last event in a stream. The finished parameter is optional, and defaults to `true`.\"\n        },\n        \"sizeColumnsToFit\": {\n            \"description\": \"Gets the grid to size the columns to the specified width in pixels, e.g. `sizeColumnsToFix(900)`. To have the grid fit the columns to the grid's width, use the Grid API `gridApi.sizeColumnsToFit()` instead.\"\n        },\n        \"autoSizeColumn\": {\n            \"description\": \"Auto-sizes a column based on its contents.\"\n        },\n        \"autoSizeColumns\": {\n            \"description\": \"Same as `autoSizeColumn`, but provide a list of column keys.\"\n        },\n        \"autoSizeAllColumns\": {\n            \"description\": \"Calls `autoSizeColumns` on all displayed columns.\"\n        }\n    },\n    \"Moving\": {\n        \"meta\": {\n            \"displayName\": \"Moving\",\n            \"description\": \"See [Column Moving](/column-moving/)\"\n        },\n        \"moveColumn\": {\n            \"description\": \"Moves a column to `toIndex`. The column is first removed, then added at the `toIndex` location, thus index locations will change to the right of the column after the removal.\"\n        },\n        \"moveColumns\": {\n            \"description\": \"Same as `moveColumn` but works on list.\"\n        },\n        \"moveColumnByIndex\": {\n            \"description\": \"Same as `moveColumn` but works on index locations.\"\n        }\n    },\n    \"Pinning\": {\n        \"meta\": {\n            \"displayName\": \"Pinning\",\n            \"description\": \"See [Column Pinning](/column-pinning/)\"\n        },\n        \"isPinning\": {\n            \"description\": \"Returns `true` if pinning left or right, otherwise `false`.\"\n        },\n        \"isPinningLeft\": {\n            \"description\": \"Returns `true` if pinning left, otherwise `false`.\"\n        },\n        \"isPinningRight\": {\n            \"description\": \"Returns `true` if pinning right, otherwise `false`.\"\n        },\n        \"setColumnPinned\": {\n            \"description\": \"Sets the column pinned / unpinned. Key can be the column ID, field, `ColDef` object or `Column` object.\"\n        },\n        \"setColumnsPinned\": {\n            \"description\": \"Same as `setColumnPinned`, but provide a list of column keys.\"\n        }\n    },\n    \"Visibility and Display\": {\n        \"meta\": {\n            \"displayName\": \"Visibility and Display\",\n            \"description\": \"\"\n        },\n        \"setColumnVisible\": {\n            \"description\": \"Sets the visibility of a column. Key can be the column ID or `Column` object.\"\n        },\n        \"setColumnsVisible\": {\n            \"description\": \"Same as `setColumnVisible`, but provide a list of column keys.\"\n        },\n        \"getDisplayNameForColumn\": {\n            \"description\": \"Returns the display name for a column. Useful if you are doing your own header rendering and want the grid to work out if `headerValueGetter` is used, or if you are doing your own column management GUI, to know what to show as the column name.\"\n        },\n        \"getDisplayNameForColumnGroup\": {\n            \"description\": \"Returns the display name for a column group (when grouping columns).\"\n        },\n        \"getDisplayedColAfter\": {\n            \"description\": \"Returns the column to the right of the provided column, taking into consideration open / closed column groups and visible columns. This is useful if you need to know what column is beside yours e.g. if implementing your own cell navigation.\"\n        },\n        \"getDisplayedColBefore\": {\n            \"description\": \"Same as `getVisibleColAfter` except gives column to the left.\"\n        },\n        \"getAllDisplayedVirtualColumns\": {\n            \"description\": \"Same as `getAllGridColumns()`, except only returns rendered columns, i.e. columns that are not within the viewport and therefore not rendered, due to column virtualisation, are not displayed.\"\n        },\n        \"getDisplayedCenterColumns<br />getDisplayedLeftColumns<br />getDisplayedRightColumns<br />getAllDisplayedColumns\": {\n            \"description\": \"Returns all columns currently displayed (e.g. are visible and if in a group, the group is showing the columns) for the pinned left, centre and pinned right portions of the grid.<br/> Returns: `Column[]`\"\n        },\n        \"getLeftDisplayedColumnGroups<br />getCenterDisplayedColumnGroups<br />getRightDisplayedColumnGroups<br />getAllDisplayedColumnGroups\": {\n            \"description\": \"Returns all 'root' column headers. If you are not grouping columns, these return the columns. If you are grouping, these return the top level groups - you can navigate down through each one to get the other lower level headers and finally the columns at the bottom.<br/> Returns: `ColumnGroupChild[]`\"\n        }\n    },\n    \"valueColumns\": {\n        \"meta\": {\n            \"displayName\": \"Value Columns\",\n            \"description\": \"Methods for management of value column aggregates (for aggregating when grouping or pivoting).\"\n        },\n        \"getValueColumns\": {\n            \"description\": \"Get value columns.\"\n        },\n        \"addValueColumn\": {\n            \"description\": \"Add a value column.\"\n        },\n        \"addValueColumns\": {\n            \"description\": \"Same as `addValueColumn` but provide a list.\"\n        },\n        \"removeValueColumn\": {\n            \"description\": \"Remove a value column.\"\n        },\n        \"removeValueColumns\": {\n            \"description\": \"Same as `removeValueColumns` but provide a list.\"\n        },\n        \"setColumnAggFunc\": {\n            \"description\": \"Sets the agg function for a column. `aggFunc` can be one of <code>'min' | 'max' | 'sum'</>.\"\n        }\n    },\n    \"rowGroups\": {\n        \"meta\": {\n            \"displayName\": \"Row Grouping\",\n            \"description\": \"See [Row Grouping](/grouping/)\"\n        },\n        \"getRowGroupColumns\": {\n            \"description\": \"Get row group columns.\"\n        },\n        \"setRowGroupColumns\": {\n            \"description\": \"Set the row group columns.\"\n        },\n        \"addRowGroupColumn\": {\n            \"description\": \"Add a column to the row groups.\"\n        },\n        \"addRowGroupColumns\": {\n            \"description\": \"Same as `addRowGroupColumn` but provide a list of columns\"\n        },\n        \"removeRowGroupColumn\": {\n            \"description\": \"Remove a column from the row groups.\"\n        },\n        \"removeRowGroupColumns\": {\n            \"description\": \"Same as `removeRowGroupColumn` but provide a list of columns.\"\n        },\n        \"moveRowGroupColumn\": {\n            \"description\": \"Move the column to a new position in the row grouping order.\"\n        }\n    },\n    \"Pivoting\": {\n        \"meta\": {\n            \"displayName\": \"Pivoting\",\n            \"description\": \"See [Pivoting](/pivoting/)\"\n        },\n        \"isPivotMode\": {\n            \"description\": \"Get the pivot mode.\"\n        },\n        \"setPivotMode\": {\n            \"description\": \"Set the pivot mode.\"\n        },\n        \"getPivotColumns\": {\n            \"description\": \"Get the pivot columns.\"\n        },\n        \"setPivotColumns\": {\n            \"description\": \"Set the pivot columns.\"\n        },\n        \"addPivotColumn\": {\n            \"description\": \"Add a pivot column.\"\n        },\n        \"addPivotColumns\": {\n            \"description\": \"Same as `addPivotColumn` but provide a list of columns.\"\n        },\n        \"removePivotColumn\": {\n            \"description\": \"Remove a pivot column.\"\n        },\n        \"removePivotColumns\": {\n            \"description\": \"Same as `removePivotColumn` but provide a list of columns.\"\n        },\n        \"getSecondaryPivotColumn\": {\n            \"description\": \"Returns the pivot column for the given `pivotKeys` and `valueColId`. Useful to then call operations on the pivot column.\"\n        },\n        \"getPrimaryColumns\": {\n            \"description\": \"Returns the grid's primary columns.\",\n            \"more\": {\n                \"name\": \"Primary vs Secondary Columns\",\n                \"url\": \"/pivoting/#primary-vs-secondary-columns\"\n            }\n        },\n        \"getSecondaryColumns\": {\n            \"description\": \"Returns the grid's secondary columns.\"\n        }\n    }\n}"}},{"relativePath":"column-api/column-api.AUTO.json","internal":{"content":"{\n  \"sizeColumnsToFit\": {\n    \"type\": { \"arguments\": { \"gridWidth\": \"number\" }, \"returnType\": \"void\" }\n  },\n  \"setColumnGroupOpened\": {\n    \"type\": {\n      \"arguments\": {\n        \"group\": \"OriginalColumnGroup | string\",\n        \"newValue\": \"boolean\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"getColumnGroup\": {\n    \"type\": {\n      \"arguments\": { \"name\": \"string\", \"instanceId\": \"number\" },\n      \"returnType\": \"ColumnGroup | null\"\n    }\n  },\n  \"getOriginalColumnGroup\": {\n    \"type\": {\n      \"arguments\": { \"name\": \"string\" },\n      \"returnType\": \"OriginalColumnGroup | null\"\n    }\n  },\n  \"getDisplayNameForColumn\": {\n    \"type\": {\n      \"arguments\": { \"column\": \"Column\", \"location\": \"string | null\" },\n      \"returnType\": \"string\"\n    }\n  },\n  \"getDisplayNameForColumnGroup\": {\n    \"type\": {\n      \"arguments\": { \"columnGroup\": \"ColumnGroup\", \"location\": \"string\" },\n      \"returnType\": \"string\"\n    }\n  },\n  \"getColumn\": {\n    \"type\": { \"arguments\": { \"key\": \"any\" }, \"returnType\": \"Column | null\" }\n  },\n  \"applyColumnState\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"ApplyColumnStateParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"getColumnState\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"ColumnState[]\" }\n  },\n  \"resetColumnState\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"getColumnGroupState\": {\n    \"type\": {\n      \"arguments\": {},\n      \"returnType\": \"{groupId: string, open: boolean}[]\"\n    }\n  },\n  \"setColumnGroupState\": {\n    \"type\": {\n      \"arguments\": { \"stateItems\": \"({ groupId: string; open: boolean; })[]\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"resetColumnGroupState\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"isPinning\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isPinningLeft\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isPinningRight\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"getDisplayedColAfter\": {\n    \"type\": { \"arguments\": { \"col\": \"Column\" }, \"returnType\": \"Column | null\" }\n  },\n  \"getDisplayedColBefore\": {\n    \"type\": { \"arguments\": { \"col\": \"Column\" }, \"returnType\": \"Column | null\" }\n  },\n  \"setColumnVisible\": {\n    \"type\": {\n      \"arguments\": { \"key\": \"string | Column\", \"visible\": \"boolean\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setColumnsVisible\": {\n    \"type\": {\n      \"arguments\": { \"keys\": \"(string | Column)[]\", \"visible\": \"boolean\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setColumnPinned\": {\n    \"type\": {\n      \"arguments\": { \"key\": \"string | Column\", \"pinned\": \"string\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setColumnsPinned\": {\n    \"type\": {\n      \"arguments\": { \"keys\": \"(string | Column)[]\", \"pinned\": \"string\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"getAllColumns\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"Column[] | null\" }\n  },\n  \"getAllGridColumns\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"Column[]\" }\n  },\n  \"getDisplayedLeftColumns\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"Column[]\" }\n  },\n  \"getDisplayedCenterColumns\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"Column[]\" }\n  },\n  \"getDisplayedRightColumns\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"Column[]\" }\n  },\n  \"getAllDisplayedColumns\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"Column[]\" }\n  },\n  \"getAllDisplayedVirtualColumns\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"Column[]\" }\n  },\n  \"moveColumn\": {\n    \"type\": {\n      \"arguments\": { \"key\": \"string | Column\", \"toIndex\": \"number\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"moveColumnByIndex\": {\n    \"type\": {\n      \"arguments\": { \"fromIndex\": \"number\", \"toIndex\": \"number\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"moveColumns\": {\n    \"type\": {\n      \"arguments\": {\n        \"columnsToMoveKeys\": \"(string | Column)[]\",\n        \"toIndex\": \"number\"\n      }\n    }\n  },\n  \"moveRowGroupColumn\": {\n    \"type\": {\n      \"arguments\": { \"fromIndex\": \"number\", \"toIndex\": \"number\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setColumnAggFunc\": {\n    \"type\": {\n      \"arguments\": { \"key\": \"string | Column\", \"aggFunc\": \"string\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setColumnWidth\": {\n    \"type\": {\n      \"arguments\": {\n        \"key\": \"string | Column\",\n        \"newWidth\": \"number\",\n        \"finished\": \"boolean = true\",\n        \"source\": \"ColumnEventType\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setColumnWidths\": {\n    \"type\": {\n      \"arguments\": {\n        \"columnWidths\": \"{ key: string | Column; newWidth: number; }[]\",\n        \"finished\": \"boolean = true\",\n        \"source\": \"ColumnEventType\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setPivotMode\": {\n    \"type\": { \"arguments\": { \"pivotMode\": \"boolean\" }, \"returnType\": \"void\" }\n  },\n  \"isPivotMode\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"getSecondaryPivotColumn\": {\n    \"type\": {\n      \"arguments\": {\n        \"pivotKeys\": \"string[]\",\n        \"valueColKey\": \"string | Column\"\n      },\n      \"returnType\": \"Column | null\"\n    }\n  },\n  \"setValueColumns\": {\n    \"type\": {\n      \"arguments\": { \"colKeys\": \"(string | Column)[]\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"getValueColumns\": { \"type\": { \"arguments\": {}, \"returnType\": \"Column[]\" } },\n  \"removeValueColumn\": {\n    \"type\": {\n      \"arguments\": { \"colKey\": \"(string | Column)\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"removeValueColumns\": {\n    \"type\": {\n      \"arguments\": { \"colKeys\": \"(string | Column)[]\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"addValueColumn\": {\n    \"type\": {\n      \"arguments\": { \"colKey\": \"(string | Column)\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"addValueColumns\": {\n    \"type\": {\n      \"arguments\": { \"colKeys\": \"(string | Column)[]\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setRowGroupColumns\": {\n    \"type\": {\n      \"arguments\": { \"colKeys\": \"(string | Column)[]\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"removeRowGroupColumn\": {\n    \"type\": {\n      \"arguments\": { \"colKey\": \"string | Column\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"removeRowGroupColumns\": {\n    \"type\": {\n      \"arguments\": { \"colKeys\": \"(string | Column)[]\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"addRowGroupColumn\": {\n    \"type\": {\n      \"arguments\": { \"colKey\": \"string | Column\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"addRowGroupColumns\": {\n    \"type\": {\n      \"arguments\": { \"colKeys\": \"(string | Column)[]\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"getRowGroupColumns\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"Column[]\" }\n  },\n  \"setPivotColumns\": {\n    \"type\": {\n      \"arguments\": { \"colKeys\": \"(string | Column)[]\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"removePivotColumn\": {\n    \"type\": {\n      \"arguments\": { \"colKey\": \"string | Column\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"removePivotColumns\": {\n    \"type\": {\n      \"arguments\": { \"colKeys\": \"(string | Column)[]\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"addPivotColumn\": {\n    \"type\": {\n      \"arguments\": { \"colKey\": \"string | Column\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"addPivotColumns\": {\n    \"type\": {\n      \"arguments\": { \"colKeys\": \"(string | Column)[]\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"getPivotColumns\": { \"type\": { \"arguments\": {}, \"returnType\": \"Column[]\" } },\n  \"getLeftDisplayedColumnGroups\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"ColumnGroupChild[]\" }\n  },\n  \"getCenterDisplayedColumnGroups\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"ColumnGroupChild[]\" }\n  },\n  \"getRightDisplayedColumnGroups\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"ColumnGroupChild[]\" }\n  },\n  \"getAllDisplayedColumnGroups\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"ColumnGroupChild[] | null\" }\n  },\n  \"autoSizeColumn\": {\n    \"type\": {\n      \"arguments\": { \"key\": \"string | Column\", \"skipHeader\": \"boolean\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"autoSizeColumns\": {\n    \"type\": {\n      \"arguments\": { \"keys\": \"(string | Column)[]\", \"skipHeader\": \"boolean\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"autoSizeAllColumns\": {\n    \"type\": { \"arguments\": { \"skipHeader\": \"boolean\" }, \"returnType\": \"void\" }\n  },\n  \"setSecondaryColumns\": {\n    \"type\": {\n      \"arguments\": { \"colDefs\": \"(ColDef | ColGroupDef)[]\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"getSecondaryColumns\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"Column[] | null\" }\n  },\n  \"getPrimaryColumns\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"Column[] | null\" }\n  },\n  \"columnGroupOpened\": {\n    \"type\": {\n      \"arguments\": {\n        \"group\": \"OriginalColumnGroup | string\",\n        \"newValue\": \"boolean\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"hideColumns\": {\n    \"type\": {\n      \"arguments\": { \"colIds\": \"any\", \"hide\": \"any\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"hideColumn\": {\n    \"type\": {\n      \"arguments\": { \"colId\": \"any\", \"hide\": \"any\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setState\": {\n    \"type\": {\n      \"arguments\": { \"columnState\": \"ColumnState[]\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"getState\": { \"type\": { \"arguments\": {}, \"returnType\": \"ColumnState[]\" } },\n  \"resetState\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"getAggregationColumns\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"Column[]\" }\n  },\n  \"removeAggregationColumn\": {\n    \"type\": {\n      \"arguments\": { \"colKey\": \"(string | Column)\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"removeAggregationColumns\": {\n    \"type\": {\n      \"arguments\": { \"colKeys\": \"(string | Column)[]\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"addAggregationColumn\": {\n    \"type\": {\n      \"arguments\": { \"colKey\": \"(string | Column)\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"addAggregationColumns\": {\n    \"type\": {\n      \"arguments\": { \"colKeys\": \"(string | Column)[]\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setColumnAggFunction\": {\n    \"type\": {\n      \"arguments\": { \"column\": \"Column\", \"aggFunc\": \"string\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"getDisplayNameForCol\": {\n    \"type\": { \"arguments\": { \"column\": \"any\" }, \"returnType\": \"string\" }\n  },\n  \"setColumnState\": {\n    \"type\": {\n      \"arguments\": { \"columnState\": \"ColumnState[]\" },\n      \"returnType\": \"boolean\"\n    }\n  }\n}\n"}},{"relativePath":"column-object/column.AUTO.json","internal":{"content":"{\n  \"EVENT_MOVING_CHANGED\": { \"type\": {} },\n  \"EVENT_LEFT_CHANGED\": { \"type\": {} },\n  \"EVENT_WIDTH_CHANGED\": { \"type\": {} },\n  \"EVENT_LAST_LEFT_PINNED_CHANGED\": { \"type\": {} },\n  \"EVENT_FIRST_RIGHT_PINNED_CHANGED\": { \"type\": {} },\n  \"EVENT_VISIBLE_CHANGED\": { \"type\": {} },\n  \"EVENT_FILTER_CHANGED\": { \"type\": {} },\n  \"EVENT_FILTER_ACTIVE_CHANGED\": { \"type\": {} },\n  \"EVENT_SORT_CHANGED\": { \"type\": {} },\n  \"EVENT_MENU_VISIBLE_CHANGED\": { \"type\": {} },\n  \"EVENT_ROW_GROUP_CHANGED\": { \"type\": {} },\n  \"EVENT_PIVOT_CHANGED\": { \"type\": {} },\n  \"EVENT_VALUE_CHANGED\": { \"type\": {} },\n  \"getInstanceId\": { \"type\": { \"arguments\": {}, \"returnType\": \"number\" } },\n  \"setColDef\": {\n    \"type\": {\n      \"arguments\": {\n        \"colDef\": \"ColDef\",\n        \"userProvidedColDef\": \"ColDef | null\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"getUserProvidedColDef\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"ColDef | null\" }\n  },\n  \"setParent\": {\n    \"type\": { \"arguments\": { \"parent\": \"ColumnGroup\" }, \"returnType\": \"void\" }\n  },\n  \"getParent\": { \"type\": { \"arguments\": {}, \"returnType\": \"ColumnGroup\" } },\n  \"setOriginalParent\": {\n    \"type\": {\n      \"arguments\": { \"originalParent\": \"OriginalColumnGroup | null\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"getOriginalParent\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"OriginalColumnGroup | null\" }\n  },\n  \"resetActualWidth\": {\n    \"type\": {\n      \"arguments\": { \"source\": \"ColumnEventType = 'api'\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"isEmptyGroup\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isRowGroupDisplayed\": {\n    \"type\": { \"arguments\": { \"colId\": \"string\" }, \"returnType\": \"boolean\" }\n  },\n  \"getUniqueId\": { \"type\": { \"arguments\": {}, \"returnType\": \"string\" } },\n  \"isPrimary\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isFilterAllowed\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isFieldContainsDots\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" }\n  },\n  \"isTooltipFieldContainsDots\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" }\n  },\n  \"addEventListener\": {\n    \"type\": {\n      \"arguments\": { \"eventType\": \"string\", \"listener\": \"Function\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"removeEventListener\": {\n    \"type\": {\n      \"arguments\": { \"eventType\": \"string\", \"listener\": \"Function\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"isSuppressNavigable\": {\n    \"type\": { \"arguments\": { \"rowNode\": \"RowNode\" }, \"returnType\": \"boolean\" }\n  },\n  \"isCellEditable\": {\n    \"type\": { \"arguments\": { \"rowNode\": \"RowNode\" }, \"returnType\": \"boolean\" }\n  },\n  \"isRowDrag\": {\n    \"type\": { \"arguments\": { \"rowNode\": \"RowNode\" }, \"returnType\": \"boolean\" }\n  },\n  \"isDndSource\": {\n    \"type\": { \"arguments\": { \"rowNode\": \"RowNode\" }, \"returnType\": \"boolean\" }\n  },\n  \"isCellCheckboxSelection\": {\n    \"type\": { \"arguments\": { \"rowNode\": \"RowNode\" }, \"returnType\": \"boolean\" }\n  },\n  \"isSuppressPaste\": {\n    \"type\": { \"arguments\": { \"rowNode\": \"RowNode\" }, \"returnType\": \"boolean\" }\n  },\n  \"isResizable\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"setMoving\": {\n    \"type\": {\n      \"arguments\": {\n        \"moving\": \"boolean\",\n        \"source\": \"ColumnEventType = \\\"api\\\"\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"isMoving\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"getSort\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"string | null | undefined\" }\n  },\n  \"setSort\": {\n    \"type\": {\n      \"arguments\": {\n        \"sort\": \"string | null | undefined\",\n        \"source\": \"ColumnEventType = \\\"api\\\"\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setMenuVisible\": {\n    \"type\": {\n      \"arguments\": {\n        \"visible\": \"boolean\",\n        \"source\": \"ColumnEventType = \\\"api\\\"\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"isMenuVisible\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isSortAscending\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isSortDescending\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isSortNone\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isSorting\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"getSortIndex\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"number | null | undefined\" }\n  },\n  \"setSortIndex\": {\n    \"type\": {\n      \"arguments\": { \"sortOrder\": \"number | null\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setAggFunc\": {\n    \"type\": {\n      \"arguments\": { \"aggFunc\": \"string | IAggFunc | null | undefined\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"getAggFunc\": {\n    \"type\": {\n      \"arguments\": {},\n      \"returnType\": \"string | IAggFunc | null | undefined\"\n    }\n  },\n  \"getLeft\": { \"type\": { \"arguments\": {}, \"returnType\": \"number | null\" } },\n  \"getOldLeft\": { \"type\": { \"arguments\": {}, \"returnType\": \"number | null\" } },\n  \"getRight\": { \"type\": { \"arguments\": {}, \"returnType\": \"number\" } },\n  \"setLeft\": {\n    \"type\": {\n      \"arguments\": {\n        \"left\": \"number | null\",\n        \"source\": \"ColumnEventType = \\\"api\\\"\"\n      }\n    }\n  },\n  \"isFilterActive\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"setFilterActive\": {\n    \"type\": {\n      \"arguments\": {\n        \"active\": \"boolean\",\n        \"source\": \"ColumnEventType = \\\"api\\\"\",\n        \"additionalEventAttributes\": \"any\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setPinned\": {\n    \"type\": {\n      \"arguments\": { \"pinned\": \"string | boolean | null | undefined\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setFirstRightPinned\": {\n    \"type\": {\n      \"arguments\": {\n        \"firstRightPinned\": \"boolean\",\n        \"source\": \"ColumnEventType = \\\"api\\\"\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setLastLeftPinned\": {\n    \"type\": {\n      \"arguments\": {\n        \"lastLeftPinned\": \"boolean\",\n        \"source\": \"ColumnEventType = \\\"api\\\"\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"isFirstRightPinned\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" }\n  },\n  \"isLastLeftPinned\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isPinned\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isPinnedLeft\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isPinnedRight\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"getPinned\": {\n    \"type\": {\n      \"arguments\": {},\n      \"returnType\": \"'left' | 'right' | null | undefined\"\n    }\n  },\n  \"setVisible\": {\n    \"type\": {\n      \"arguments\": {\n        \"visible\": \"boolean\",\n        \"source\": \"ColumnEventType = \\\"api\\\"\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"isVisible\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"getColDef\": { \"type\": { \"arguments\": {}, \"returnType\": \"ColDef\" } },\n  \"getColumnGroupShow\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"string | undefined\" }\n  },\n  \"getColId\": { \"type\": { \"arguments\": {}, \"returnType\": \"string\" } },\n  \"getId\": { \"type\": { \"arguments\": {}, \"returnType\": \"string\" } },\n  \"getDefinition\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"AbstractColDef\" }\n  },\n  \"getActualWidth\": { \"type\": { \"arguments\": {}, \"returnType\": \"number\" } },\n  \"getColSpan\": {\n    \"type\": { \"arguments\": { \"rowNode\": \"RowNode\" }, \"returnType\": \"number\" }\n  },\n  \"getRowSpan\": {\n    \"type\": { \"arguments\": { \"rowNode\": \"RowNode\" }, \"returnType\": \"number\" }\n  },\n  \"setActualWidth\": {\n    \"type\": {\n      \"arguments\": {\n        \"actualWidth\": \"number\",\n        \"source\": \"ColumnEventType = \\\"api\\\"\",\n        \"silent\": \"boolean = false\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"fireColumnWidthChangedEvent\": {\n    \"type\": {\n      \"arguments\": { \"source\": \"ColumnEventType\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"isGreaterThanMax\": {\n    \"type\": { \"arguments\": { \"width\": \"number\" }, \"returnType\": \"boolean\" }\n  },\n  \"getMinWidth\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"number | null | undefined\" }\n  },\n  \"getMaxWidth\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"number | null | undefined\" }\n  },\n  \"getFlex\": { \"type\": { \"arguments\": {}, \"returnType\": \"number\" } },\n  \"setFlex\": { \"type\": { \"arguments\": { \"flex\": \"number | null\" } } },\n  \"setMinimum\": {\n    \"type\": {\n      \"arguments\": { \"source\": \"ColumnEventType = \\\"api\\\"\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setRowGroupActive\": {\n    \"type\": {\n      \"arguments\": {\n        \"rowGroup\": \"boolean\",\n        \"source\": \"ColumnEventType = \\\"api\\\"\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"isRowGroupActive\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"setPivotActive\": {\n    \"type\": {\n      \"arguments\": {\n        \"pivot\": \"boolean\",\n        \"source\": \"ColumnEventType = \\\"api\\\"\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"isPivotActive\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isAnyFunctionActive\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" }\n  },\n  \"isAnyFunctionAllowed\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" }\n  },\n  \"setValueActive\": {\n    \"type\": {\n      \"arguments\": {\n        \"value\": \"boolean\",\n        \"source\": \"ColumnEventType = \\\"api\\\"\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"isValueActive\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isAllowPivot\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isAllowValue\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isAllowRowGroup\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"getMenuTabs\": {\n    \"type\": {\n      \"arguments\": { \"defaultValues\": \"string[]\" },\n      \"returnType\": \"string[]\"\n    }\n  },\n  \"isLockPosition\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isLockVisible\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isLockPinned\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } }\n}\n"}},{"relativePath":"column-object/reference.json","internal":{"content":"{\n    \"methods\": {\n        \"meta\": {\n            \"displayName\": \"Column Methods\"\n        },\n        \"getColId\": {\n            \"description\": \"Returns the unique ID for the column. </br> Equivalent: `getId`, `getUniqueId`\"\n        },\n        \"getColDef\": {\n            \"description\": \"Returns the column definition for this column. The column definition will be the result of merging the application provided column definition with any provided defaults (e.g. <code>defaultColDef</code> grid option, or column types. <br/> Equivalent: `getDefinition`\"\n        },\n        \"getUserProvidedColDef\": {\n            \"description\": \"Returns the column definition provided by the application. This may not be correct, as items can be superseded by default column options. However it's useful for comparison, eg to know which application column definition matches that column.\"\n        },\n        \"getParent\": {\n            \"description\": \"Returns the parent column group, if column grouping is active.\"\n        },\n        \"isFilterAllowed\": {\n            \"description\": \"Returns <code>true</code> if column filtering is allowed.\"\n        },\n        \"isFilterActive\": {\n            \"description\": \"Returns <code>true</code> if filter is active on the column.\"\n        },\n        \"getSort\": {\n            \"description\": \"If sorting is active, returns the sort direction e.g. <code>'asc'</code> or <code>'desc'</code>.\"\n        },\n        \"getAggFunc\": {\n            \"description\": \"If aggregation is set for the column, returns the aggregation function.\"\n        },\n        \"getActualWidth\": {\n            \"description\": \"Returns the current width of the column. If the column is resized, the actual width is the new size.\"\n        },\n        \"isRowGroupActive\": {\n            \"description\": \"Returns <code>true</code> if row group is currently active for this column.\"\n        },\n        \"isPivotActive\": {\n            \"description\": \"Returns <code>true</code> if pivot is currently active for this column.\"\n        },\n        \"isValueActive\": {\n            \"description\": \"Returns <code>true</code> if value (aggregation) is currently active for this column.\"\n        },\n        \"isPrimary\": {\n            \"description\": \"Returns <code>true</code> if column is a primary column, <code>false</code> if secondary. Secondary columns are used for pivoting.\"\n        },\n        \"addEventListener\": {\n            \"description\": \"Add event listener to the column.\"\n        },\n        \"removeEventListener\": {\n            \"description\": \"Remove event listener from the column.\"\n        }\n    },\n    \"events\": {\n        \"meta\": {\n            \"displayName\": \"Events on Column\",\n            \"description\": \"Columns emit the following events:\",\n            \"isEvent\": true\n        },\n        \"filterActiveChanged\": {\n            \"description\": \"The filter active value has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"ColumnEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"sortChanged\": {\n            \"description\": \"The sort value has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"ColumnEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"leftChanged\": {\n            \"description\": \"The left position has changed (e.g. column has moved).\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"ColumnEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"movingChanged\": {\n            \"description\": \"The column has started / finished moving (i.e. user is dragging the column to a new location).\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"ColumnEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"widthChanged\": {\n            \"description\": \"The width value has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"ColumnEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"visibleChanged\": {\n            \"description\": \"The visibility value has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"ColumnEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"menuVisibleChanged\": {\n            \"description\": \"The column menu was shown / hidden.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"ColumnEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"columnRowGroupChanged\": {\n            \"description\": \"The row group value has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"ColumnEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"columnPivotChanged\": {\n            \"description\": \"The pivot value has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"ColumnEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"columnValueChanged\": {\n            \"description\": \"The 'value' value has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"ColumnEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        }\n    }\n}"}},{"relativePath":"column-properties/column-options.AUTO.json","internal":{"content":"{\n  \"headerName\": {\n    \"description\": \"/** The name to render in the column header */\",\n    \"type\": { \"returnType\": \"string\" }\n  },\n  \"columnGroupShow\": {\n    \"description\": \"/** Whether to show the column when the group is open / closed. */\",\n    \"type\": { \"returnType\": \"string\" }\n  },\n  \"headerClass\": {\n    \"description\": \"/** CSS class for the header */\",\n    \"type\": { \"returnType\": \"HeaderClass\" }\n  },\n  \"toolPanelClass\": {\n    \"description\": \"/** CSS class for the toolPanel */\",\n    \"type\": { \"returnType\": \"ToolPanelClass\" }\n  },\n  \"headerValueGetter\": {\n    \"description\": \"/** Expression or function to get the cells value. */\",\n    \"type\": { \"returnType\": \"string | Function\" }\n  },\n  \"pivotKeys\": {\n    \"description\": \"/** Never set this, it is used internally by grid when doing in-grid pivoting */\",\n    \"type\": { \"returnType\": \"string[]\" }\n  },\n  \"suppressColumnsToolPanel\": {\n    \"description\": \"/** Set to true to not include this column in the Columns Tool Panel */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"suppressFiltersToolPanel\": {\n    \"description\": \"/** Set to true to not include this column / filter in the Filters Tool Panel */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"headerTooltip\": {\n    \"description\": \"/** Tooltip for the column header */\",\n    \"type\": { \"returnType\": \"string\" }\n  },\n  \"tooltipComponent\": {\n    \"type\": { \"returnType\": \"{ new(): ITooltipComp; } | string\" }\n  },\n  \"tooltipComponentFramework\": { \"type\": { \"returnType\": \"any\" } },\n  \"tooltipComponentParams\": { \"type\": { \"returnType\": \"any\" } },\n  \"suppressHeaderKeyboardEvent\": {\n    \"description\": \"/** Allows the user to suppress certain keyboard events in the grid header */\",\n    \"type\": {\n      \"arguments\": { \"params\": \"SuppressHeaderKeyboardEventParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"children\": {\n    \"description\": \"/** Columns in this group */\",\n    \"type\": { \"returnType\": \"(ColDef | ColGroupDef)[]\" }\n  },\n  \"groupId\": {\n    \"description\": \"/** Group ID */\",\n    \"type\": { \"returnType\": \"string\" }\n  },\n  \"openByDefault\": {\n    \"description\": \"/** Open by Default */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"marryChildren\": {\n    \"description\": \"/** If true, group cannot be broken up by column moving, child columns will always appear side by side, however you can rearrange child columns within the group */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"headerGroupComponent\": {\n    \"description\": \"/** The custom header group component to be used for rendering the component header. If none specified the default AG Grid is used* */\",\n    \"type\": { \"returnType\": \"string | { new(): IHeaderGroupComp; }\" }\n  },\n  \"headerGroupComponentFramework\": {\n    \"description\": \"/** The custom header group component to be used for rendering the component header in the hosting framework (ie: React/Angular). If none specified the default AG Grid is used* */\",\n    \"type\": { \"returnType\": \"any\" }\n  },\n  \"headerGroupComponentParams\": {\n    \"description\": \"/** The custom header group component to be used for rendering the component header. If none specified the default AG Grid is used* */\",\n    \"type\": { \"returnType\": \"any\" }\n  },\n  \"colId\": {\n    \"description\": \"/** The unique ID to give the column. This is optional. If missing, the ID will default to the field.\\n * If both field and colId are missing, a unique ID will be generated.\\n * This ID is used to identify the column in the API for sorting, filtering etc. */\",\n    \"type\": { \"returnType\": \"string\" }\n  },\n  \"sort\": {\n    \"description\": \"/** If sorting by default, set it here. Set to 'asc' or 'desc' */\",\n    \"type\": { \"returnType\": \"string | null\" }\n  },\n  \"initialSort\": { \"type\": { \"returnType\": \"string\" } },\n  \"sortIndex\": {\n    \"description\": \"/** If sorting more than one column by default, specifies order in which the sorting should be applied. */\",\n    \"type\": { \"returnType\": \"number | null\" }\n  },\n  \"initialSortIndex\": { \"type\": { \"returnType\": \"number\" } },\n  \"sortedAt\": {\n    \"description\": \"/** @deprecated since v24 - use sortIndex instead\\n */\",\n    \"type\": { \"returnType\": \"number\" }\n  },\n  \"sortingOrder\": {\n    \"description\": \"/** The sort order, provide an array with any of the following in any order ['asc','desc',null] */\",\n    \"type\": { \"returnType\": \"(string | null)[]\" }\n  },\n  \"field\": {\n    \"description\": \"/** The field of the row to get the cells data from */\",\n    \"type\": { \"returnType\": \"string\" }\n  },\n  \"type\": {\n    \"description\": \"/** A comma separated string or array of strings containing ColumnType keys which can be used as a template for a column.\\n * This helps to reduce duplication of properties when you have a lot of common column properties. */\",\n    \"type\": { \"returnType\": \"string | string[]\" }\n  },\n  \"hide\": {\n    \"description\": \"/** Set to true for this column to be hidden. Naturally you might think, it would make more sense to call this field 'visible' and mark it false to hide,\\n * however we want all default values to be false and we want columns to be visible by default. */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"initialHide\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"pinned\": {\n    \"description\": \"/** Whether this column is pinned or not. */\",\n    \"type\": { \"returnType\": \"boolean | string | null\" }\n  },\n  \"initialPinned\": { \"type\": { \"returnType\": \"boolean | string\" } },\n  \"tooltipField\": {\n    \"description\": \"/** The field where we get the tooltip on the object */\",\n    \"type\": { \"returnType\": \"string\" }\n  },\n  \"tooltipValueGetter\": {\n    \"description\": \"/** The function used to calculate the tooltip of the object, tooltipField takes precedence */\",\n    \"type\": {\n      \"arguments\": { \"params\": \"ITooltipParams\" },\n      \"returnType\": \"string\"\n    }\n  },\n  \"valueGetter\": {\n    \"description\": \"/** Expression or function to get the cells value. */\",\n    \"type\": { \"returnType\": \"string | ValueGetterFunc\" }\n  },\n  \"filterValueGetter\": {\n    \"description\": \"/** Expression or function to get the cells value for filtering. */\",\n    \"type\": { \"returnType\": \"string | ValueGetterFunc\" }\n  },\n  \"valueSetter\": {\n    \"description\": \"/** If not using a field, then this puts the value into the cell */\",\n    \"type\": { \"returnType\": \"string | ValueSetterFunc\" }\n  },\n  \"keyCreator\": {\n    \"description\": \"/** Function to return the key for a value - use this if the value is an object (not a primitive type) and you\\n * want to a) group by this field or b) use set filter on this field. */\",\n    \"type\": { \"arguments\": { \"value\": \"any\" }, \"returnType\": \"string\" }\n  },\n  \"width\": {\n    \"description\": \"/** Actual width, in pixels, of the cell */\",\n    \"type\": { \"returnType\": \"number\" }\n  },\n  \"initialWidth\": {\n    \"description\": \"/** Default width, in pixels, of the cell */\",\n    \"type\": { \"returnType\": \"number\" }\n  },\n  \"minWidth\": {\n    \"description\": \"/** Min width, in pixels, of the cell */\",\n    \"type\": { \"returnType\": \"number\" }\n  },\n  \"maxWidth\": {\n    \"description\": \"/** Max width, in pixels, of the cell */\",\n    \"type\": { \"returnType\": \"number\" }\n  },\n  \"flex\": {\n    \"description\": \"/** Sets the grow factor of a column. It specifies how much of the remaining\\n * space should be assigned to the column. */\",\n    \"type\": { \"returnType\": \"number\" }\n  },\n  \"initialFlex\": { \"type\": { \"returnType\": \"number\" } },\n  \"autoHeight\": {\n    \"description\": \"/** True if this column should stretch rows height to fit contents */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"wrapText\": {\n    \"description\": \"/** True if this column should wrap cell contents - typically used with autoHeight */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"cellClass\": {\n    \"description\": \"/** Class to use for the cell. Can be string, array of strings, or function. */\",\n    \"type\": { \"returnType\": \"string | string[] | CellClassFunc\" }\n  },\n  \"cellStyle\": {\n    \"description\": \"/** An object of css values. Or a function returning an object of css values. */\",\n    \"type\": {\n      \"returnType\": \"{ [cssProperty: string]: string } | CellStyleFunc\"\n    }\n  },\n  \"cellRenderer\": {\n    \"description\": \"/** A function for rendering a cell. */\",\n    \"type\": {\n      \"returnType\": \"{ new(): ICellRendererComp; } | ICellRendererFunc | string\"\n    }\n  },\n  \"cellRendererFramework\": { \"type\": { \"returnType\": \"any\" } },\n  \"cellRendererParams\": { \"type\": { \"returnType\": \"any\" } },\n  \"cellRendererSelector\": {\n    \"type\": { \"returnType\": \"CellRendererSelectorFunc\" }\n  },\n  \"cellEditor\": {\n    \"description\": \"/** Cell editor */\",\n    \"type\": { \"returnType\": \"string | { new(): ICellEditorComp; }\" }\n  },\n  \"cellEditorFramework\": { \"type\": { \"returnType\": \"any\" } },\n  \"cellEditorParams\": { \"type\": { \"returnType\": \"any\" } },\n  \"cellEditorSelector\": { \"type\": { \"returnType\": \"CellEditorSelectorFunc\" } },\n  \"cellEditorPopup\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"cellEditorPopupPosition\": { \"type\": { \"returnType\": \"string\" } },\n  \"pinnedRowCellRenderer\": {\n    \"description\": \"/** @deprecated Use cellRendererSelector if you want a different Cell Renderer for pinned rows. Check params.node.rowPinned.\\n */\",\n    \"type\": {\n      \"returnType\": \"{ new(): ICellRendererComp; } | ICellRendererFunc | string\"\n    }\n  },\n  \"pinnedRowCellRendererFramework\": {\n    \"description\": \"/** @deprecated Use cellRendererSelector if you want a different Cell Renderer for pinned rows. Check params.node.rowPinned.\\n */\",\n    \"type\": { \"returnType\": \"any\" }\n  },\n  \"pinnedRowCellRendererParams\": {\n    \"description\": \"/** @deprecated Use cellRendererSelector if you want a different Cell Renderer for pinned rows. Check params.node.rowPinned.\\n */\",\n    \"type\": { \"returnType\": \"any\" }\n  },\n  \"valueFormatter\": {\n    \"description\": \"/** A function to format a value, should return a string. Not used for CSV export or copy to clipboard, only for UI cell rendering. */\",\n    \"type\": { \"returnType\": \"string | ValueFormatterFunc\" }\n  },\n  \"pinnedRowValueFormatter\": {\n    \"description\": \"/** @deprecated Use valueFormatter for pinned rows, and check params.node.rowPinned.\\n */\",\n    \"type\": { \"returnType\": \"string | ValueFormatterFunc\" }\n  },\n  \"valueParser\": {\n    \"description\": \"/** Gets called after editing, converts the value in the cell. */\",\n    \"type\": { \"returnType\": \"string | ValueParserFunc\" }\n  },\n  \"aggFunc\": {\n    \"description\": \"/** Name of function to use for aggregation. One of [sum,min,max,first,last] or a function. */\",\n    \"type\": { \"returnType\": \"string | IAggFunc | null\" }\n  },\n  \"initialAggFunc\": { \"type\": { \"returnType\": \"string | IAggFunc\" } },\n  \"allowedAggFuncs\": {\n    \"description\": \"/** Agg funcs allowed on this column. If missing, all installed agg funcs are allowed.\\n * Can be eg ['sum','avg']. This will restrict what the GUI allows to select only. */\",\n    \"type\": { \"returnType\": \"string[]\" }\n  },\n  \"rowGroupIndex\": {\n    \"description\": \"/** To group by this column by default, either provide an index (eg rowGroupIndex=1), or set rowGroup=true. */\",\n    \"type\": { \"returnType\": \"number | null\" }\n  },\n  \"rowGroup\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"initialRowGroupIndex\": { \"type\": { \"returnType\": \"number\" } },\n  \"initialRowGroup\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"showRowGroup\": {\n    \"description\": \"/** Set to true to have the grid place the values for the group into the cell, or put the name of a grouped column to just show that group. */\",\n    \"type\": { \"returnType\": \"string | boolean\" }\n  },\n  \"pivotIndex\": {\n    \"description\": \"/** To pivot by this column by default, either provide an index (eg pivotIndex=1), or set pivot=true. */\",\n    \"type\": { \"returnType\": \"number | null\" }\n  },\n  \"pivot\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"initialPivotIndex\": { \"type\": { \"returnType\": \"number\" } },\n  \"initialPivot\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"comparator\": {\n    \"description\": \"/** Comparator function for custom sorting. */\",\n    \"type\": {\n      \"arguments\": {\n        \"valueA\": \"any\",\n        \"valueB\": \"any\",\n        \"nodeA\": \"RowNode\",\n        \"nodeB\": \"RowNode\",\n        \"isInverted\": \"boolean\"\n      },\n      \"returnType\": \"number\"\n    }\n  },\n  \"equals\": {\n    \"description\": \"/** Comparator for values, used by renderer to know if values have changed. Cells who's values have not changed don't get refreshed. */\",\n    \"type\": {\n      \"arguments\": { \"valueA\": \"any\", \"valueB\": \"any\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"pivotComparator\": {\n    \"description\": \"/** Comparator for ordering the pivot columns */\",\n    \"type\": {\n      \"arguments\": { \"valueA\": \"string\", \"valueB\": \"string\" },\n      \"returnType\": \"number\"\n    }\n  },\n  \"checkboxSelection\": {\n    \"description\": \"/** Set to true to render a selection checkbox in the column. */\",\n    \"type\": { \"returnType\": \"boolean | CheckboxSelectionCallback\" }\n  },\n  \"headerCheckboxSelection\": {\n    \"description\": \"/** If true, a 'select all' checkbox will be put into the header */\",\n    \"type\": { \"returnType\": \"boolean | HeaderCheckboxSelectionCallback\" }\n  },\n  \"headerCheckboxSelectionFilteredOnly\": {\n    \"description\": \"/** If true, the header checkbox selection will work on filtered items */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"rowDrag\": {\n    \"description\": \"/** For grid row dragging, set to true to enable row dragging within the grid */\",\n    \"type\": { \"returnType\": \"boolean | RowDragCallback\" }\n  },\n  \"rowDragText\": {\n    \"description\": \"/** To configure the text to be displayed in the floating div while dragging a row when rowDrag is true */\",\n    \"type\": {\n      \"arguments\": { \"params\": \"IRowDragItem\", \"dragItemCount\": \"number\" },\n      \"returnType\": \"string\"\n    }\n  },\n  \"dndSource\": {\n    \"description\": \"/** For native drag and drop, set to true to enable drag source */\",\n    \"type\": { \"returnType\": \"boolean | DndSourceCallback\" }\n  },\n  \"dndSourceOnRowDrag\": {\n    \"description\": \"/** For native drag and drop, set to true to allow custom onRowDrag processing */\",\n    \"type\": {\n      \"arguments\": { \"params\": \"{ rowNode: RowNode; dragEvent: DragEvent; }\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"suppressMenu\": {\n    \"description\": \"/** Set to true if no menu should be shown for this column header. */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"menuTabs\": {\n    \"description\": \"/** The menu tabs to show, and in which order, the valid values for this property are:\\n * filterMenuTab, generalMenuTab, columnsMenuTab * */\",\n    \"type\": { \"returnType\": \"string[]\" }\n  },\n  \"sortable\": {\n    \"description\": \"/** Set to true if sorting allowed for this column. */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"suppressMovable\": {\n    \"description\": \"/** Set to true to not allow moving this column via dragging it's header */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"suppressCellFlash\": {\n    \"description\": \"/** Set to true to not flash this column for value changes */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"lockPosition\": {\n    \"description\": \"/** Set to true to make sure this column is always first. Other columns, if movable, cannot move before this column. */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"lockVisible\": {\n    \"description\": \"/** Set to true to block the user showing / hiding the column, the column can only be shown / hidden via definitions or API */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"lockPinned\": {\n    \"description\": \"/** Set to true to block the user pinning the column, the column can only be pinned via definitions or API */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"unSortIcon\": {\n    \"description\": \"/** Set to true if you want the unsorted icon to be shown when no sort is applied to this column. */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"suppressSizeToFit\": {\n    \"description\": \"/** Set to true if you want this columns width to be fixed during 'size to fit' operation. */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"resizable\": {\n    \"description\": \"/** Set to true if this column should be resizable */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"suppressAutoSize\": {\n    \"description\": \"/** Set to true if you do not want this column to be auto-resizable by double clicking it's edge. */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"suppressKeyboardEvent\": {\n    \"description\": \"/** Allows the user to suppress certain keyboard events in the grid cell */\",\n    \"type\": {\n      \"arguments\": { \"params\": \"SuppressKeyboardEventParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"enableRowGroup\": {\n    \"description\": \"/** If true, GUI will allow adding this columns as a row group */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"enablePivot\": {\n    \"description\": \"/** If true, GUI will allow adding this columns as a pivot */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"enableValue\": {\n    \"description\": \"/** If true, GUI will allow adding this columns as a value */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"editable\": {\n    \"description\": \"/** Set to true if this col is editable, otherwise false. Can also be a function to have different rows editable. */\",\n    \"type\": { \"returnType\": \"boolean | EditableCallback\" }\n  },\n  \"colSpan\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"ColSpanParams\" },\n      \"returnType\": \"number\"\n    }\n  },\n  \"rowSpan\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"RowSpanParams\" },\n      \"returnType\": \"number\"\n    }\n  },\n  \"suppressPaste\": {\n    \"description\": \"/** Set to true if this col should not be allowed take new values from the clipboard . */\",\n    \"type\": { \"returnType\": \"boolean | SuppressPasteCallback\" }\n  },\n  \"suppressNavigable\": {\n    \"description\": \"/** Set to true if this col should not be navigable with the tab key. Can also be a function to have different rows editable. */\",\n    \"type\": { \"returnType\": \"boolean | SuppressNavigableCallback\" }\n  },\n  \"getQuickFilterText\": {\n    \"description\": \"/** To create the quick filter text for this column, if toString is not good enough on the value. */\",\n    \"type\": {\n      \"arguments\": { \"params\": \"GetQuickFilterTextParams\" },\n      \"returnType\": \"string\"\n    }\n  },\n  \"newValueHandler\": {\n    \"description\": \"/** Callbacks for editing. See editing section for further details.\\n * Return true if the update was successful, or false if not.\\n * If false, then skips the UI refresh and no events are emitted.\\n * Return false if the values are the same (ie no update). */\",\n    \"type\": {\n      \"arguments\": { \"params\": \"NewValueParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"singleClickEdit\": {\n    \"description\": \"/** If true, this cell will be in editing mode after first click. */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"template\": {\n    \"description\": \"/** Cell template to use for cell. Useful for AngularJS cells. */\",\n    \"type\": { \"returnType\": \"string\" }\n  },\n  \"templateUrl\": {\n    \"description\": \"/** Cell template URL to load template from to use for cell. Useful for AngularJS cells. */\",\n    \"type\": { \"returnType\": \"string\" }\n  },\n  \"cellClassRules\": {\n    \"description\": \"/** Rules for applying css classes */\",\n    \"type\": { \"returnType\": \"CellClassRules\" }\n  },\n  \"onCellValueChanged\": {\n    \"description\": \"/** Callbacks for editing.See editing section for further details. */\",\n    \"type\": { \"arguments\": { \"event\": \"NewValueParams\" }, \"returnType\": \"void\" }\n  },\n  \"onCellClicked\": {\n    \"description\": \"/** Function callback, gets called when a cell is clicked. */\",\n    \"type\": {\n      \"arguments\": { \"event\": \"CellClickedEvent\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"onCellDoubleClicked\": {\n    \"description\": \"/** Function callback, gets called when a cell is double clicked. */\",\n    \"type\": {\n      \"arguments\": { \"event\": \"CellDoubleClickedEvent\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"onCellContextMenu\": {\n    \"description\": \"/** Function callback, gets called when a cell is right clicked. */\",\n    \"type\": {\n      \"arguments\": { \"event\": \"CellContextMenuEvent\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"icons\": {\n    \"description\": \"/** Icons for this column. Leave blank to use default. */\",\n    \"type\": { \"returnType\": \"{ [key: string]: Function | string; }\" }\n  },\n  \"enableCellChangeFlash\": {\n    \"description\": \"/** If true, grid will flash cell after cell is refreshed */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"pivotValueColumn\": {\n    \"description\": \"/** Never set this, it is used internally by grid when doing in-grid pivoting */\",\n    \"type\": { \"returnType\": \"Column | null\" }\n  },\n  \"pivotTotalColumnIds\": {\n    \"description\": \"/** Never set this, it is used internally by grid when doing in-grid pivoting */\",\n    \"type\": { \"returnType\": \"string[]\" }\n  },\n  \"headerComponent\": {\n    \"description\": \"/** The custom header component to be used for rendering the component header. If none specified the default AG Grid is used* */\",\n    \"type\": { \"returnType\": \"string | { new(): any; }\" }\n  },\n  \"headerComponentFramework\": {\n    \"description\": \"/** The custom header component to be used for rendering the component header in the hosting framework (ie: React/Angular). If none specified the default AG Grid is used* */\",\n    \"type\": { \"returnType\": \"any\" }\n  },\n  \"headerComponentParams\": {\n    \"description\": \"/** The custom header component parameters* */\",\n    \"type\": { \"returnType\": \"any\" }\n  },\n  \"floatingFilter\": {\n    \"description\": \"/** Whether to display a floating filter for this column. */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"refData\": { \"type\": { \"returnType\": \"{ [key: string]: string; }\" } },\n  \"chartDataType\": {\n    \"description\": \"/** Defines the column data type used when charting */\",\n    \"type\": { \"returnType\": \"'category' | 'series' | 'time' | 'excluded'\" }\n  },\n  \"columnsMenuParams\": {\n    \"description\": \"/** Params to customise the columns menu behaviour and appearance */\",\n    \"type\": { \"returnType\": \"ColumnsMenuParams\" }\n  },\n  \"filter\": {\n    \"description\": \"/** One of the built in filter names: [set, number, text, date], or a filter function */\",\n    \"type\": { \"returnType\": \"IFilterType\" }\n  },\n  \"filterFramework\": { \"type\": { \"returnType\": \"any\" } },\n  \"filterParams\": {\n    \"description\": \"/** The filter params are specific to each filter! */\",\n    \"type\": { \"returnType\": \"any\" }\n  },\n  \"floatingFilterComponent\": {\n    \"description\": \"/** The custom component to be used for rendering the floating filter. If none is specified the default AG Grid is used. * */\",\n    \"type\": { \"returnType\": \"IFloatingFilterType\" }\n  },\n  \"floatingFilterComponentParams\": { \"type\": { \"returnType\": \"any\" } },\n  \"floatingFilterComponentFramework\": { \"type\": { \"returnType\": \"any\" } }\n}\n"}},{"relativePath":"column-properties/properties.json","internal":{"content":"{\n    \"columns\": {\n        \"meta\": {\n            \"displayName\": \"Columns\"\n        },\n        \"field\": {\n            \"description\": \"The field of the row to get the cells data from.\"\n        },\n        \"colId\": {\n            \"description\": \"The unique ID to give the column. This is optional. If missing, the ID will default to the field. If both field and `colId` are missing, a unique ID will be generated. This ID is used to identify the column in the API for sorting, filtering etc.\"\n        },\n        \"type\": {\n            \"description\": \"A comma separated string or array of strings containing `ColumnType` keys which can be used as a template for a column. This helps to reduce duplication of properties when you have a lot of common column properties.\",\n            \"more\": {\n                \"name\": \"Column Types\",\n                \"url\": \"/column-definitions/#default-column-definitions\"\n            }\n        },\n        \"valueGetter\": {\n            \"description\": \"Function or [expression](/cell-expressions/#column-definition-expressions). Gets the value from your data for display.\",\n            \"more\": {\n                \"name\": \"Value Getters\",\n                \"url\": \"/value-getters/\"\n            }\n        },\n        \"valueFormatter\": {\n            \"description\": \"Function or [expression](/cell-expressions/#column-definition-expressions). Formats the value for display.\",\n            \"more\": {\n                \"name\": \"Value Formatters\",\n                \"url\": \"/value-formatters/\"\n            }\n        },\n        \"keyCreator\": {\n            \"description\": \"Function to return a string key for a value. This string is used for grouping, Set filtering, and searching within cell editor dropdowns. When filtering and searching the string is exposed to the user, so make sure to return a human-readable value.\"\n        },\n        \"tooltipField\": {\n            \"description\": \"The field of the tooltip to apply to the cell.\"\n        },\n        \"tooltipValueGetter\": {\n            \"description\": \"Callback that should return the string used for a tooltip.\"\n        },\n        \"checkboxSelection\": {\n            \"default\": false,\n            \"description\": \"`boolean` or `Function`. Set to `true` (or return `true` from function) to render a selection checkbox in the column.\"\n        },\n        \"toolPanelClass\": {\n            \"description\": \"Class to use for the tool panel cell. Can be a string, array of strings, or function.\"\n        },\n        \"suppressColumnsToolPanel\": {\n            \"default\": false,\n            \"description\": \"Set to `true` if you do not want this column or group to appear in the Columns Tool Panel.\"\n        },\n        \"columnGroupShow\": {\n            \"description\": \"Whether to show the column when the group is open / closed.\"\n        },\n        \"chartDataType\": {\n            \"description\": \"Defines the chart data type that should be used for a column.\"\n        },\n        \"icons\": {\n            \"description\": \"Icons to use inside the column instead of the grid's default icons.\",\n            \"more\": {\n                \"name\": \"Custom Icons\",\n                \"url\": \"/custom-icons/#set-the-icons-through-gridoptions-javascript\"\n            }\n        },\n        \"suppressNavigable\": {\n            \"default\": false,\n            \"description\": \"Set to `true` if this column is not navigable (i.e. cannot be tabbed into), otherwise `false`. Can also be a callback function to have different rows navigable.\"\n        },\n        \"suppressKeyboardEvent\": {\n            \"default\": false,\n            \"description\": \"Suppress the grid taking action for the relevant keyboard event when a cell is focused.\",\n            \"more\": {\n                \"name\": \"Suppress Keyboard Events\",\n                \"url\": \"/keyboard-navigation/#suppresskeyboardevent\"\n            }\n        },\n        \"suppressPaste\": {\n            \"description\": \"Pasting is on by default as long as cells are editable (non-editable cells cannot be modified, even with a paste operation). Set to `true` turn paste operations off.\"\n        }\n    },\n    \"header\": {\n        \"meta\": {\n            \"displayName\": \"Columns:  Header\"\n        },\n        \"headerName\": {\n            \"description\": \"The name to render in the column header. If not specified and field is specified, the field name will be used as the header name.\"\n        },\n        \"headerValueGetter\": {\n            \"description\": \"Function or [expression](/cell-expressions/#column-definition-expressions). Gets the value for display in the header.\"\n        },\n        \"headerTooltip\": {\n            \"description\": \"Tooltip for the column header\"\n        },\n        \"headerClass\": {\n            \"description\": \"Class to use for the header cell. Can be a string, array of strings, or function.\"\n        },\n        \"headerComponent<br />headerComponentFramework\": {\n            \"description\": \"Header component to use for this column.\",\n            \"more\": {\n                \"name\": \"Header Component\",\n                \"url\": \"/component-header/\"\n            }\n        },\n        \"headerComponentParams\": {\n            \"description\": \"Params to be passed to header component.\"\n        },\n        \"menuTabs\": {\n            \"description\": \"Set to an array containing zero, one or many of the following options: `'filterMenuTab' | 'generalMenuTab' | 'columnsMenuTab'`. This is used to figure out which menu tabs are present and in which order the tabs are shown.\"\n        },\n        \"columnsMenuParams\": {\n            \"description\": \"Params used to change the behaviour and appearance of the Columns Menu tab.\",\n            \"more\": {\n                \"name\": \"Customising the Columns Menu Tab\",\n                \"url\": \"/column-menu/#customising-the-columns-menu-tab\"\n            }\n        },\n        \"suppressMenu\": {\n            \"default\": false,\n            \"description\": \"Set to `true` if no menu should be shown for this column header.\"\n        },\n        \"suppressHeaderKeyboardEvent\": {\n            \"default\": false,\n            \"description\": \"Suppress the grid taking action for the relevant keyboard event when a header is focused.\",\n            \"more\": {\n                \"name\": \"Suppress Keyboard Events\",\n                \"url\": \"/keyboard-navigation/#suppressheaderkeyboardevent\"\n            }\n        },\n        \"headerCheckboxSelection\": {\n            \"description\": \"If `true` or the callback returns `true`, a 'select all' checkbox will be put into the header.\",\n            \"more\": {\n                \"name\": \"Header Checkbox Selection\",\n                \"url\": \"/row-selection/#header-checkbox-selection\"\n            }\n        },\n        \"headerCheckboxSelectionFilteredOnly\": {\n            \"description\": \"If true, the header checkbox selection will only select filtered items.\",\n            \"more\": {\n                \"name\": \"Select Everything or Just Filtered\",\n                \"url\": \"/row-selection/#select-everything-or-just-filtered\"\n            }\n        }\n    },\n    \"display\": {\n        \"meta\": {\n            \"displayName\": \"Columns:  Display\"\n        },\n        \"hide\": {\n            \"default\": false,\n            \"description\": \"Set to `true` for this column to be hidden. You might think it would make more sense to call this field `visible` and mark it `false` to hide, but we want all default values to be `false` and we want columns to be visible by default.\"\n        },\n        \"initialHide\": {\n            \"description\": \"Same as 'hide', except only applied when creating a new column. Not applied when updating column definitions.\"\n        },\n        \"lockVisible\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to block making column visible / hidden via the UI (API will still work).\"\n        },\n        \"lockPosition\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to always have this column displayed first.\"\n        },\n        \"suppressMovable\": {\n            \"default\": false,\n            \"description\": \"Set to `true` if you do not want this column to be movable via dragging.\"\n        }\n    },\n    \"width\": {\n        \"meta\": {\n            \"displayName\": \"Columns:  Width\"\n        },\n        \"width\": {\n            \"description\": \"Initial width in pixels for the cell.\"\n        },\n        \"initialWidth\": {\n            \"description\": \"Same as 'width', except only applied when creating a new column. Not applied when updating column definitions.\"\n        },\n        \"minWidth\": {\n            \"description\": \"Minimum width in pixels for the cell.\"\n        },\n        \"maxWidth\": {\n            \"description\": \"Maximum width in pixels for the cell.\"\n        },\n        \"flex\": {\n            \"description\": \"Used instead of `width` when the goal is to fill the remaining empty space of the grid.\",\n            \"more\": {\n                \"name\": \"Column Flex\",\n                \"url\": \"/column-sizing/#column-flex\"\n            }\n        },\n        \"initialFlex\": {\n            \"description\": \"Same as 'flex', except only applied when creating a new column. Not applied when updating column definitions.\"\n        },\n        \"resizable\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to allow column to be resized.\"\n        },\n        \"suppressSizeToFit\": {\n            \"default\": false,\n            \"description\": \"Set to `true` if you want this column's width to be fixed during 'size to fit' operations.\"\n        }\n    },\n    \"pinned\": {\n        \"meta\": {\n            \"displayName\": \"Columns:  Pinned\"\n        },\n        \"pinned\": {\n            \"options\": [\n                \"left\",\n                \"right\"\n            ],\n            \"description\": \"Pin a column to one side. A value of `true` is converted to `'left'`\"\n        },\n        \"initialPinned\": {\n            \"description\": \"Same as 'pinned', except only applied when creating a new column. Not applied when updating column definitions.\"\n        },\n        \"lockPinned\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to block pinning column via the UI (API will still work).\"\n        }\n    },\n    \"spanning\": {\n        \"meta\": {\n            \"displayName\": \"Columns:  Spanning\",\n            \"description\": \"See [Column](/column-spanning/) / [Row](/row-spanning/) Spanning\"\n        },\n        \"colSpan\": {\n            \"description\": \"By default, each cell will take up the width of one column. You can change this behaviour to allow cells to span multiple columns.\"\n        },\n        \"rowSpan\": {\n            \"description\": \"By default, each cell will take up the height of one row. You can change this behaviour to allow cells to span multiple rows.\"\n        }\n    },\n    \"styling\": {\n        \"meta\": {\n            \"displayName\": \"Columns:  Rendering and Styling\"\n        },\n        \"cellStyle\": {\n            \"description\": \"The style to give a particular cell.\",\n            \"more\": {\n                \"name\": \"Cell Style\",\n                \"url\": \"/cell-styles/#cell-style\"\n            }\n        },\n        \"cellClass\": {\n            \"description\": \"The class to give a particular cell.\",\n            \"more\": {\n                \"name\": \"Cell Class\",\n                \"url\": \"/cell-styles/#cell-class\"\n            }\n        },\n        \"cellClassRules\": {\n            \"description\": \"Rules which can be applied to include certain CSS classes.\",\n            \"more\": {\n                \"name\": \"Cell Class Rules\",\n                \"url\": \"/cell-styles/#cell-class-rules\"\n            }\n        },\n        \"cellRenderer<br />cellRendererFramework\": {\n            \"description\": \"`cellRenderer` to use for this column.\",\n            \"more\": {\n                \"name\": \"Cell Renderer\",\n                \"url\": \"/cell-rendering/\"\n            }\n        },\n        \"cellRendererParams\": {\n            \"description\": \"Params to be passed to cell renderer component.\",\n            \"more\": {\n                \"name\": \"Cell Renderer Params\",\n                \"url\": \"/component-cell-renderer/#complementing-cell-renderer-params\"\n            }\n        },\n        \"cellRendererSelector\": {\n            \"description\": \"Callback to select which cell renderer to be used for a given row within the same column.\",\n            \"more\": {\n                \"name\": \"Many Renderers One Column\",\n                \"url\": \"/cell-rendering/#many-renderers-one-column\"\n            }\n        },\n        \"autoHeight\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to have the grid calculate the height of a row based on contents of this column.\"\n        },\n        \"wrapText\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to have the text wrap inside the cell.\"\n        },\n        \"enableCellChangeFlash\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to flash a cell when it's refreshed.\"\n        },\n        \"suppressCellFlash\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to prevent this column from flashing on changes. Only applicable if cell flashing is turned on for the grid.\"\n        }\n    },\n    \"sort\": {\n        \"meta\": {\n            \"displayName\": \"Columns:  Sort\"\n        },\n        \"sortable\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to allow sorting on this column.\"\n        },\n        \"sort\": {\n            \"options\": [\n                null,\n                \"asc\",\n                \"desc\"\n            ],\n            \"description\": \"Set to sort this column.\"\n        },\n        \"initialSort\": {\n            \"description\": \"Same as `sort`, except only applied when creating a new column. Not applied when updating column definitions.\"\n        },\n        \"sortIndex\": {\n            \"description\": \"If doing multi-sort by default, the order which column sorts are applied.\"\n        },\n        \"initialSortIndex\": {\n            \"description\": \"Same as 'sortIndex', except only applied when creating a new column. Not applied when updating column definitions.\"\n        },\n        \"sortingOrder\": {\n            \"options\": [\n                null,\n                \"asc\",\n                \"desc\"\n            ],\n            \"description\": \"Array defining the order in which sorting occurs (if sorting is enabled).\"\n        },\n        \"comparator\": {\n            \"description\": \"Comparator function for custom sorting.\"\n        },\n        \"unSortIcon\": {\n            \"default\": false,\n            \"description\": \"Set to `true` if you want the unsorted icon to be shown when no sort is applied to this column.\"\n        }\n    },\n    \"filtering\": {\n        \"meta\": {\n            \"displayName\": \"Columns:  Filter\"\n        },\n        \"filter\": {\n            \"description\": \"Filter component to use for this column. <br/>Set to `true` to use the default filter. <br/>Set to the name of a [provided filter](/filtering/#provided-filters) or set to a `IFilterComp`\",\n            \"more\": {\n                \"name\": \"Configuring Filters\",\n                \"url\": \"/filtering/#configuring-filters-on-columns\"\n            }\n        },\n        \"filterValueGetter\": {\n            \"description\": \"Function or [expression](/cell-expressions/#column-definition-expressions). Gets the value for filtering purposes.\"\n        },\n        \"getQuickFilterText\": {\n            \"description\": \"A function to tell the grid what quick filter text to use for this column if you don't want to use the default (which is calling `toString` on the value).\"\n        },\n        \"filterFramework\": {\n            \"description\": \"Provided a custom framework filter to use for this column.\",\n            \"more\": {\n                \"name\": \"Custom Filter\",\n                \"url\": \"/component-filter\"\n            }\n        },\n        \"filterParams\": {\n            \"description\": \"Custom params to be passed to the filter component specified in `filter` or `filterFramework`.\",\n            \"more\": {\n                \"name\": \"Filter Parameters\",\n                \"url\": \"/filtering/#filter-parameters\"\n            }\n        },\n        \"floatingFilter\": {\n            \"default\": false,\n            \"description\": \"Whether to show a floating filter for this column.\",\n            \"more\": {\n                \"name\": \"Floating Filter\",\n                \"url\": \"/floating-filters\"\n            }\n        },\n        \"floatingFilterComponent\": {\n            \"description\": \"Floating filter component to use for this column.\",\n            \"more\": {\n                \"name\": \"Floating Filter Component\",\n                \"url\": \"/component-floating-filter/\"\n            }\n        },\n        \"floatingFilterComponentFramework\": {\n            \"description\": \"Floating filter framework component to use for this column.\",\n            \"more\": {\n                \"name\": \"Floating Filter Component\",\n                \"url\": \"/component-floating-filter/\"\n            }\n        },\n        \"floatingFilterComponentParams\": {\n            \"description\": \"Custom params to be passed to `floatingFilterComponent` or `floatingFilterComponentFramework`.\",\n            \"more\": {\n                \"name\": \"Floating Filter Parameters\",\n                \"url\": \"/component-floating-filter/#custom-filter-parameters\"\n            }\n        },\n        \"suppressFiltersToolPanel\": {\n            \"default\": false,\n            \"description\": \"Set to `true` if you do not want this column (filter) or group (filter group) to appear in the Filters Tool Panel.\"\n        }\n    },\n    \"editing\": {\n        \"meta\": {\n            \"displayName\": \"Columns:  Editing\"\n        },\n        \"editable\": {\n            \"default\": false,\n            \"description\": \"Set to `true` if this column is editable, otherwise `false`. Can also be a function to have different rows editable.\"\n        },\n        \"valueSetter\": {\n            \"description\": \"Function or [expression](/cell-expressions/#column-definition-expressions). Sets the value into your data for saving. Return `true` if the data changed.\"\n        },\n        \"valueParser\": {\n            \"description\": \"Function or [expression](/cell-expressions/#column-definition-expressions). Parses the value for saving.\"\n        },\n        \"cellEditor<br />cellEditorFramework\": {\n            \"description\": \"`cellEditor` to use for this column.\",\n            \"more\": {\n                \"name\": \"Cell Editors\",\n                \"url\": \"/component-cell-editor/\"\n            }\n        },\n        \"cellEditorParams\": {\n            \"description\": \"Params to be passed to cell editor component.\"\n        },\n        \"cellEditorSelector\": {\n            \"description\": \"Callback to select which cell editor to be used for a given row within the same column.\",\n            \"more\": {\n                \"name\": \"Many Editors One Column\",\n                \"url\": \"/cell-editing/#many-editors-one-column\"\n            }\n        },\n        \"singleClickEdit\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to have cells under this column enter edit mode after single click.\"\n        }\n    },\n    \"grouping\": {\n        \"meta\": {\n            \"displayName\": \"Columns:  Row Grouping\",\n            \"description\": \"(Enterprise only) See [Row Grouping](/grouping/)\"\n        },\n        \"rowGroup\": {\n            \"description\": \"Set to true to row group by this column\"\n        },\n        \"initialRowGroup\": {\n            \"description\": \"Same as 'rowGroup', except only applied when creating a new column. Not applied when updating column definitions.\"\n        },\n        \"rowGroupIndex\": {\n            \"description\": \"Set this in columns you want to group by. If only grouping by one column, set this to any number (e.g. `0`). If grouping by multiple columns, set this to where you want this column to be in the group (e.g. `0` for first, `1` for second, and so on).\"\n        },\n        \"initialRowGroupIndex\": {\n            \"description\": \"Same as 'rowGroupIndex', except only applied when creating a new column. Not applied when updating column definitions.\"\n        },\n        \"enableRowGroup\": {\n            \"default\": false,\n            \"description\": \"(Enterprise only) Set to `true` if you want to be able to row group by this column via the GUI. This will not block the API or properties being used to achieve row grouping.\"\n        },\n        \"enableValue\": {\n            \"default\": false,\n            \"description\": \"(Enterprise only) Set to `true` if you want to be able to aggregate by this column via the GUI. This will not block the API or properties being used to achieve aggregation.\"\n        },\n        \"aggFunc\": {\n            \"options\": [\n                \"sum\",\n                \"min\",\n                \"max\",\n                \"first\",\n                \"last\"\n            ],\n            \"description\": \"Name of function to use for aggregation. You can also provide your own agg function.\"\n        },\n        \"initialAggFunc\": {\n            \"description\": \"Same as 'aggFunc', except only applied when creating a new column. Not applied when updating column definitions.\"\n        },\n        \"allowedAggFuncs\": {\n            \"description\": \"Aggregation functions allowed on this column e.g. `['sum', 'avg']`. If missing, all installed functions are allowed. This will only restrict what the GUI allows a user to select, it does not impact when you set a function via the API.\"\n        }\n    },\n    \"pivoting\": {\n        \"meta\": {\n            \"displayName\": \"Columns:  Pivoting\",\n            \"description\": \"(Enterprise only) See [Pivoting](/pivoting/)\"\n        },\n        \"pivot\": {\n            \"description\": \"Set to true to pivot by this column\"\n        },\n        \"initialPivot\": {\n            \"description\": \"Same as 'pivot', except only applied when creating a new column. Not applied when updating column definitions.\"\n        },\n        \"pivotIndex\": {\n            \"description\": \"Set this in columns you want to pivot by. If only pivoting by one column, set this to any number (e.g. `0`). If pivoting by multiple columns, set this to where you want this column to be in the order of pivots (e.g. `0` for first, `1` for second, and so on).\"\n        },\n        \"initialPivotIndex\": {\n            \"description\": \"Same as 'pivotIndex', except only applied when creating a new column. Not applied when updating column definitions.\"\n        },\n        \"pivotComparator\": {\n            \"description\": \"Comparator to use when ordering the pivot columns, when this column is used to pivot on. The values will always be strings, as the pivot service uses strings as keys for the pivot groups.\"\n        },\n        \"enablePivot\": {\n            \"default\": false,\n            \"description\": \"Set to `true` if you want to be able to pivot by this column via the GUI. This will not block the API or properties being used to achieve pivot.\"\n        }\n    },\n    \"row dragging\": {\n        \"meta\": {\n            \"displayName\": \"Columns:  Row Dragging\",\n            \"description\": \"See [Row Dragging](/row-dragging/)\"\n        },\n        \"rowDrag\": {\n            \"default\": false,\n            \"description\": \"`boolean` or `Function`. Set to `true` (or return `true` from function) to allow row dragging.\"\n        },\n        \"rowDragText\": {\n            \"description\": \"A callback that should return a string to be displayed by the `rowDragComp` while dragging a row. If this callback is not set, the current cell value will be used.\"\n        },\n        \"dndSource\": {\n            \"default\": false,\n            \"description\": \"`boolean` or `Function`. Set to `true` (or return `true` from function) to allow dragging for native drag and drop.\"\n        },\n        \"dndSourceOnRowDrag\": {\n            \"description\": \"Function to allow custom drag functionality for native drag and drop.\"\n        }\n    },\n    \"events\": {\n        \"meta\": {\n            \"displayName\": \"Columns:  Events\",\n            \"isEvent\": true\n        },\n        \"onCellValueChanged\": {\n            \"description\": \"Callback for after the value of a cell has changed, either due to editing or the application calling `api.setValue()`.\"\n        },\n        \"onCellClicked\": {\n            \"description\": \"Callback called when a cell is clicked.\"\n        },\n        \"onCellDoubleClicked\": {\n            \"description\": \"Callback called when a cell is double clicked.\"\n        },\n        \"onCellContextMenu\": {\n            \"description\": \"Callback called when a cell is right clicked.\"\n        }\n    },\n    \"columnGroups\": {\n        \"meta\": {\n            \"displayName\": \"Groups\",\n            \"description\": \"For column groups, the property `children` is mandatory. When the grid sees `children` it knows it's a column group.\"\n        },\n        \"children\": {\n            \"description\": \"A list containing a mix of columns and column groups.\",\n            \"isRequired\": true\n        },\n        \"groupId\": {\n            \"description\": \"The unique ID to give the column. This is optional. If missing, a unique ID will be generated. This ID is used to identify the column group in the column API.\"\n        },\n        \"marryChildren\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to keep columns in this group beside each other in the grid. Moving the columns outside of the group (and hence breaking the group) is not allowed.\"\n        },\n        \"openByDefault\": {\n            \"default\": false,\n            \"description\": \"Set to `true` if this group should be opened by default.\"\n        },\n        \"columnGroupShow\": {\n            \"description\": \"Whether to show the column when the group is open / closed.\"\n        },\n        \"toolPanelClass\": {\n            \"description\": \"Class to use for the tool panel cell. Can be a string, array of strings, or function.\"\n        },\n        \"suppressColumnsToolPanel\": {\n            \"default\": false,\n            \"description\": \"Set to `true` if you do not want this column or group to appear in the Columns Tool Panel.\"\n        },\n        \"suppressFiltersToolPanel\": {\n            \"default\": false,\n            \"description\": \"Set to `true` if you do not want this column (filter) or group (filter group) to appear in the Filters Tool Panel.\"\n        }\n    },\n    \"groupsHeader\": {\n        \"meta\": {\n            \"displayName\": \"Groups:  Header\"\n        },\n        \"headerName\": {\n            \"description\": \"The name to render in the column header. If not specified and field is specified, the field name will be used as the header name.\"\n        },\n        \"headerClass\": {\n            \"description\": \"Class to use for the header cell. Can be a string, array of strings, or function.\"\n        },\n        \"headerGroupComponent<br />headerGroupComponentFramework\": {\n            \"description\": \"Component to use header group.\"\n        },\n        \"headerGroupComponentParams\": {\n            \"description\": \"Params for the header group component.\"\n        }\n    }\n}"}},{"relativePath":"grid-api/api.json","internal":{"content":"{\n    \"columns\": {\n        \"meta\": {\n            \"displayName\": \"Columns\",\n            \"_lookupSrc_\": \"GridApi\"\n        },\n        \"getColumnDefs\": {\n            \"description\": \"Returns the current column definitions.\"\n        },\n        \"sizeColumnsToFit\": {\n            \"description\": \"Sets columns to adjust in size to fit the grid horizontally.\"\n        },\n        \"setColumnDefs\": {\n            \"description\": \"Call to set new column definitions. The grid will redraw all the column headers, and then redraw all of the rows.\"\n        },\n        \"setAutoGroupColumnDef\": {\n            \"description\": \"Call to set new auto group column definition. The grid will recreate any auto-group columns if present.\"\n        }\n    },\n    \"data\": {\n        \"meta\": {\n            \"displayName\": \"Data\"\n        },\n        \"setRowData\": {\n            \"description\": \"Set row data.\"\n        },\n        \"applyTransaction\": {\n            \"description\": \"Update row data. Pass a transaction object with lists for `add`, `remove` and `update`.\"\n        },\n        \"applyTransactionAsync\": {\n            \"description\": \"Same as `applyTransaction` except executes asynchronously for efficiency.\"\n        },\n        \"flushAsyncTransactions\": {\n            \"description\": \"Executes any remaining asynchronous grid transactions, if any are waiting to be executed.\"\n        },\n        \"setPinnedTopRowData\": {\n            \"description\": \"Set the top pinned rows.\"\n        },\n        \"setPinnedBottomRowData\": {\n            \"description\": \"Set the bottom pinned rows.\"\n        },\n        \"getPinnedTopRowCount\": {\n            \"description\": \"Gets the number of top pinned rows.\"\n        },\n        \"getPinnedBottomRowCount\": {\n            \"description\": \"Gets the number of bottom pinned rows.\"\n        },\n        \"getPinnedTopRow\": {\n            \"description\": \"Gets the top pinned row with the specified index.\"\n        },\n        \"getPinnedBottomRow\": {\n            \"description\": \"Gets the top pinned row with the specified index.\"\n        },\n        \"getModel\": {\n            \"description\": \"Returns the row model inside the table. From here you can see the original rows, rows after filter has been applied, rows after aggregation has been applied, and the final set of 'to be displayed' rows.\"\n        },\n        \"refreshClientSideRowModel\": {\n            \"description\": \"Gets the Client-Side Row Model to refresh, executing the grouping, filtering and sorting again.\"\n        },\n        \"setDatasource\": {\n            \"description\": \"Set new datasource for Infinite Row Model.\"\n        },\n        \"setServerSideDatasource\": {\n            \"description\": \"Set new datasource for Server-Side Row Model.\"\n        },\n        \"setViewportDatasource\": {\n            \"description\": \"Set new datasource for Viewport Row Model.\"\n        }\n    },\n    \"rowNodes\": {\n        \"meta\": {\n            \"displayName\": \"Accessing Row Nodes\"\n        },\n        \"getRowNode\": {\n            \"description\": \"Returns the row node with the given ID. The row node ID is the one you provide from the callback `getRowNodeId(data)`, otherwise the ID is a number auto-generated by the grid when the row data is set.\"\n        },\n        \"forEachNode\": {\n            \"description\": \"Iterates through each node (row) in the grid and calls the callback for each node. This works similar to the `forEach` method on a JavaScript array. This is called for every node, ignoring any filtering or sorting applied within the grid. If using the [Infinite Row Model](/infinite-scrolling/), then this gets called for each page loaded in the page cache.\"\n        },\n        \"forEachNodeAfterFilter\": {\n            \"description\": \"Similar to `forEachNode`, except skips any filtered out data.\"\n        },\n        \"forEachNodeAfterFilterAndSort\": {\n            \"description\": \"Similar to `forEachNodeAfterFilter`, except the callbacks are called in the order the rows are displayed in the grid.\"\n        },\n        \"forEachLeafNode\": {\n            \"description\": \"Similar to `forEachNode`, except lists all the leaf nodes. This effectively goes through all the data that you provided to the grid before the grid performed any grouping. If using tree data, goes through all the nodes for the data you provided, including nodes that have children, but excluding groups the grid created where gaps were missing in the hierarchy.\"\n        }\n    },\n    \"displayedRows\": {\n        \"meta\": {\n            \"displayName\": \"Displayed Rows\"\n        },\n        \"getDisplayedRowAtIndex\": {\n            \"description\": \"Returns the displayed `RowNode` at the given `index`.\"\n        },\n        \"getDisplayedRowCount\": {\n            \"description\": \"Returns the total number of displayed rows.\"\n        },\n        \"getFirstDisplayedRow\": {\n            \"description\": \"Get the index of the first displayed row due to scrolling (includes invisible rendered rows in the buffer).\"\n        },\n        \"getLastDisplayedRow\": {\n            \"description\": \"Get the index of the last displayed row due to scrolling (includes invisible rendered rows in the buffer).\"\n        }\n    },\n    \"masterDetail\": {\n        \"meta\": {\n            \"displayName\": \"Master Detail\"\n        },\n        \"getDetailGridInfo\": {\n            \"description\": \"Returns the `DetailGridInfo` corresponding to the supplied `detailGridId`.\"\n        },\n        \"forEachDetailGridInfo\": {\n            \"description\": \"Iterates through each `DetailGridInfo` in the grid and calls the supplied callback on each.\",\n            \"more\": {\n                \"name\": \"Accessing Detail Grids\",\n                \"url\": \"/master-detail-grids/#accessing-detail-grids\"\n            }\n        }\n    },\n    \"selection\": {\n        \"meta\": {\n            \"displayName\": \"Selection\"\n        },\n        \"selectAll\": {\n            \"description\": \"Select all rows (even rows that are not visible due to grouping being enabled and their groups not expanded).\"\n        },\n        \"deselectAll\": {\n            \"description\": \"Clear all row selections.\"\n        },\n        \"selectAllFiltered\": {\n            \"description\": \"Select all filtered rows.\"\n        },\n        \"deselectAllFiltered\": {\n            \"description\": \"Clear all filtered selections.\"\n        },\n        \"getSelectedNodes\": {\n            \"description\": \"Returns a list of selected nodes. Getting the underlying node (rather than the data) is useful when working with tree / aggregated data, as the node can be traversed.\"\n        },\n        \"getSelectedRows\": {\n            \"description\": \"Returns a list of selected rows (i.e. row data that you provided).\"\n        },\n        \"getBestCostNodeSelection\": {\n            \"description\": \"Returns a list of all selected nodes at 'best cost', a feature to be used with groups / trees. If a group has all its children selected, then the group appears in the result, but not the children. Designed for use with `'children'` as the group selection type, where groups don't actually appear in the selection normally.\"\n        },\n        \"getCellRanges\": {\n            \"description\": \"Returns the list of selected cell ranges.\"\n        },\n        \"addCellRange\": {\n            \"description\": \"Adds to the selected range.\"\n        },\n        \"clearRangeSelection\": {\n            \"description\": \"Clears the selected range.\"\n        },\n        \"setSuppressRowClickSelection\": {\n            \"description\": \"Sets the `suppressRowClickSelection` property.\"\n        }\n    },\n    \"refresh\": {\n        \"meta\": {\n            \"displayName\": \"Refresh\"\n        },\n        \"refreshCells\": {\n            \"description\": \"Performs change detection on all cells, refreshing cells where required.\",\n            \"more\": {\n                \"name\": \"Refresh Cells\",\n                \"url\": \"/view-refresh/#refresh-cells\"\n            }\n        },\n        \"redrawRows\": {\n            \"description\": \"Remove a row from the DOM and recreate it again from scratch.\",\n            \"more\": {\n                \"name\": \"Redraw Rows\",\n                \"url\": \"/view-refresh/#redraw-rows\"\n            }\n        },\n        \"refreshHeader\": {\n            \"description\": \"Redraws the header. Useful if a column name changes, or something else that changes how the column header is displayed.\"\n        },\n        \"flashCells\": {\n            \"description\": \"Flash rows, columns or individual cells.\",\n            \"more\": {\n                \"name\": \"Flashing Cells\",\n                \"url\": \"/flashing-cells/\"\n            }\n        }\n    },\n    \"sortFilter\": {\n        \"meta\": {\n            \"displayName\": \"Sort and Filter\"\n        },\n        \"setQuickFilter\": {\n            \"description\": \"Pass a quick filter text into the grid for filtering. If using Angular, the grid watches the `quickFilterText` attribute of the `gridOptions`. If you won't want to use `quickFilterText` (i.e. if not using AngularJS) then you can call this method instead to apply a quick filter.\"\n        },\n        \"isQuickFilterPresent\": {\n            \"description\": \"Returns `true` if the quick filter is set, otherwise `false`.\"\n        },\n        \"isColumnFilterPresent\": {\n            \"description\": \"Returns `true` if any column filter is set, otherwise `false`.\"\n        },\n        \"isAnyFilterPresent\": {\n            \"description\": \"Returns `true` if any filter is set. This includes quick filter, advanced filter or external filter.\"\n        },\n        \"getFilterInstance\": {\n            \"description\": \"Returns the filter component instance for a column. `col` can be a string field name or a ColDef object (matches on object reference, useful if field names are not unique). For filters that are created asynchronously including React 16+ components, calling this method will return null if the filter has not already been created. If your app uses asynchronous components, use the optional `callback` function which will be invoked with the filter instance when it is available.\"\n        },\n        \"getFilterModel\": {\n            \"description\": \"Gets the current state of all the advanced filters. Used for saving filter state.\"\n        },\n        \"setFilterModel\": {\n            \"description\": \"Sets the state of all the advanced filters. Provide it with what you get from `getFilterModel()` to restore filter state.\"\n        },\n        \"onFilterChanged\": {\n            \"description\": \"Informs the grid that a filter has changed. This is typically called after a filter change through one of the filter APIs.\"\n        },\n        \"destroyFilter\": {\n            \"description\": \"Destroys a filter. Useful to force a particular filter to be created from scratch again.\"\n        },\n        \"onSortChanged\": {\n            \"description\": \"Gets the grid to act as if the sort was changed. Useful if you update some values and want to get the grid to reorder them according to the new values.\"\n        }\n    },\n    \"navigation\": {\n        \"meta\": {\n            \"displayName\": \"Navigation\"\n        },\n        \"getFocusedCell\": {\n            \"description\": \"Returns the focused cell (or the last focused cell if the grid lost focus).\"\n        },\n        \"setFocusedCell\": {\n            \"description\": \"Sets the focus to the specified cell.\"\n        },\n        \"clearFocusedCell\": {\n            \"description\": \"Clears the focused cell.\"\n        },\n        \"tabToNextCell\": {\n            \"description\": \"Navigates the grid focus to the next cell, as if tabbing.\"\n        },\n        \"tabToPreviousCell\": {\n            \"description\": \"Navigates the grid focus to the previous cell, as if shift-tabbing.\"\n        }\n    },\n    \"editing\": {\n        \"meta\": {\n            \"displayName\": \"Editing\"\n        },\n        \"stopEditing\": {\n            \"description\": \"If a cell is editing, it stops the editing. Pass `true` if you want to cancel the editing (i.e. don't accept changes).\",\n            \"more\": {\n                \"name\": \"Editing API\",\n                \"url\": \"/cell-editing/#editing-api\"\n            }\n        },\n        \"startEditingCell\": {\n            \"description\": \"Start editing a particular cell.\",\n            \"more\": {\n                \"name\": \"Editing API\",\n                \"url\": \"/cell-editing/#editing-api\"\n            }\n        },\n        \"getEditingCells\": {\n            \"description\": \"If the grid is editing, returns back details of the editing cell(s).\",\n            \"more\": {\n                \"name\": \"Editing API\",\n                \"url\": \"/cell-editing/#editing-api\"\n            }\n        }\n    },\n    \"export\": {\n        \"meta\": {\n            \"displayName\": \"Export\"\n        },\n        \"exportDataAsCsv\": {\n            \"description\": \"Downloads a CSV export of the grid's data.\"\n        },\n        \"getDataAsCsv\": {\n            \"description\": \"Similar to `exportDataAsCsv`, except returns the result as a string rather than download it.\"\n        },\n        \"exportDataAsExcel\": {\n            \"description\": \"Downloads an Excel export of the grid's data.\"\n        },\n        \"getDataAsExcel\": {\n            \"description\": \"Similar to `exportDataAsExcel`, except instead of downloading a file, it will return a [Blob](https://developer.mozilla.org/en-US/docs/Web/API/Blob) to be processed by the user.\"\n        },\n        \"getSheetDataForExcel\": {\n            \"description\": \"This is method to be used to get the grid's data as a sheet, that will later be exported either by `getMultipleSheetsAsExcel()` or `exportMultipleSheetsAsExcel()`.\"\n        },\n        \"exportMultipleSheetsAsExcel\": {\n            \"description\": \"Downloads an Excel export of multiple sheets in one file.\"\n        },\n        \"getMultipleSheetsAsExcel\": {\n            \"description\": \"Similar to `exportMultipleSheetsAsExcel`, except instead of downloading a file, it will return a [Blob](https://developer.mozilla.org/en-US/docs/Web/API/Blob) to be processed by the user.\"\n        }\n    },\n    \"events\": {\n        \"meta\": {\n            \"displayName\": \"Events\"\n        },\n        \"addEventListener\": {\n            \"description\": \"Add an event listener for the specified `eventType`. Works similar to `addEventListener` for a browser DOM element.\"\n        },\n        \"addGlobalListener\": {\n            \"description\": \"Add an event listener for all event types coming from the grid.\"\n        },\n        \"removeEventListener\": {\n            \"description\": \"Remove an event listener.\"\n        },\n        \"removeGlobalListener\": {\n            \"description\": \"Remove a global event listener.\"\n        }\n    },\n    \"rowGroups\": {\n        \"meta\": {\n            \"displayName\": \"Row Groups\"\n        },\n        \"expandAll\": {\n            \"description\": \"Expand all groups.\"\n        },\n        \"collapseAll\": {\n            \"description\": \"Collapse all groups.\"\n        },\n        \"setRowNodeExpanded\": {\n            \"description\": \"Expand or collapse a specific row node.\"\n        },\n        \"onGroupExpandedOrCollapsed\": {\n            \"description\": \"If after getting the model, you expand or collapse a group, call this method to inform the grid. It will work out the final set of 'to be displayed' rows again (i.e. expand or collapse the group visually).\"\n        }\n    },\n    \"rowDrag\": {\n        \"meta\": {\n            \"displayName\": \"Row Drag\"\n        },\n        \"setSuppressRowDrag\": {\n            \"description\": \"Sets the `suppressRowDrag` property.\",\n            \"more\": {\n                \"name\": \"Suppress Row Drag\",\n                \"url\": \"/row-dragging/#suppress-row-drag\"\n            }\n        },\n        \"setSuppressMoveWhenRowDragging\": {\n            \"description\": \"Sets the `suppressMoveWhenRowDragging` property.\",\n            \"more\": {\n                \"name\": \"Suppress Move When Dragging\",\n                \"url\": \"/row-dragging/#suppress-move-when-dragging\"\n            }\n        },\n        \"addRowDropZone\": {\n            \"description\": \"Adds a drop zone outside of the grid where rows can be dropped.\",\n            \"more\": {\n                \"name\": \"Row Dragging to an External DropZone\",\n                \"url\": \"/row-dragging-to-external-dropzone/\"\n            }\n        },\n        \"removeRowDropZone\": {\n            \"description\": \"Removes an external drop zone added by `addRowDropZone`.\",\n            \"more\": {\n                \"name\": \"Row Dragging to an External DropZone\",\n                \"url\": \"/row-dragging-to-external-dropzone/\"\n            }\n        },\n        \"getRowDropZoneParams\": {\n            \"description\": \"Returns the `RowDropZoneParams` to be used by another grid's `addRowDropZone` method.\",\n            \"more\": {\n                \"name\": \"Row Dragging Between Grids\",\n                \"url\": \"/row-dragging-to-grid/\"\n            }\n        }\n    },\n    \"rendering\": {\n        \"meta\": {\n            \"displayName\": \"Rendering\"\n        },\n        \"getRenderedNodes\": {\n            \"description\": \"Retrieve rendered nodes. Due to virtualisation this will contain only the current visible rows and those in the buffer.\"\n        },\n        \"getCellRendererInstances\": {\n            \"description\": \"Returns the list of active [Cell Renderer Instances](/component-cell-renderer/#accessing-cell-renderer-instances).\"\n        },\n        \"getCellEditorInstances\": {\n            \"description\": \"Returns the list of active [Cell Editor Instances](/component-cell-editor/#accessing-cell-editor-instances).\"\n        },\n        \"getSizesForCurrentTheme\": {\n            \"description\": \"Gets the sizes that various UI elements will be rendered at with the current theme. If you override the row or header height using `gridOptions`, the override value you provided will be returned.\"\n        }\n    },\n    \"scrolling\": {\n        \"meta\": {\n            \"displayName\": \"Scrolling\"\n        },\n        \"setAlwaysShowHorizontalScroll\": {\n            \"description\": \"If `true`, the horizontal scrollbar will always be present, even if not required. Otherwise, it will only be displayed when necessary.\"\n        },\n        \"setAlwaysShowVerticalScroll\": {\n            \"description\": \"If `true`, the vertical scrollbar will always be present, even if not required. Otherwise it will only be displayed when necessary.\"\n        },\n        \"ensureIndexVisible\": {\n            \"description\": \"Ensures the row index is visible by vertically scrolling the grid. If a position of `'top'`, `'middle'` or `'bottom'` is supplied, the grid will scroll the grid to place the row at the top, middle or bottom respectively. Otherwise, the grid will do the minimum scrolling possible to show the row, i.e. if the grid needs to scroll up then it will scroll so that the row is at the top, if the grid needs to scroll down then it will scroll so that the row is at the bottom, if the row is already in view then the grid will do nothing.\"\n        },\n        \"ensureNodeVisible\": {\n            \"description\": \"Ensures a row node is visible, scrolling the grid if needed. Provide either a) the node, b) the data object, or c) a comparator function (that takes the node as a parameter, and returns `true` for match or `false` for no match).\"\n        },\n        \"ensureColumnVisible\": {\n            \"description\": \"Ensures the column is visible, scrolling the table if needed.\"\n        },\n        \"getHorizontalPixelRange\": {\n            \"description\": \"Returns an object with two properties:<ul class='content'><li>`left`: The left pixel position of the current scroll in the grid</li><li>`right`: The right pixel position of the current scroll in the grid</li></ul>\"\n        },\n        \"getVerticalPixelRange\": {\n            \"description\": \"Returns an object with two properties:<ul class='content'><li>`top`: The top pixel position of the current scroll in the grid</li><li>`bottom`: The bottom pixel position of the current scroll in the grid</li></ul>\"\n        }\n    },\n    \"infiniteScrolling\": {\n        \"meta\": {\n            \"displayName\": \"Infinite Scrolling\"\n        },\n        \"refreshInfiniteCache\": {\n            \"description\": \"Marks all the currently loaded blocks in the cache for reload. If you have 10 blocks in the cache, all 10 will be marked for reload. The old data will continue to be displayed until the new data is loaded.\"\n        },\n        \"purgeInfiniteCache\": {\n            \"description\": \"Purges the cache. The grid is then told to refresh. Only the blocks required to display the current data on screen are fetched (typically no more than 2). The grid will display nothing while the new blocks are loaded. Use this to immediately remove the old data from the user.\"\n        },\n        \"getInfiniteRowCount\": {\n            \"description\": \"The row count defines how many rows the grid allows scrolling to.\"\n        },\n        \"isLastRowIndexKnown\": {\n            \"description\": \"Returns `true` if grid allows for scrolling past the last row to load more rows, thus providing infinite scroll.\"\n        },\n        \"setRowCount\": {\n            \"description\": \"Sets the `rowCount` and `lastRowIndexKnown` properties. The second parameter, `lastRowIndexKnown`, is optional and if left out, only `rowCount` is set. Set `rowCount` to adjust the height of the vertical scroll. Set `lastRowIndexKnown` to enable / disable searching for more rows. Use this method if you add or remove rows into the dataset and need to reset the number of rows or put the data back into 'look for data' mode.\"\n        },\n        \"getCacheBlockState\": {\n            \"description\": \"Returns an object representing the state of the cache. This is useful for debugging and understanding how the cache is working.\"\n        }\n    },\n    \"overlays\": {\n        \"meta\": {\n            \"displayName\": \"Overlays\"\n        },\n        \"showLoadingOverlay\": {\n            \"description\": \"Show the 'loading' overlay.\"\n        },\n        \"showNoRowsOverlay\": {\n            \"description\": \"Show the 'no rows' overlay.\"\n        },\n        \"hideOverlay\": {\n            \"description\": \"Hides the overlay if showing.\"\n        }\n    },\n    \"clipboard\": {\n        \"meta\": {\n            \"displayName\": \"Clipboard\"\n        },\n        \"copySelectedRangeToClipboard\": {\n            \"description\": \"Copies the selected ranges to the clipboard.\"\n        },\n        \"copySelectedRangeDown\": {\n            \"description\": \"Copies the selected range down, similar to <kbd>Ctrl</kbd>+<kbd>D</kbd> in Excel.\"\n        },\n        \"copySelectedRowsToClipboard\": {\n            \"description\": \"Copies the selected rows to the clipboard. Set `includeHeaders = true` to include the headers (default is `false`). Set `columnKeys` to the list of columns if you want just specific columns.\"\n        }\n    },\n    \"pagination\": {\n        \"meta\": {\n            \"displayName\": \"Pagination\"\n        },\n        \"paginationIsLastPageFound\": {\n            \"description\": \"Returns `true` when the last page is known; this will always be the case if you are using the [Client-Side Row Model](/client-side-model/) for pagination. Returns `false` when the last page is not known; this only happens when using [Infinite Row Model](/infinite-scrolling/).\"\n        },\n        \"paginationGetPageSize\": {\n            \"description\": \"Returns how many rows are being shown per page.\"\n        },\n        \"paginationSetPageSize\": {\n            \"description\": \"Sets the `paginationPageSize`, then re-paginates the grid so the changes are applied immediately.\"\n        },\n        \"paginationGetCurrentPage\": {\n            \"description\": \"Returns the 0-based index of the page which is showing.\"\n        },\n        \"paginationGetTotalPages\": {\n            \"description\": \"Returns the total number of pages. Returns `null` if `paginationIsLastPageFound() === false`.\"\n        },\n        \"paginationGetRowCount\": {\n            \"description\": \"The total number of rows. Returns `null` if `paginationIsLastPageFound() === false`.\"\n        },\n        \"paginationGoToPage\": {\n            \"description\": \"Goes to the specified page. If the page requested doesn't exist, it will go to the last page.\"\n        },\n        \"paginationGoToNextPage\": {\n            \"description\": \"Navigates to the next page.\"\n        },\n        \"paginationGoToPreviousPage\": {\n            \"description\": \"Navigates to the previous page.\"\n        },\n        \"paginationGoToFirstPage\": {\n            \"description\": \"Navigates to the first page.\"\n        },\n        \"paginationGoToLastPage\": {\n            \"description\": \"Navigates to the last page.\"\n        }\n    },\n    \"headers\": {\n        \"meta\": {\n            \"displayName\": \"Headers\"\n        },\n        \"setHeaderHeight\": {\n            \"description\": \"Sets the height in pixels for the row containing the column label header.\"\n        },\n        \"setGroupHeaderHeight\": {\n            \"description\": \"Sets the height in pixels for the rows containing header column groups.\"\n        },\n        \"setFloatingFiltersHeight\": {\n            \"description\": \"Sets the height in pixels for the row containing the floating filters.\"\n        },\n        \"setPivotHeaderHeight\": {\n            \"description\": \"Sets the height in pixels for the row containing the columns when in pivot mode.\"\n        },\n        \"setPivotGroupHeaderHeight\": {\n            \"description\": \"Sets the height in pixels for the row containing header column groups when in pivot mode.\"\n        }\n    },\n    \"UndoRedo\": {\n        \"meta\": {\n            \"displayName\": \"Undo / Redo\",\n            \"page\": {\n                \"name\": \"Undo/Redo Edits\",\n                \"url\": \"/undo-redo-edits/\"\n            }\n        },\n        \"undoCellEditing\": {\n            \"description\": \"Reverts the last cell edit.\"\n        },\n        \"redoCellEditing\": {\n            \"description\": \"Re-applies the most recently undone cell edit.\"\n        },\n        \"getCurrentUndoSize\": {\n            \"description\": \"Returns current number of available cell edit undo operations.\"\n        },\n        \"getCurrentRedoSize\": {\n            \"description\": \"Returns current number of available cell edit redo operations.\"\n        }\n    },\n    \"charts\": {\n        \"meta\": {\n            \"displayName\": \"Charts\"\n        },\n        \"createRangeChart\": {\n            \"description\": \"Used to programmatically create charts from a range.\",\n            \"more\": {\n                \"name\": \"Range Chart API\",\n                \"url\": \"/integrated-charts-api/#range-charts\"\n            }\n        },\n        \"createPivotChart\": {\n            \"description\": \"Used to programmatically create pivot charts from a grid.\",\n            \"more\": {\n                \"name\": \"Pivot Chart API\",\n                \"url\": \"/integrated-charts-api/#pivot-charts\"\n            }\n        },\n        \"createCrossFilterChart\": {\n            \"description\": \"Used to programmatically create cross filter charts from a range.\",\n            \"more\": {\n                \"name\": \"Cross-filter API\",\n                \"url\": \"/integrated-charts-cross-filtering/#cross-filter-api\"\n            }\n        },\n        \"getChartRef\": {\n            \"description\": \"Returns the `ChartRef` using the supplied `chartId`.\"\n        },\n        \"getChartModels\": {\n            \"description\": \"Returns a list of models with information about the charts that are currently rendered from the grid.\",\n            \"more\": {\n                \"name\": \"Saving and Restoring Charts\",\n                \"url\": \"/integrated-charts-api/#saving-and-restoring-charts\"\n            }\n        },\n        \"restoreChart\": {\n            \"description\": \"Restores a chart using the `ChartModel` that was previously obtained from `getChartModels()`.\",\n            \"more\": {\n                \"name\": \"Saving and Restoring Charts\",\n                \"url\": \"/integrated-charts-api/#saving-and-restoring-charts\"\n            }\n        },\n        \"getChartImageDataURL\": {\n            \"description\": \"Returns a string containing the requested data URL which contains a representation of the chart image.\",\n            \"more\": {\n                \"name\": \"Downloading Chart Image\",\n                \"url\": \"/integrated-charts-api/#downloading-chart-image\"\n            }\n        }\n    },\n    \"miscellaneous\": {\n        \"meta\": {\n            \"displayName\": \"Miscellaneous\"\n        },\n        \"setPopupParent\": {\n            \"description\": \"DOM element to use as the [popup parent](/context-menu/#popup-parent) for grid popups (context menu, column menu etc).\"\n        },\n        \"addRenderedRowListener\": {\n            \"description\": \"Registers a callback to a virtual row. A virtual row is a row that is visually rendered on the screen (rows that are not visible because of the scroll position are not rendered). Unlike normal events, you do not need to unregister rendered row listeners. When the rendered row is removed from the grid, all associated rendered row listeners will also be removed. Currently supports only one event, `virtualRowRemoved`; listen for this event if your `cellRenderer` needs to do cleanup when the row no longer exists.\"\n        },\n        \"isToolPanelShowing\": {\n            \"description\": \"Returns `true` if the tool panel is showing, otherwise `false`.\"\n        },\n        \"getToolPanelInstance\": {\n            \"description\": \"Gets the tool panel instance corresponding to the supplied `id`.\",\n            \"more\": {\n                \"name\": \"Expand / Collapse Column Groups\",\n                \"url\": \"/tool-panel-columns/#expand--collapse-column-groups\"\n            }\n        },\n        \"getValue\": {\n            \"description\": \"Gets the value for a column for a particular `rowNode` (row). This is useful if you want the raw value of a cell e.g. if implementing your own CSV export.\"\n        },\n        \"destroy\": {\n            \"description\": \"Will destroy the grid and release resources. If you are using a framework you do not need to call this, as the grid links in with the framework lifecycle. However if you are using Web Components or native JavaScript, you do need to call this, to avoid a memory leak in your application.\"\n        },\n        \"showColumnMenuAfterButtonClick\": {\n            \"description\": \"Shows the column menu after and positions it relative to the provided button element. Use in conjunction with your own header template.\"\n        },\n        \"showColumnMenuAfterMouseClick\": {\n            \"description\": \"Shows the column menu after and positions it relative to the mouse event. Use in conjunction with your own header template.\"\n        },\n        \"resetRowHeights\": {\n            \"description\": \"Tells the grid to recalculate the row heights.\"\n        },\n        \"onRowHeightChanged\": {\n            \"description\": \"Tells the grid a row height has changed. To be used after calling `rowNode.setRowHeight(newHeight)`.\"\n        },\n        \"addAggFunc\": {\n            \"description\": \"Add an aggregation function with the specified key.\"\n        },\n        \"addAggFuncs\": {\n            \"description\": \"Add aggregations function with the specified keys.\"\n        },\n        \"clearAggFuncs\": {\n            \"description\": \"Clears all aggregation functions (including those provided by the grid).\"\n        },\n        \"hidePopupMenu\": {\n            \"description\": \"Hides any visible [context menu](/context-menu/) or [column menu](/column-menu/).\"\n        },\n        \"setEnableCellTextSelection\": {\n            \"description\": \"Sets the `enableCellTextSelection` property.\",\n            \"more\": {\n                \"name\": \"Cell Text Selection\",\n                \"url\": \"/selection-overview/#cell-text-selection\"\n            }\n        },\n        \"isAnimationFrameQueueEmpty\": {\n            \"description\": \"Returns `true` when there are no more animation frames left to process.\"\n        },\n        \"refreshServerSideStore\": {\n            \"description\": \"Refresh a server-side store.\",\n            \"more\": {\n                \"name\": \"Purging Groups\",\n                \"url\": \"/server-side-model-refresh/\"\n            }\n        },\n        \"getServerSideStoreState\": {\n            \"description\": \"Returns info on all server side stores.\",\n            \"more\": {\n                \"name\": \"Store State\",\n                \"url\": \"/server-side-model-grouping/#store-state--store-info\"\n            }\n        },\n        \"retryServerSideLoads\": {\n            \"description\": \"Gets all failed server side loads to retry.\",\n            \"more\": {\n                \"name\": \"Retry Loads\",\n                \"url\": \"/server-side-model-retry/\"\n            }\n        },\n        \"setFillHandleDirection\": {\n            \"description\": \"Sets the preferred direction for the selection fill handle.\",\n            \"more\": {\n                \"name\": \"Fill Handle\",\n                \"url\": \"/range-selection-fill-handle/\"\n            }\n        },\n        \"setGridAriaProperty\": {\n            \"description\": \"Sets an ARIA property in the grid panel (element with `role=\\\"grid\\\"`), and removes an ARIA property when the value is null.<br /><br />Example:<br />`api.setGridAriaProperty('label', 'my grid')` will set `aria-label=\\\"my grid\\\"`.<br />`api.setGridAriaProperty('label', null)` will remove the `aria-label` attribute from the grid element.\"\n        }\n    }\n}"}},{"relativePath":"grid-api/grid-api.AUTO.json","internal":{"content":"{\n  \"registerOverlayWrapperComp\": {\n    \"type\": {\n      \"arguments\": { \"overlayWrapperComp\": \"OverlayWrapperComponent\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"registerHeaderRootComp\": {\n    \"type\": {\n      \"arguments\": { \"headerRootComp\": \"HeaderRootComp\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"registerSideBarComp\": {\n    \"type\": { \"arguments\": { \"sideBarComp\": \"ISideBar\" }, \"returnType\": \"void\" }\n  },\n  \"___getAlignedGridService\": {\n    \"description\": \"/** Used internally by grid. Not intended to be used by the client. Interface may change between releases. */\",\n    \"type\": { \"arguments\": {}, \"returnType\": \"AlignedGridsService\" }\n  },\n  \"addDetailGridInfo\": {\n    \"type\": {\n      \"arguments\": { \"id\": \"string\", \"gridInfo\": \"DetailGridInfo\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"removeDetailGridInfo\": {\n    \"type\": { \"arguments\": { \"id\": \"string\" }, \"returnType\": \"void\" }\n  },\n  \"getDetailGridInfo\": {\n    \"type\": {\n      \"arguments\": { \"id\": \"string\" },\n      \"returnType\": \"DetailGridInfo | undefined\"\n    }\n  },\n  \"forEachDetailGridInfo\": {\n    \"type\": {\n      \"arguments\": {\n        \"callback\": \"(gridInfo: DetailGridInfo, index: number) => void\"\n      }\n    }\n  },\n  \"getDataAsCsv\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"CsvExportParams\" },\n      \"returnType\": \"string | undefined\"\n    }\n  },\n  \"exportDataAsCsv\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"CsvExportParams\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"getDataAsExcel\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"ExcelExportParams\" },\n      \"returnType\": \"string | Blob | undefined\"\n    }\n  },\n  \"exportDataAsExcel\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"ExcelExportParams\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"getSheetDataForExcel\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"ExcelExportParams\" },\n      \"returnType\": \"string | undefined\"\n    }\n  },\n  \"getMultipleSheetsAsExcel\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"ExcelExportMultipleSheetParams\" },\n      \"returnType\": \"Blob | undefined\"\n    }\n  },\n  \"exportMultipleSheetsAsExcel\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"ExcelExportMultipleSheetParams\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setEnterpriseDatasource\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"arguments\": { \"datasource\": \"IServerSideDatasource\" } }\n  },\n  \"setGridAriaProperty\": {\n    \"type\": {\n      \"arguments\": { \"property\": \"string\", \"value\": \"string | null\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setServerSideDatasource\": {\n    \"type\": { \"arguments\": { \"datasource\": \"IServerSideDatasource\" } }\n  },\n  \"setDatasource\": { \"type\": { \"arguments\": { \"datasource\": \"IDatasource\" } } },\n  \"setViewportDatasource\": {\n    \"type\": { \"arguments\": { \"viewportDatasource\": \"IViewportDatasource\" } }\n  },\n  \"setRowData\": { \"type\": { \"arguments\": { \"rowData\": \"any[]\" } } },\n  \"setFloatingTopRowData\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"arguments\": { \"rows\": \"any[]\" }, \"returnType\": \"void\" }\n  },\n  \"setFloatingBottomRowData\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"arguments\": { \"rows\": \"any[]\" }, \"returnType\": \"void\" }\n  },\n  \"getFloatingTopRowCount\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"arguments\": {}, \"returnType\": \"number\" }\n  },\n  \"getFloatingBottomRowCount\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"arguments\": {}, \"returnType\": \"number\" }\n  },\n  \"getFloatingTopRow\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": {\n      \"arguments\": { \"index\": \"number\" },\n      \"returnType\": \"RowNode | undefined\"\n    }\n  },\n  \"getFloatingBottomRow\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": {\n      \"arguments\": { \"index\": \"number\" },\n      \"returnType\": \"RowNode | undefined\"\n    }\n  },\n  \"setPinnedTopRowData\": {\n    \"type\": { \"arguments\": { \"rows\": \"any[]\" }, \"returnType\": \"void\" }\n  },\n  \"setPinnedBottomRowData\": {\n    \"type\": { \"arguments\": { \"rows\": \"any[]\" }, \"returnType\": \"void\" }\n  },\n  \"getPinnedTopRowCount\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"number\" }\n  },\n  \"getPinnedBottomRowCount\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"number\" }\n  },\n  \"getPinnedTopRow\": {\n    \"type\": {\n      \"arguments\": { \"index\": \"number\" },\n      \"returnType\": \"RowNode | undefined\"\n    }\n  },\n  \"getPinnedBottomRow\": {\n    \"type\": {\n      \"arguments\": { \"index\": \"number\" },\n      \"returnType\": \"RowNode | undefined\"\n    }\n  },\n  \"setColumnDefs\": {\n    \"type\": {\n      \"arguments\": {\n        \"colDefs\": \"(ColDef | ColGroupDef)[]\",\n        \"source\": \"ColumnEventType = \\\"api\\\"\"\n      }\n    }\n  },\n  \"setAutoGroupColumnDef\": {\n    \"type\": {\n      \"arguments\": { \"colDef\": \"ColDef\", \"source\": \"ColumnEventType = \\\"api\\\"\" }\n    }\n  },\n  \"expireValueCache\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"getVerticalPixelRange\": {\n    \"type\": {\n      \"arguments\": {},\n      \"returnType\": \"{ top: number, bottom: number; }\"\n    }\n  },\n  \"getHorizontalPixelRange\": {\n    \"type\": {\n      \"arguments\": {},\n      \"returnType\": \"{ left: number, right: number; }\"\n    }\n  },\n  \"setAlwaysShowHorizontalScroll\": {\n    \"type\": { \"arguments\": { \"show\": \"boolean\" } }\n  },\n  \"setAlwaysShowVerticalScroll\": {\n    \"type\": { \"arguments\": { \"show\": \"boolean\" } }\n  },\n  \"refreshToolPanel\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"refreshCells\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"RefreshCellsParams = {}\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"flashCells\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"FlashCellsParams = {}\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"redrawRows\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"RedrawRowsParams = {}\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"refreshView\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"arguments\": {} }\n  },\n  \"refreshRows\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"arguments\": { \"rowNodes\": \"RowNode[]\" }, \"returnType\": \"void\" }\n  },\n  \"rowDataChanged\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"arguments\": { \"rows\": \"any\" } }\n  },\n  \"softRefreshView\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"arguments\": {} }\n  },\n  \"refreshGroupRows\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"arguments\": {} }\n  },\n  \"setFunctionsReadOnly\": {\n    \"type\": { \"arguments\": { \"readOnly\": \"boolean\" } }\n  },\n  \"refreshHeader\": { \"type\": { \"arguments\": {} } },\n  \"isAnyFilterPresent\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" }\n  },\n  \"isAdvancedFilterPresent\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" }\n  },\n  \"isColumnFilterPresent\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" }\n  },\n  \"isQuickFilterPresent\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" }\n  },\n  \"getModel\": { \"type\": { \"arguments\": {}, \"returnType\": \"IRowModel\" } },\n  \"setRowNodeExpanded\": {\n    \"type\": {\n      \"arguments\": { \"rowNode\": \"RowNode\", \"expanded\": \"boolean\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"onGroupExpandedOrCollapsed\": {\n    \"type\": { \"arguments\": { \"deprecated_refreshFromIndex\": \"any\" } }\n  },\n  \"refreshInMemoryRowModel\": {\n    \"type\": { \"arguments\": { \"step\": \"string\" }, \"returnType\": \"any\" }\n  },\n  \"refreshClientSideRowModel\": {\n    \"type\": { \"arguments\": { \"step\": \"string\" }, \"returnType\": \"any\" }\n  },\n  \"isAnimationFrameQueueEmpty\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" }\n  },\n  \"flushAllAnimationFrames\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"getRowNode\": {\n    \"type\": {\n      \"arguments\": { \"id\": \"string\" },\n      \"returnType\": \"RowNode | undefined\"\n    }\n  },\n  \"getSizesForCurrentTheme\": { \"type\": { \"arguments\": {} } },\n  \"expandAll\": { \"type\": { \"arguments\": {} } },\n  \"collapseAll\": { \"type\": { \"arguments\": {} } },\n  \"getToolPanelInstance\": {\n    \"type\": {\n      \"arguments\": { \"id\": \"string\" },\n      \"returnType\": \"IToolPanel | undefined\"\n    }\n  },\n  \"addVirtualRowListener\": {\n    \"type\": {\n      \"arguments\": {\n        \"eventName\": \"string\",\n        \"rowIndex\": \"number\",\n        \"callback\": \"Function\"\n      }\n    }\n  },\n  \"addRenderedRowListener\": {\n    \"type\": {\n      \"arguments\": {\n        \"eventName\": \"string\",\n        \"rowIndex\": \"number\",\n        \"callback\": \"Function\"\n      }\n    }\n  },\n  \"setQuickFilter\": {\n    \"type\": { \"arguments\": { \"newFilter\": \"any\" }, \"returnType\": \"void\" }\n  },\n  \"selectIndex\": {\n    \"type\": {\n      \"arguments\": {\n        \"index\": \"any\",\n        \"tryMulti\": \"any\",\n        \"suppressEvents\": \"any\"\n      }\n    }\n  },\n  \"deselectIndex\": {\n    \"type\": {\n      \"arguments\": { \"index\": \"number\", \"suppressEvents\": \"boolean = false\" }\n    }\n  },\n  \"selectNode\": {\n    \"type\": {\n      \"arguments\": {\n        \"node\": \"RowNode\",\n        \"tryMulti\": \"boolean = false\",\n        \"suppressEvents\": \"boolean = false\"\n      }\n    }\n  },\n  \"deselectNode\": {\n    \"type\": {\n      \"arguments\": { \"node\": \"RowNode\", \"suppressEvents\": \"boolean = false\" }\n    }\n  },\n  \"selectAll\": { \"type\": { \"arguments\": {} } },\n  \"deselectAll\": { \"type\": { \"arguments\": {} } },\n  \"selectAllFiltered\": { \"type\": { \"arguments\": {} } },\n  \"deselectAllFiltered\": { \"type\": { \"arguments\": {} } },\n  \"recomputeAggregates\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"sizeColumnsToFit\": { \"type\": { \"arguments\": {} } },\n  \"showLoadingOverlay\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"showNoRowsOverlay\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"hideOverlay\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"isNodeSelected\": { \"type\": { \"arguments\": { \"node\": \"any\" } } },\n  \"getSelectedNodesById\": {\n    \"type\": {\n      \"arguments\": {},\n      \"returnType\": \"{ [nodeId: number]: RowNode; } | null\"\n    }\n  },\n  \"getSelectedNodes\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"RowNode[]\" }\n  },\n  \"getSelectedRows\": { \"type\": { \"arguments\": {}, \"returnType\": \"any[]\" } },\n  \"getBestCostNodeSelection\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"RowNode[] | undefined\" }\n  },\n  \"getRenderedNodes\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"RowNode[]\" }\n  },\n  \"ensureColIndexVisible\": { \"type\": { \"arguments\": { \"index\": \"any\" } } },\n  \"ensureColumnVisible\": {\n    \"type\": { \"arguments\": { \"key\": \"string | Column\" } }\n  },\n  \"ensureIndexVisible\": {\n    \"type\": { \"arguments\": { \"index\": \"any\", \"position\": \"string | null\" } }\n  },\n  \"ensureNodeVisible\": {\n    \"type\": {\n      \"arguments\": { \"comparator\": \"any\", \"position\": \"string | null = null\" }\n    }\n  },\n  \"forEachLeafNode\": {\n    \"type\": { \"arguments\": { \"callback\": \"(rowNode: RowNode) => void\" } }\n  },\n  \"forEachNode\": {\n    \"type\": {\n      \"arguments\": { \"callback\": \"(rowNode: RowNode, index: number) => void\" }\n    }\n  },\n  \"forEachNodeAfterFilter\": {\n    \"type\": {\n      \"arguments\": { \"callback\": \"(rowNode: RowNode, index: number) => void\" }\n    }\n  },\n  \"forEachNodeAfterFilterAndSort\": {\n    \"type\": {\n      \"arguments\": { \"callback\": \"(rowNode: RowNode, index: number) => void\" }\n    }\n  },\n  \"getFilterApiForColDef\": {\n    \"type\": { \"arguments\": { \"colDef\": \"any\" }, \"returnType\": \"any\" }\n  },\n  \"getFilterInstance\": {\n    \"type\": {\n      \"arguments\": {\n        \"key\": \"string | Column\",\n        \"callback\": \"(filter: IFilterComp) => void\"\n      },\n      \"returnType\": \"IFilterComp | null | undefined\"\n    }\n  },\n  \"getFilterApi\": { \"type\": { \"arguments\": { \"key\": \"string | Column\" } } },\n  \"destroyFilter\": { \"type\": { \"arguments\": { \"key\": \"string | Column\" } } },\n  \"getStatusPanel\": {\n    \"type\": {\n      \"arguments\": { \"key\": \"string\" },\n      \"returnType\": \"IStatusPanelComp | undefined\"\n    }\n  },\n  \"getColumnDef\": { \"type\": { \"arguments\": { \"key\": \"string | Column\" } } },\n  \"getColumnDefs\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"(ColDef | ColGroupDef)[]\" }\n  },\n  \"onFilterChanged\": { \"type\": { \"arguments\": {} } },\n  \"onSortChanged\": { \"type\": { \"arguments\": {} } },\n  \"setSortModel\": {\n    \"type\": {\n      \"arguments\": { \"sortModel\": \"any\", \"source\": \"ColumnEventType = \\\"api\\\"\" }\n    }\n  },\n  \"getSortModel\": { \"type\": { \"arguments\": {} } },\n  \"setFilterModel\": { \"type\": { \"arguments\": { \"model\": \"any\" } } },\n  \"getFilterModel\": { \"type\": { \"arguments\": {} } },\n  \"getFocusedCell\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"CellPosition | null\" }\n  },\n  \"clearFocusedCell\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"setFocusedCell\": {\n    \"type\": {\n      \"arguments\": {\n        \"rowIndex\": \"number\",\n        \"colKey\": \"string | Column\",\n        \"floating\": \"string\"\n      }\n    }\n  },\n  \"setSuppressRowDrag\": {\n    \"type\": { \"arguments\": { \"value\": \"boolean\" }, \"returnType\": \"void\" }\n  },\n  \"setSuppressMoveWhenRowDragging\": {\n    \"type\": { \"arguments\": { \"value\": \"boolean\" }, \"returnType\": \"void\" }\n  },\n  \"setSuppressRowClickSelection\": {\n    \"type\": { \"arguments\": { \"value\": \"boolean\" }, \"returnType\": \"void\" }\n  },\n  \"addRowDropZone\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"RowDropZoneParams\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"removeRowDropZone\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"RowDropZoneParams\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"getRowDropZoneParams\": {\n    \"type\": {\n      \"arguments\": { \"events\": \"RowDropZoneEvents\" },\n      \"returnType\": \"RowDropZoneParams\"\n    }\n  },\n  \"setHeaderHeight\": { \"type\": { \"arguments\": { \"headerHeight\": \"number\" } } },\n  \"setDomLayout\": { \"type\": { \"arguments\": { \"domLayout\": \"string\" } } },\n  \"setEnableCellTextSelection\": {\n    \"type\": { \"arguments\": { \"selectable\": \"boolean\" } }\n  },\n  \"setFillHandleDirection\": {\n    \"type\": { \"arguments\": { \"direction\": \"'x' | 'y' | 'xy'\" } }\n  },\n  \"setGroupHeaderHeight\": {\n    \"type\": { \"arguments\": { \"headerHeight\": \"number\" } }\n  },\n  \"setFloatingFiltersHeight\": {\n    \"type\": { \"arguments\": { \"headerHeight\": \"number\" } }\n  },\n  \"setPivotGroupHeaderHeight\": {\n    \"type\": { \"arguments\": { \"headerHeight\": \"number\" } }\n  },\n  \"setIsExternalFilterPresent\": {\n    \"type\": {\n      \"arguments\": { \"isExternalFilterPresentFunc\": \"() => boolean\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setDoesExternalFilterPass\": {\n    \"type\": {\n      \"arguments\": {\n        \"doesExternalFilterPassFunc\": \"(node: RowNode) => boolean\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setNavigateToNextCell\": {\n    \"type\": {\n      \"arguments\": {\n        \"navigateToNextCellFunc\": \"(params: NavigateToNextCellParams) => CellPosition\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setTabToNextCell\": {\n    \"type\": {\n      \"arguments\": {\n        \"tabToNextCellFunc\": \"(params: TabToNextCellParams) => CellPosition\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setTabToNextHeader\": {\n    \"type\": {\n      \"arguments\": {\n        \"tabToNextHeaderFunc\": \"(params: TabToNextHeaderParams) => HeaderPosition\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setNavigateToNextHeader\": {\n    \"type\": {\n      \"arguments\": {\n        \"navigateToNextHeaderFunc\": \"(params: NavigateToNextHeaderParams) => HeaderPosition\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setGroupRowAggNodes\": {\n    \"type\": {\n      \"arguments\": { \"groupRowAggNodesFunc\": \"(nodes: RowNode[]) => any\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setGetBusinessKeyForNode\": {\n    \"type\": {\n      \"arguments\": {\n        \"getBusinessKeyForNodeFunc\": \"(nodes: RowNode) => string\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setGetChildCount\": {\n    \"type\": {\n      \"arguments\": { \"getChildCountFunc\": \"(dataItem: any) => number\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setProcessRowPostCreate\": {\n    \"type\": {\n      \"arguments\": {\n        \"processRowPostCreateFunc\": \"(params: ProcessRowParams) => void\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setGetRowNodeId\": {\n    \"type\": {\n      \"arguments\": { \"getRowNodeIdFunc\": \"GetRowNodeIdFunc\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setGetRowClass\": {\n    \"type\": {\n      \"arguments\": {\n        \"rowClassFunc\": \"(params: RowClassParams) => string | string[]\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setIsFullWidthCell\": {\n    \"type\": {\n      \"arguments\": { \"isFullWidthCellFunc\": \"(rowNode: RowNode) => boolean\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setIsRowSelectable\": {\n    \"type\": {\n      \"arguments\": { \"isRowSelectableFunc\": \"IsRowSelectable\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setIsRowMaster\": {\n    \"type\": {\n      \"arguments\": { \"isRowMasterFunc\": \"IsRowMaster\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setPostSort\": {\n    \"type\": {\n      \"arguments\": { \"postSortFunc\": \"(nodes: RowNode[]) => void\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setGetDocument\": {\n    \"type\": {\n      \"arguments\": { \"getDocumentFunc\": \"() => Document\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setGetContextMenuItems\": {\n    \"type\": {\n      \"arguments\": { \"getContextMenuItemsFunc\": \"GetContextMenuItems\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setGetMainMenuItems\": {\n    \"type\": {\n      \"arguments\": { \"getMainMenuItemsFunc\": \"GetMainMenuItems\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setProcessCellForClipboard\": {\n    \"type\": {\n      \"arguments\": {\n        \"processCellForClipboardFunc\": \"(params: ProcessCellForExportParams) => any\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setSendToClipboard\": {\n    \"type\": {\n      \"arguments\": {\n        \"sendToClipboardFunc\": \"(params: { data: string; }) => void\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setProcessCellFromClipboard\": {\n    \"type\": {\n      \"arguments\": {\n        \"processCellFromClipboardFunc\": \"(params: ProcessCellForExportParams) => any\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setProcessSecondaryColDef\": {\n    \"type\": {\n      \"arguments\": { \"processSecondaryColDefFunc\": \"(colDef: ColDef) => void\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setProcessSecondaryColGroupDef\": {\n    \"type\": {\n      \"arguments\": {\n        \"processSecondaryColGroupDefFunc\": \"(colDef: ColDef) => void\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setPostProcessPopup\": {\n    \"type\": {\n      \"arguments\": {\n        \"postProcessPopupFunc\": \"(params: PostProcessPopupParams) => void\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setDefaultGroupOrderComparator\": {\n    \"type\": {\n      \"arguments\": {\n        \"defaultGroupOrderComparatorFunc\": \"(nodeA: RowNode, nodeB: RowNode) => number\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setProcessChartOptions\": {\n    \"type\": {\n      \"arguments\": {\n        \"processChartOptionsFunc\": \"(params: ProcessChartOptionsParams) => ChartOptions<any>\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setGetChartToolbarItems\": {\n    \"type\": {\n      \"arguments\": { \"getChartToolbarItemsFunc\": \"GetChartToolbarItems\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setPaginationNumberFormatter\": {\n    \"type\": {\n      \"arguments\": {\n        \"paginationNumberFormatterFunc\": \"(params: PaginationNumberFormatterParams) => string\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setGetServerSideStoreParams\": {\n    \"type\": {\n      \"arguments\": {\n        \"getServerSideStoreParamsFunc\": \"(params: GetServerSideStoreParamsParams) => ServerSideStoreParams\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setIsServerSideGroupOpenByDefault\": {\n    \"type\": {\n      \"arguments\": {\n        \"isServerSideGroupOpenByDefaultFunc\": \"(params: IsServerSideGroupOpenByDefaultParams) => boolean\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setIsApplyServerSideTransaction\": {\n    \"type\": {\n      \"arguments\": {\n        \"isApplyServerSideTransactionFunc\": \"IsApplyServerSideTransaction\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setIsServerSideGroup\": {\n    \"type\": {\n      \"arguments\": { \"isServerSideGroupFunc\": \"IsServerSideGroup\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setGetServerSideGroupKey\": {\n    \"type\": {\n      \"arguments\": { \"getServerSideGroupKeyFunc\": \"GetServerSideGroupKey\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setGetRowStyle\": {\n    \"type\": {\n      \"arguments\": { \"rowStyleFunc\": \"(params: RowClassParams) => {}\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setGetRowHeight\": {\n    \"type\": {\n      \"arguments\": { \"rowHeightFunc\": \"(params: RowHeightParams) => number\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setPivotHeaderHeight\": {\n    \"type\": { \"arguments\": { \"headerHeight\": \"number\" } }\n  },\n  \"isSideBarVisible\": { \"type\": { \"arguments\": {} } },\n  \"setSideBarVisible\": { \"type\": { \"arguments\": { \"show\": \"boolean\" } } },\n  \"setSideBarPosition\": {\n    \"type\": { \"arguments\": { \"position\": \"'left' | 'right'\" } }\n  },\n  \"openToolPanel\": { \"type\": { \"arguments\": { \"key\": \"string\" } } },\n  \"closeToolPanel\": { \"type\": { \"arguments\": {} } },\n  \"getOpenedToolPanel\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"string | null\" }\n  },\n  \"getSideBar\": { \"type\": { \"arguments\": {}, \"returnType\": \"SideBarDef\" } },\n  \"setSideBar\": {\n    \"type\": { \"arguments\": { \"def\": \"SideBarDef\" }, \"returnType\": \"void\" }\n  },\n  \"setSuppressClipboardPaste\": {\n    \"type\": { \"arguments\": { \"value\": \"boolean\" }, \"returnType\": \"void\" }\n  },\n  \"isToolPanelShowing\": { \"type\": { \"arguments\": {} } },\n  \"doLayout\": { \"type\": { \"arguments\": {} } },\n  \"resetRowHeights\": { \"type\": { \"arguments\": {} } },\n  \"setGroupRemoveSingleChildren\": {\n    \"type\": { \"arguments\": { \"value\": \"boolean\" } }\n  },\n  \"setGroupRemoveLowestSingleChildren\": {\n    \"type\": { \"arguments\": { \"value\": \"boolean\" } }\n  },\n  \"onRowHeightChanged\": { \"type\": { \"arguments\": {} } },\n  \"getValue\": {\n    \"type\": {\n      \"arguments\": { \"colKey\": \"string | Column\", \"rowNode\": \"RowNode\" },\n      \"returnType\": \"any\"\n    }\n  },\n  \"addEventListener\": {\n    \"type\": {\n      \"arguments\": { \"eventType\": \"string\", \"listener\": \"Function\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"addGlobalListener\": {\n    \"type\": { \"arguments\": { \"listener\": \"Function\" }, \"returnType\": \"void\" }\n  },\n  \"removeEventListener\": {\n    \"type\": {\n      \"arguments\": { \"eventType\": \"string\", \"listener\": \"Function\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"removeGlobalListener\": {\n    \"type\": { \"arguments\": { \"listener\": \"Function\" }, \"returnType\": \"void\" }\n  },\n  \"dispatchEvent\": {\n    \"type\": { \"arguments\": { \"event\": \"AgEvent\" }, \"returnType\": \"void\" }\n  },\n  \"destroy\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"resetQuickFilter\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"getRangeSelections\": { \"type\": { \"arguments\": {}, \"returnType\": \"any\" } },\n  \"getCellRanges\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"CellRange[] | null\" }\n  },\n  \"camelCaseToHumanReadable\": {\n    \"type\": {\n      \"arguments\": { \"camelCase\": \"string\" },\n      \"returnType\": \"string | null\"\n    }\n  },\n  \"addRangeSelection\": {\n    \"type\": {\n      \"arguments\": { \"deprecatedNoLongerUsed\": \"any\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"addCellRange\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"CellRangeParams\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"clearRangeSelection\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"undoCellEditing\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"redoCellEditing\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"getCurrentUndoSize\": { \"type\": { \"arguments\": {}, \"returnType\": \"number\" } },\n  \"getCurrentRedoSize\": { \"type\": { \"arguments\": {}, \"returnType\": \"number\" } },\n  \"getChartModels\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"ChartModel[] | undefined\" }\n  },\n  \"getChartRef\": {\n    \"type\": {\n      \"arguments\": { \"chartId\": \"string\" },\n      \"returnType\": \"ChartRef | undefined\"\n    }\n  },\n  \"getChartImageDataURL\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"GetChartImageDataUrlParams\" },\n      \"returnType\": \"string | undefined\"\n    }\n  },\n  \"createRangeChart\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"CreateRangeChartParams\" },\n      \"returnType\": \"ChartRef | undefined\"\n    }\n  },\n  \"createCrossFilterChart\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"CreateRangeChartParams\" },\n      \"returnType\": \"ChartRef | undefined\"\n    }\n  },\n  \"restoreChart\": {\n    \"type\": {\n      \"arguments\": {\n        \"chartModel\": \"ChartModel\",\n        \"chartContainer\": \"HTMLElement\"\n      },\n      \"returnType\": \"ChartRef | undefined\"\n    }\n  },\n  \"createPivotChart\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"CreatePivotChartParams\" },\n      \"returnType\": \"ChartRef | undefined\"\n    }\n  },\n  \"copySelectedRowsToClipboard\": {\n    \"type\": {\n      \"arguments\": {\n        \"includeHeader\": \"boolean\",\n        \"columnKeys\": \"(string | Column)[]\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"copySelectedRangeToClipboard\": {\n    \"type\": {\n      \"arguments\": { \"includeHeader\": \"boolean\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"copySelectedRangeDown\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"showColumnMenuAfterButtonClick\": {\n    \"type\": {\n      \"arguments\": {\n        \"colKey\": \"string | Column\",\n        \"buttonElement\": \"HTMLElement\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"showColumnMenuAfterMouseClick\": {\n    \"type\": {\n      \"arguments\": {\n        \"colKey\": \"string | Column\",\n        \"mouseEvent\": \"MouseEvent | Touch\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"hidePopupMenu\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"setPopupParent\": {\n    \"type\": {\n      \"arguments\": { \"ePopupParent\": \"HTMLElement\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"tabToNextCell\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"tabToPreviousCell\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"getCellRendererInstances\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"GetCellRendererInstancesParams = {}\" },\n      \"returnType\": \"ICellRenderer[]\"\n    }\n  },\n  \"getCellEditorInstances\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"GetCellEditorInstancesParams = {}\" },\n      \"returnType\": \"ICellEditor[]\"\n    }\n  },\n  \"getEditingCells\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"CellPosition[]\" }\n  },\n  \"stopEditing\": {\n    \"type\": {\n      \"arguments\": { \"cancel\": \"boolean = false\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"startEditingCell\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"StartEditingCellParams\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"addAggFunc\": {\n    \"type\": {\n      \"arguments\": { \"key\": \"string\", \"aggFunc\": \"IAggFunc\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"addAggFuncs\": {\n    \"type\": {\n      \"arguments\": { \"aggFuncs\": \"{ [key: string]: IAggFunc; }\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"clearAggFuncs\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"applyServerSideTransaction\": {\n    \"type\": {\n      \"arguments\": { \"transaction\": \"ServerSideTransaction\" },\n      \"returnType\": \"ServerSideTransactionResult | undefined\"\n    }\n  },\n  \"applyServerSideTransactionAsync\": {\n    \"type\": {\n      \"arguments\": {\n        \"transaction\": \"ServerSideTransaction\",\n        \"callback\": \"(res: ServerSideTransactionResult) => void\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"retryServerSideLoads\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"flushServerSideAsyncTransactions\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"applyTransaction\": {\n    \"type\": {\n      \"arguments\": { \"rowDataTransaction\": \"RowDataTransaction\" },\n      \"returnType\": \"RowNodeTransaction | null | undefined\"\n    }\n  },\n  \"updateRowData\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": {\n      \"arguments\": { \"rowDataTransaction\": \"RowDataTransaction\" },\n      \"returnType\": \"RowNodeTransaction | null | undefined\"\n    }\n  },\n  \"applyTransactionAsync\": {\n    \"type\": {\n      \"arguments\": {\n        \"rowDataTransaction\": \"RowDataTransaction\",\n        \"callback\": \"(res: RowNodeTransaction) => void\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"flushAsyncTransactions\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"batchUpdateRowData\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": {\n      \"arguments\": {\n        \"rowDataTransaction\": \"RowDataTransaction\",\n        \"callback\": \"(res: RowNodeTransaction) => void\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"insertItemsAtIndex\": {\n    \"type\": {\n      \"arguments\": {\n        \"index\": \"number\",\n        \"items\": \"any[]\",\n        \"skipRefresh\": \"undefined = false\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"removeItems\": {\n    \"type\": {\n      \"arguments\": {\n        \"rowNodes\": \"RowNode[]\",\n        \"skipRefresh\": \"undefined = false\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"addItems\": {\n    \"type\": {\n      \"arguments\": { \"items\": \"any[]\", \"skipRefresh\": \"undefined = false\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"refreshVirtualPageCache\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"refreshInfinitePageCache\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"refreshInfiniteCache\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"purgeVirtualPageCache\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"purgeInfinitePageCache\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"purgeInfiniteCache\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"purgeEnterpriseCache\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"arguments\": { \"route\": \"string[]\" }, \"returnType\": \"void\" }\n  },\n  \"purgeServerSideCache\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"arguments\": { \"route\": \"string[] = []\" }, \"returnType\": \"void\" }\n  },\n  \"refreshServerSideStore\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"RefreshStoreParams\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"getServerSideStoreState\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"ServerSideStoreState[]\" }\n  },\n  \"getVirtualRowCount\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"number | null | undefined\" }\n  },\n  \"getInfiniteRowCount\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"number | undefined\" }\n  },\n  \"isMaxRowFound\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean | undefined\" }\n  },\n  \"isLastRowIndexKnown\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean | undefined\" }\n  },\n  \"setVirtualRowCount\": {\n    \"type\": {\n      \"arguments\": { \"rowCount\": \"number\", \"maxRowFound\": \"boolean\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setInfiniteRowCount\": {\n    \"type\": {\n      \"arguments\": { \"rowCount\": \"number\", \"maxRowFound\": \"boolean\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setRowCount\": {\n    \"type\": {\n      \"arguments\": { \"rowCount\": \"number\", \"maxRowFound\": \"boolean\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"getVirtualPageState\": { \"type\": { \"arguments\": {}, \"returnType\": \"any\" } },\n  \"getInfinitePageState\": { \"type\": { \"arguments\": {}, \"returnType\": \"any\" } },\n  \"getCacheBlockState\": { \"type\": { \"arguments\": {}, \"returnType\": \"any\" } },\n  \"checkGridSize\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"getFirstRenderedRow\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"number\" }\n  },\n  \"getFirstDisplayedRow\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"number\" }\n  },\n  \"getLastRenderedRow\": { \"type\": { \"arguments\": {}, \"returnType\": \"number\" } },\n  \"getLastDisplayedRow\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"number\" }\n  },\n  \"getDisplayedRowAtIndex\": {\n    \"type\": {\n      \"arguments\": { \"index\": \"number\" },\n      \"returnType\": \"RowNode | undefined\"\n    }\n  },\n  \"getDisplayedRowCount\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"number\" }\n  },\n  \"paginationIsLastPageFound\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" }\n  },\n  \"paginationGetPageSize\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"number\" }\n  },\n  \"paginationSetPageSize\": {\n    \"type\": { \"arguments\": { \"size\": \"number\" }, \"returnType\": \"void\" }\n  },\n  \"paginationGetCurrentPage\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"number\" }\n  },\n  \"paginationGetTotalPages\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"number\" }\n  },\n  \"paginationGetRowCount\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"number\" }\n  },\n  \"paginationGoToNextPage\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"paginationGoToPreviousPage\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"paginationGoToFirstPage\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"paginationGoToLastPage\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"paginationGoToPage\": {\n    \"type\": { \"arguments\": { \"page\": \"number\" }, \"returnType\": \"void\" }\n  }\n}\n"}},{"relativePath":"grid-api/grid-options.AUTO.json","internal":{"content":"{\n  \"suppressBrowserResizeObserver\": {\n    \"description\": \"/** Set once in init, can never change */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"rowDragManaged\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressRowDrag\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressMoveWhenRowDragging\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"enableMultiRowDragging\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"ensureDomOrder\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressAggFilteredOnly\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"showOpenedGroup\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"deltaRowDataMode\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"deltaColumnMode\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"applyColumnDefOrder\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"maintainColumnOrder\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"immutableData\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"immutableColumns\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"scrollbarWidth\": { \"type\": { \"returnType\": \"number\" } },\n  \"suppressRowClickSelection\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressRowHoverHighlight\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"columnHoverHighlight\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressCellSelection\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressClearOnFillReduction\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressMaintainUnsortedOrder\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"sortingOrder\": { \"type\": { \"returnType\": \"(string | null)[]\" } },\n  \"suppressMultiSort\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"multiSortKey\": { \"type\": { \"returnType\": \"string\" } },\n  \"accentedSort\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"deltaSort\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressHorizontalScroll\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"alwaysShowHorizontalScroll\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"alwaysShowVerticalScroll\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"debounceVerticalScrollbar\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"unSortIcon\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"rowBuffer\": { \"type\": { \"returnType\": \"number\" } },\n  \"tooltipShowDelay\": { \"type\": { \"returnType\": \"number\" } },\n  \"tooltipMouseTrack\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"enableRtl\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"enableBrowserTooltips\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"colResizeDefault\": { \"type\": { \"returnType\": \"string\" } },\n  \"enableCellExpressions\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"enableCellTextSelection\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"enableGroupEdit\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"enterMovesDownAfterEdit\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"enterMovesDown\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressMiddleClickScrolls\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"preventDefaultOnContextMenu\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressPreventDefaultOnMouseWheel\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressScrollOnNewData\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressMenuHide\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"singleClickEdit\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressClickEdit\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"tabIndex\": { \"type\": { \"returnType\": \"number\" } },\n  \"suppressKeyboardEvent\": {\n    \"description\": \"/** Allows user to suppress certain keyboard events */\",\n    \"type\": {\n      \"arguments\": { \"params\": \"SuppressKeyboardEventParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"stopEditingWhenGridLosesFocus\": {\n    \"description\": \"/** @deprecated Use stopEditingWhenCellsLoseFocus instead\\n */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"stopEditingWhenCellsLoseFocus\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"debug\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"icons\": {\n    \"type\": { \"returnType\": \"{ [key: string]: Function | string; }\" }\n  },\n  \"angularCompileRows\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"angularCompileFilters\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressLoadingOverlay\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressNoRowsOverlay\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressAutoSize\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"autoSizePadding\": { \"type\": { \"returnType\": \"number\" } },\n  \"skipHeaderOnAutoSize\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"animateRows\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressColumnMoveAnimation\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressMovableColumns\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressDragLeaveHidesColumns\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressMakeColumnVisibleAfterUnGroup\": {\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"suppressParentsInRowNodes\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressFieldDotNotation\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressCopyRowsToClipboard\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"copyHeadersToClipboard\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"clipboardDeliminator\": { \"type\": { \"returnType\": \"string\" } },\n  \"suppressClipboardPaste\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressClipboardApi\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressLastEmptyLineOnPaste\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressAggFuncInHeader\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressAggAtRootLevel\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressFocusAfterRefresh\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"rowModelType\": { \"type\": { \"returnType\": \"string\" } },\n  \"pivotMode\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"pivotColumnGroupTotals\": { \"type\": { \"returnType\": \"string\" } },\n  \"pivotRowTotals\": { \"type\": { \"returnType\": \"string\" } },\n  \"suppressExpandablePivotGroups\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressEnterpriseResetOnNewColumns\": {\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"enableRangeSelection\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"enableRangeHandle\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"enableFillHandle\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"fillHandleDirection\": { \"type\": { \"returnType\": \"string\" } },\n  \"suppressMultiRangeSelection\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"rowGroupPanelShow\": { \"type\": { \"returnType\": \"string\" } },\n  \"pivotPanelShow\": { \"type\": { \"returnType\": \"string\" } },\n  \"suppressContextMenu\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"allowContextMenuWithControlKey\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"rememberGroupStateWhenNewData\": {\n    \"description\": \"/** @deprecated - no longer needed, transaction updates keep group state\\n */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"suppressModelUpdateAfterUpdateTransaction\": {\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"viewportRowModelPageSize\": { \"type\": { \"returnType\": \"number\" } },\n  \"viewportRowModelBufferSize\": { \"type\": { \"returnType\": \"number\" } },\n  \"enableCellChangeFlash\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"cellFlashDelay\": { \"type\": { \"returnType\": \"number\" } },\n  \"cellFadeDelay\": { \"type\": { \"returnType\": \"number\" } },\n  \"allowShowChangeAfterFilter\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"quickFilterText\": { \"type\": { \"returnType\": \"string\" } },\n  \"cacheQuickFilter\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"aggFuncs\": { \"type\": { \"returnType\": \"{ [key: string]: IAggFunc; }\" } },\n  \"suppressColumnVirtualisation\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"functionsReadOnly\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"functionsPassive\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"maxConcurrentDatasourceRequests\": { \"type\": { \"returnType\": \"number\" } },\n  \"maxBlocksInCache\": { \"type\": { \"returnType\": \"number\" } },\n  \"purgeClosedRowNodes\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"domLayout\": { \"type\": { \"returnType\": \"string\" } },\n  \"suppressChangeDetection\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"aggregateOnlyChangedColumns\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"valueCache\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"valueCacheNeverExpires\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"batchUpdateWaitMillis\": { \"type\": { \"returnType\": \"number\" } },\n  \"asyncTransactionWaitMillis\": { \"type\": { \"returnType\": \"number\" } },\n  \"suppressRowTransform\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressSetColumnStateEvents\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"suppressColumnStateEvents\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"allowDragFromColumnsToolPanel\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressMaxRenderedRowRestriction\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"excludeChildrenWhenTreeDataFiltering\": {\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"undoRedoCellEditing\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"undoRedoCellEditingLimit\": { \"type\": { \"returnType\": \"number\" } },\n  \"cacheOverflowSize\": { \"type\": { \"returnType\": \"number\" } },\n  \"infiniteInitialRowCount\": { \"type\": { \"returnType\": \"number\" } },\n  \"paginationPageSize\": { \"type\": { \"returnType\": \"number\" } },\n  \"cacheBlockSize\": { \"type\": { \"returnType\": \"number\" } },\n  \"blockLoadDebounceMillis\": { \"type\": { \"returnType\": \"number\" } },\n  \"paginationAutoPageSize\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressPaginationPanel\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"pagination\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"paginateChildRows\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"editType\": { \"type\": { \"returnType\": \"string\" } },\n  \"suppressTouch\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressAsyncEvents\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"embedFullWidthRows\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"deprecatedEmbedFullWidthRows\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"excelStyles\": { \"type\": { \"returnType\": \"ExcelStyle[]\" } },\n  \"floatingFilter\": {\n    \"description\": \"/** @deprecated Use floatingFilter on the colDef instead\\n */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"suppressExcelExport\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"suppressCsvExport\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"colWidth\": { \"type\": { \"returnType\": \"number\" } },\n  \"minColWidth\": { \"type\": { \"returnType\": \"number\" } },\n  \"maxColWidth\": { \"type\": { \"returnType\": \"number\" } },\n  \"suppressPropertyNamesCheck\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"serverSideSortingAlwaysResets\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"serverSideFilteringAlwaysResets\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"serverSideStoreType\": { \"type\": { \"returnType\": \"ServerSideStoreType\" } },\n  \"getServerSideStoreParams\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"GetServerSideStoreParamsParams\" },\n      \"returnType\": \"ServerSideStoreParams\"\n    }\n  },\n  \"isServerSideGroupOpenByDefault\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"IsServerSideGroupOpenByDefaultParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"isGroupOpenByDefault\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"IsGroupOpenByDefaultParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"statusBar\": {\n    \"type\": { \"returnType\": \"{ statusPanels: StatusPanelDef[]; }\" }\n  },\n  \"localeText\": { \"type\": { \"returnType\": \"{ [key: string]: string }\" } },\n  \"localeTextFunc\": {\n    \"type\": {\n      \"arguments\": { \"key\": \"string\", \"defaultValue\": \"string\" },\n      \"returnType\": \"string\"\n    }\n  },\n  \"suppressAnimationFrame\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"defaultColGroupDef\": { \"type\": { \"returnType\": \"Partial<ColGroupDef>\" } },\n  \"defaultColDef\": { \"type\": { \"returnType\": \"ColDef\" } },\n  \"defaultExportParams\": {\n    \"description\": \"/** @deprecated Use defaultCsvExportParams or defaultExcelExportParams\\n */\",\n    \"type\": { \"returnType\": \"CsvExportParams | ExcelExportParams\" }\n  },\n  \"defaultCsvExportParams\": { \"type\": { \"returnType\": \"CsvExportParams\" } },\n  \"defaultExcelExportParams\": { \"type\": { \"returnType\": \"ExcelExportParams\" } },\n  \"pivotSuppressAutoColumn\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"autoGroupColumnDef\": { \"type\": { \"returnType\": \"ColDef\" } },\n  \"groupSelectsChildren\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"groupSelectsFiltered\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"groupIncludeFooter\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"groupIncludeTotalFooter\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"groupRemoveSingleChildren\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"groupRemoveLowestSingleChildren\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"groupHideOpenParents\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"groupSuppressBlankHeader\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"groupMaintainOrder\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"groupDisplayType\": { \"type\": { \"returnType\": \"RowGroupingDisplayType\" } },\n  \"groupMultiAutoColumn\": {\n    \"description\": \"/** @deprecated - Use groupDisplayType = 'multipleColumns' instead\\n */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"groupUseEntireRow\": {\n    \"description\": \"/** @deprecated - Use groupDisplayType = 'groupRows' instead\\n */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"groupSuppressAutoColumn\": {\n    \"description\": \"/** @deprecated - Use groupDisplayType = 'custom' instead\\n */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"enableOldSetFilterModel\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"enableCharts\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"context\": { \"type\": { \"returnType\": \"any\" } },\n  \"rowStyle\": { \"type\": { \"returnType\": \"{ [cssProperty: string]: string }\" } },\n  \"rowClass\": { \"type\": { \"returnType\": \"string | string[]\" } },\n  \"groupDefaultExpanded\": { \"type\": { \"returnType\": \"number\" } },\n  \"alignedGrids\": { \"type\": { \"returnType\": \"GridOptions[]\" } },\n  \"rowSelection\": { \"type\": { \"returnType\": \"string\" } },\n  \"suppressRowDeselection\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"rowDeselection\": {\n    \"description\": \"/** @deprecated - rowDeselection is now true by default and should be suppressed by using suppressRowDeselection\\n */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"rowMultiSelectWithClick\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"isRowSelectable\": { \"type\": { \"returnType\": \"IsRowSelectable\" } },\n  \"overlayLoadingTemplate\": { \"type\": { \"returnType\": \"string\" } },\n  \"overlayNoRowsTemplate\": { \"type\": { \"returnType\": \"string\" } },\n  \"rowHeight\": { \"type\": { \"returnType\": \"number\" } },\n  \"detailRowHeight\": { \"type\": { \"returnType\": \"number\" } },\n  \"popupParent\": { \"type\": { \"returnType\": \"HTMLElement\" } },\n  \"masterDetail\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"keepDetailRows\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"keepDetailRowsCount\": { \"type\": { \"returnType\": \"number\" } },\n  \"isRowMaster\": { \"type\": { \"returnType\": \"IsRowMaster\" } },\n  \"detailCellRenderer\": {\n    \"type\": {\n      \"returnType\": \"{ new(): ICellRendererComp; } | ICellRendererFunc | string\"\n    }\n  },\n  \"detailCellRendererFramework\": { \"type\": { \"returnType\": \"any\" } },\n  \"detailCellRendererParams\": { \"type\": { \"returnType\": \"any\" } },\n  \"detailRowAutoHeight\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"rowData\": { \"type\": { \"returnType\": \"any[]\" } },\n  \"pinnedTopRowData\": { \"type\": { \"returnType\": \"any[]\" } },\n  \"pinnedBottomRowData\": { \"type\": { \"returnType\": \"any[]\" } },\n  \"sideBar\": {\n    \"type\": { \"returnType\": \"SideBarDef | string | boolean | null\" }\n  },\n  \"columnDefs\": { \"type\": { \"returnType\": \"(ColDef | ColGroupDef)[]\" } },\n  \"columnTypes\": { \"type\": { \"returnType\": \"{ [key: string]: ColDef; }\" } },\n  \"datasource\": { \"type\": { \"returnType\": \"IDatasource\" } },\n  \"viewportDatasource\": { \"type\": { \"returnType\": \"IViewportDatasource\" } },\n  \"serverSideDatasource\": { \"type\": { \"returnType\": \"IServerSideDatasource\" } },\n  \"headerHeight\": { \"type\": { \"returnType\": \"number\" } },\n  \"pivotHeaderHeight\": { \"type\": { \"returnType\": \"number\" } },\n  \"groupHeaderHeight\": { \"type\": { \"returnType\": \"number\" } },\n  \"pivotGroupHeaderHeight\": { \"type\": { \"returnType\": \"number\" } },\n  \"floatingFiltersHeight\": { \"type\": { \"returnType\": \"number\" } },\n  \"paginationNumberFormatter\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"PaginationNumberFormatterParams\" },\n      \"returnType\": \"string\"\n    }\n  },\n  \"postProcessPopup\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"PostProcessPopupParams\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"frameworkComponents\": {\n    \"type\": { \"returnType\": \"{ [p: string]: { new(): any; }; } | any\" }\n  },\n  \"components\": { \"type\": { \"returnType\": \"{ [p: string]: any; }\" } },\n  \"groupRowRenderer\": {\n    \"type\": {\n      \"returnType\": \"{ new(): ICellRendererComp; } | ICellRendererFunc | string\"\n    }\n  },\n  \"groupRowRendererFramework\": { \"type\": { \"returnType\": \"any\" } },\n  \"groupRowRendererParams\": { \"type\": { \"returnType\": \"any\" } },\n  \"groupRowInnerRenderer\": {\n    \"description\": \"/** @deprecated - this is now groupRowRendererParams.innerRenderer\\n */\",\n    \"type\": {\n      \"returnType\": \"{ new(): ICellRendererComp; } | ICellRendererFunc | string\"\n    }\n  },\n  \"groupRowInnerRendererFramework\": {\n    \"description\": \"/** @deprecated - this is now groupRowRendererParams.innerRendererFramework\\n */\",\n    \"type\": { \"returnType\": \"any\" }\n  },\n  \"createChartContainer\": {\n    \"type\": { \"arguments\": { \"params\": \"ChartRef\" }, \"returnType\": \"void\" }\n  },\n  \"fillOperation\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"FillOperationParams\" },\n      \"returnType\": \"any\"\n    }\n  },\n  \"isExternalFilterPresent\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" }\n  },\n  \"doesExternalFilterPass\": {\n    \"type\": { \"arguments\": { \"node\": \"RowNode\" }, \"returnType\": \"boolean\" }\n  },\n  \"getRowStyle\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"RowClassParams\" },\n      \"returnType\": \"{ [cssProperty: string]: string; }\"\n    }\n  },\n  \"getRowClass\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"RowClassParams\" },\n      \"returnType\": \"string | string[] | undefined\"\n    }\n  },\n  \"rowClassRules\": { \"type\": { \"returnType\": \"RowClassRules\" } },\n  \"getRowHeight\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"RowHeightParams\" },\n      \"returnType\": \"number | undefined | null\"\n    }\n  },\n  \"sendToClipboard\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"SendToClipboardParams\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"processDataFromClipboard\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"ProcessDataFromClipboardParams\" },\n      \"returnType\": \"string[][] | null\"\n    }\n  },\n  \"navigateToNextHeader\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"NavigateToNextHeaderParams\" },\n      \"returnType\": \"HeaderPosition\"\n    }\n  },\n  \"tabToNextHeader\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"TabToNextHeaderParams\" },\n      \"returnType\": \"HeaderPosition\"\n    }\n  },\n  \"navigateToNextCell\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"NavigateToNextCellParams\" },\n      \"returnType\": \"CellPosition\"\n    }\n  },\n  \"tabToNextCell\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"TabToNextCellParams\" },\n      \"returnType\": \"CellPosition\"\n    }\n  },\n  \"getDocument\": { \"type\": { \"arguments\": {}, \"returnType\": \"Document\" } },\n  \"defaultGroupSortComparator\": {\n    \"description\": \"/** @deprecated - Use defaultGroupOrderComparator instead\\n */\",\n    \"type\": {\n      \"arguments\": { \"nodeA\": \"RowNode\", \"nodeB\": \"RowNode\" },\n      \"returnType\": \"number\"\n    }\n  },\n  \"defaultGroupOrderComparator\": {\n    \"type\": {\n      \"arguments\": { \"nodeA\": \"RowNode\", \"nodeB\": \"RowNode\" },\n      \"returnType\": \"number\"\n    }\n  },\n  \"loadingCellRenderer\": {\n    \"type\": { \"returnType\": \"{ new(): ICellRenderer; } | string\" }\n  },\n  \"loadingCellRendererFramework\": { \"type\": { \"returnType\": \"any\" } },\n  \"loadingCellRendererParams\": { \"type\": { \"returnType\": \"any\" } },\n  \"loadingOverlayComponent\": {\n    \"type\": { \"returnType\": \"{ new(): ILoadingOverlayComp; } | string\" }\n  },\n  \"loadingOverlayComponentFramework\": { \"type\": { \"returnType\": \"any\" } },\n  \"loadingOverlayComponentParams\": { \"type\": { \"returnType\": \"any\" } },\n  \"noRowsOverlayComponent\": {\n    \"type\": { \"returnType\": \"{ new(): INoRowsOverlayComp; } | string\" }\n  },\n  \"noRowsOverlayComponentFramework\": { \"type\": { \"returnType\": \"any\" } },\n  \"noRowsOverlayComponentParams\": { \"type\": { \"returnType\": \"any\" } },\n  \"fullWidthCellRenderer\": {\n    \"type\": {\n      \"returnType\": \"{ new(): ICellRendererComp; } | ICellRendererFunc | string\"\n    }\n  },\n  \"fullWidthCellRendererFramework\": { \"type\": { \"returnType\": \"any\" } },\n  \"fullWidthCellRendererParams\": { \"type\": { \"returnType\": \"any\" } },\n  \"isFullWidthCell\": {\n    \"type\": { \"arguments\": { \"rowNode\": \"RowNode\" }, \"returnType\": \"boolean\" }\n  },\n  \"groupRowAggNodes\": {\n    \"type\": { \"arguments\": { \"nodes\": \"RowNode[]\" }, \"returnType\": \"any\" }\n  },\n  \"getBusinessKeyForNode\": {\n    \"type\": { \"arguments\": { \"node\": \"RowNode\" }, \"returnType\": \"string\" }\n  },\n  \"getDataPath\": { \"type\": { \"returnType\": \"GetDataPath\" } },\n  \"treeData\": { \"type\": { \"returnType\": \"boolean\" } },\n  \"treeDataDisplayType\": { \"type\": { \"returnType\": \"TreeDataDisplayType\" } },\n  \"isServerSideGroup\": { \"type\": { \"returnType\": \"IsServerSideGroup\" } },\n  \"isApplyServerSideTransaction\": {\n    \"type\": { \"returnType\": \"IsApplyServerSideTransaction\" }\n  },\n  \"getServerSideGroupKey\": {\n    \"type\": { \"returnType\": \"GetServerSideGroupKey\" }\n  },\n  \"getContextMenuItems\": { \"type\": { \"returnType\": \"GetContextMenuItems\" } },\n  \"getMainMenuItems\": { \"type\": { \"returnType\": \"GetMainMenuItems\" } },\n  \"getChartToolbarItems\": { \"type\": { \"returnType\": \"GetChartToolbarItems\" } },\n  \"getRowNodeId\": { \"type\": { \"returnType\": \"GetRowNodeIdFunc\" } },\n  \"getChildCount\": {\n    \"type\": { \"arguments\": { \"dataItem\": \"any\" }, \"returnType\": \"number\" }\n  },\n  \"processRowPostCreate\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"ProcessRowParams\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"processCellForClipboard\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"ProcessCellForExportParams\" },\n      \"returnType\": \"any\"\n    }\n  },\n  \"processHeaderForClipboard\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"ProcessHeaderForExportParams\" },\n      \"returnType\": \"any\"\n    }\n  },\n  \"processCellFromClipboard\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"ProcessCellForExportParams\" },\n      \"returnType\": \"any\"\n    }\n  },\n  \"processSecondaryColDef\": {\n    \"type\": { \"arguments\": { \"colDef\": \"ColDef\" }, \"returnType\": \"void\" }\n  },\n  \"processSecondaryColGroupDef\": {\n    \"type\": {\n      \"arguments\": { \"colGroupDef\": \"ColGroupDef\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"postSort\": {\n    \"type\": { \"arguments\": { \"nodes\": \"RowNode[]\" }, \"returnType\": \"void\" }\n  },\n  \"chartThemes\": { \"type\": { \"returnType\": \"string[]\" } },\n  \"customChartThemes\": {\n    \"type\": { \"returnType\": \"{ [name: string]: AgChartTheme }\" }\n  },\n  \"chartThemeOverrides\": { \"type\": { \"returnType\": \"AgChartThemeOverrides\" } },\n  \"processChartOptions\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": {\n      \"arguments\": { \"params\": \"ProcessChartOptionsParams\" },\n      \"returnType\": \"ChartOptions<any>\"\n    }\n  },\n  \"allowProcessChartOptions\": {\n    \"description\": \"/** @deprecated\\n */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"onColumnEverythingChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnEverythingChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnEverythingChanged\" }\n  },\n  \"columnEverythingChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnEverythingChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnEverythingChanged\" }\n  },\n  \"onToolPanelVisibleChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ToolPanelVisibleChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onToolPanelVisibleChanged\" }\n  },\n  \"toolPanelVisibleChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ToolPanelVisibleChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onToolPanelVisibleChanged\" }\n  },\n  \"onNewColumnsLoaded\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"NewColumnsLoadedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onNewColumnsLoaded\" }\n  },\n  \"newColumnsLoaded\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"NewColumnsLoadedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onNewColumnsLoaded\" }\n  },\n  \"onColumnPivotModeChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnPivotModeChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnPivotModeChanged\" }\n  },\n  \"columnPivotModeChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnPivotModeChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnPivotModeChanged\" }\n  },\n  \"onColumnRowGroupChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnRowGroupChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnRowGroupChanged\" }\n  },\n  \"columnRowGroupChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnRowGroupChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnRowGroupChanged\" }\n  },\n  \"onColumnPivotChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnPivotChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnPivotChanged\" }\n  },\n  \"columnPivotChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnPivotChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnPivotChanged\" }\n  },\n  \"onGridColumnsChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"GridColumnsChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onGridColumnsChanged\" }\n  },\n  \"gridColumnsChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"GridColumnsChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onGridColumnsChanged\" }\n  },\n  \"onColumnValueChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnValueChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnValueChanged\" }\n  },\n  \"columnValueChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnValueChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnValueChanged\" }\n  },\n  \"onColumnMoved\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnMovedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnMoved\" }\n  },\n  \"columnMoved\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnMovedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnMoved\" }\n  },\n  \"onColumnVisible\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnVisibleEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnVisible\" }\n  },\n  \"columnVisible\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnVisibleEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnVisible\" }\n  },\n  \"onColumnPinned\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnPinnedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnPinned\" }\n  },\n  \"columnPinned\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnPinnedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnPinned\" }\n  },\n  \"onColumnGroupOpened\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnGroupOpenedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnGroupOpened\" }\n  },\n  \"columnGroupOpened\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnGroupOpenedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnGroupOpened\" }\n  },\n  \"onColumnResized\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnResizedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnResized\" }\n  },\n  \"columnResized\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnResizedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnResized\" }\n  },\n  \"onDisplayedColumnsChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"DisplayedColumnsChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onDisplayedColumnsChanged\" }\n  },\n  \"displayedColumnsChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"DisplayedColumnsChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onDisplayedColumnsChanged\" }\n  },\n  \"onVirtualColumnsChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"VirtualColumnsChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onVirtualColumnsChanged\" }\n  },\n  \"virtualColumnsChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"VirtualColumnsChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onVirtualColumnsChanged\" }\n  },\n  \"onRowGroupOpened\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowGroupOpenedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowGroupOpened\" }\n  },\n  \"rowGroupOpened\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowGroupOpenedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowGroupOpened\" }\n  },\n  \"onRowDataChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowDataChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowDataChanged\" }\n  },\n  \"rowDataChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowDataChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowDataChanged\" }\n  },\n  \"onRowDataUpdated\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowDataUpdatedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowDataUpdated\" }\n  },\n  \"rowDataUpdated\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowDataUpdatedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowDataUpdated\" }\n  },\n  \"onPinnedRowDataChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"PinnedRowDataChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onPinnedRowDataChanged\" }\n  },\n  \"pinnedRowDataChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"PinnedRowDataChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onPinnedRowDataChanged\" }\n  },\n  \"onRangeSelectionChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RangeSelectionChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRangeSelectionChanged\" }\n  },\n  \"rangeSelectionChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RangeSelectionChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRangeSelectionChanged\" }\n  },\n  \"onColumnRowGroupChangeRequest\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnRowGroupChangeRequestEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnRowGroupChangeRequest\" }\n  },\n  \"columnRowGroupChangeRequest\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnRowGroupChangeRequestEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnRowGroupChangeRequest\" }\n  },\n  \"onColumnPivotChangeRequest\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnPivotChangeRequestEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnPivotChangeRequest\" }\n  },\n  \"columnPivotChangeRequest\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnPivotChangeRequestEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnPivotChangeRequest\" }\n  },\n  \"onColumnValueChangeRequest\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnValueChangeRequestEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnValueChangeRequest\" }\n  },\n  \"columnValueChangeRequest\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnValueChangeRequestEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnValueChangeRequest\" }\n  },\n  \"onColumnAggFuncChangeRequest\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnAggFuncChangeRequestEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnAggFuncChangeRequest\" }\n  },\n  \"columnAggFuncChangeRequest\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ColumnAggFuncChangeRequestEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onColumnAggFuncChangeRequest\" }\n  },\n  \"onModelUpdated\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ModelUpdatedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onModelUpdated\" }\n  },\n  \"modelUpdated\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ModelUpdatedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onModelUpdated\" }\n  },\n  \"onCellKeyDown\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellKeyDownEvent | FullWidthCellKeyDownEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellKeyDown\" }\n  },\n  \"cellKeyDown\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellKeyDownEvent | FullWidthCellKeyDownEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellKeyDown\" }\n  },\n  \"onCellKeyPress\": {\n    \"type\": {\n      \"arguments\": {\n        \"event\": \"CellKeyPressEvent | FullWidthCellKeyPressEvent\"\n      },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellKeyPress\" }\n  },\n  \"cellKeyPress\": {\n    \"type\": {\n      \"arguments\": {\n        \"event\": \"CellKeyPressEvent | FullWidthCellKeyPressEvent\"\n      },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellKeyPress\" }\n  },\n  \"onCellClicked\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellClickedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellClicked\" }\n  },\n  \"cellClicked\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellClickedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellClicked\" }\n  },\n  \"onCellMouseDown\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellMouseDownEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellMouseDown\" }\n  },\n  \"cellMouseDown\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellMouseDownEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellMouseDown\" }\n  },\n  \"onCellDoubleClicked\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellDoubleClickedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellDoubleClicked\" }\n  },\n  \"cellDoubleClicked\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellDoubleClickedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellDoubleClicked\" }\n  },\n  \"onCellContextMenu\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellContextMenuEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellContextMenu\" }\n  },\n  \"cellContextMenu\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellContextMenuEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellContextMenu\" }\n  },\n  \"onCellValueChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellValueChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellValueChanged\" }\n  },\n  \"cellValueChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellValueChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellValueChanged\" }\n  },\n  \"onCellMouseOver\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellMouseOverEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellMouseOver\" }\n  },\n  \"cellMouseOver\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellMouseOverEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellMouseOver\" }\n  },\n  \"onCellMouseOut\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellMouseOutEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellMouseOut\" }\n  },\n  \"cellMouseOut\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellMouseOutEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellMouseOut\" }\n  },\n  \"onRowValueChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowValueChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowValueChanged\" }\n  },\n  \"rowValueChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowValueChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowValueChanged\" }\n  },\n  \"onRowEditingStarted\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowEditingStartedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowEditingStarted\" }\n  },\n  \"rowEditingStarted\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowEditingStartedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowEditingStarted\" }\n  },\n  \"onRowEditingStopped\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowEditingStoppedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowEditingStopped\" }\n  },\n  \"rowEditingStopped\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowEditingStoppedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowEditingStopped\" }\n  },\n  \"onCellEditingStarted\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellEditingStartedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellEditingStarted\" }\n  },\n  \"cellEditingStarted\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellEditingStartedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellEditingStarted\" }\n  },\n  \"onCellEditingStopped\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellEditingStoppedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellEditingStopped\" }\n  },\n  \"cellEditingStopped\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellEditingStoppedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellEditingStopped\" }\n  },\n  \"onCellFocused\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellFocusedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellFocused\" }\n  },\n  \"cellFocused\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"CellFocusedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onCellFocused\" }\n  },\n  \"onRowSelected\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowSelectedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowSelected\" }\n  },\n  \"rowSelected\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowSelectedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowSelected\" }\n  },\n  \"onSelectionChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"SelectionChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onSelectionChanged\" }\n  },\n  \"selectionChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"SelectionChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onSelectionChanged\" }\n  },\n  \"onFilterOpened\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"FilterOpenedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onFilterOpened\" }\n  },\n  \"filterOpened\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"FilterOpenedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onFilterOpened\" }\n  },\n  \"onFilterChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"FilterChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onFilterChanged\" }\n  },\n  \"filterChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"FilterChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onFilterChanged\" }\n  },\n  \"onFilterModified\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"FilterModifiedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onFilterModified\" }\n  },\n  \"filterModified\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"FilterModifiedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onFilterModified\" }\n  },\n  \"onSortChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"SortChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onSortChanged\" }\n  },\n  \"sortChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"SortChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onSortChanged\" }\n  },\n  \"onVirtualRowRemoved\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"VirtualRowRemovedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onVirtualRowRemoved\" }\n  },\n  \"virtualRowRemoved\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"VirtualRowRemovedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onVirtualRowRemoved\" }\n  },\n  \"onRowClicked\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowClickedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowClicked\" }\n  },\n  \"rowClicked\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowClickedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowClicked\" }\n  },\n  \"onRowDoubleClicked\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowDoubleClickedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowDoubleClicked\" }\n  },\n  \"rowDoubleClicked\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"RowDoubleClickedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowDoubleClicked\" }\n  },\n  \"onGridReady\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"GridReadyEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onGridReady\" }\n  },\n  \"gridReady\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"GridReadyEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onGridReady\" }\n  },\n  \"onViewportChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ViewportChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onViewportChanged\" }\n  },\n  \"viewportChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ViewportChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onViewportChanged\" }\n  },\n  \"onDragStarted\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"DragStartedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onDragStarted\" }\n  },\n  \"dragStarted\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"DragStartedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onDragStarted\" }\n  },\n  \"onDragStopped\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"DragStoppedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onDragStopped\" }\n  },\n  \"dragStopped\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"DragStoppedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onDragStopped\" }\n  },\n  \"onPaginationChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"PaginationChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onPaginationChanged\" }\n  },\n  \"paginationChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"PaginationChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onPaginationChanged\" }\n  },\n  \"onRowDragEnter\": {\n    \"type\": { \"arguments\": { \"event\": \"RowDragEvent\" }, \"returnType\": \"void\" },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowDragEnter\" }\n  },\n  \"rowDragEnter\": {\n    \"type\": { \"arguments\": { \"event\": \"RowDragEvent\" }, \"returnType\": \"void\" },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowDragEnter\" }\n  },\n  \"onRowDragMove\": {\n    \"type\": { \"arguments\": { \"event\": \"RowDragEvent\" }, \"returnType\": \"void\" },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowDragMove\" }\n  },\n  \"rowDragMove\": {\n    \"type\": { \"arguments\": { \"event\": \"RowDragEvent\" }, \"returnType\": \"void\" },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowDragMove\" }\n  },\n  \"onRowDragLeave\": {\n    \"type\": { \"arguments\": { \"event\": \"RowDragEvent\" }, \"returnType\": \"void\" },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowDragLeave\" }\n  },\n  \"rowDragLeave\": {\n    \"type\": { \"arguments\": { \"event\": \"RowDragEvent\" }, \"returnType\": \"void\" },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowDragLeave\" }\n  },\n  \"onRowDragEnd\": {\n    \"type\": { \"arguments\": { \"event\": \"RowDragEvent\" }, \"returnType\": \"void\" },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowDragEnd\" }\n  },\n  \"rowDragEnd\": {\n    \"type\": { \"arguments\": { \"event\": \"RowDragEvent\" }, \"returnType\": \"void\" },\n    \"meta\": { \"isEvent\": true, \"name\": \"onRowDragEnd\" }\n  },\n  \"onPasteStart\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"PasteStartEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onPasteStart\" }\n  },\n  \"pasteStart\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"PasteStartEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onPasteStart\" }\n  },\n  \"onPasteEnd\": {\n    \"type\": { \"arguments\": { \"event\": \"PasteEndEvent\" }, \"returnType\": \"void\" },\n    \"meta\": { \"isEvent\": true, \"name\": \"onPasteEnd\" }\n  },\n  \"pasteEnd\": {\n    \"type\": { \"arguments\": { \"event\": \"PasteEndEvent\" }, \"returnType\": \"void\" },\n    \"meta\": { \"isEvent\": true, \"name\": \"onPasteEnd\" }\n  },\n  \"onFillStart\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"FillStartEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onFillStart\" }\n  },\n  \"fillStart\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"FillStartEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onFillStart\" }\n  },\n  \"onFillEnd\": {\n    \"type\": { \"arguments\": { \"event\": \"FillEndEvent\" }, \"returnType\": \"void\" },\n    \"meta\": { \"isEvent\": true, \"name\": \"onFillEnd\" }\n  },\n  \"fillEnd\": {\n    \"type\": { \"arguments\": { \"event\": \"FillEndEvent\" }, \"returnType\": \"void\" },\n    \"meta\": { \"isEvent\": true, \"name\": \"onFillEnd\" }\n  },\n  \"onBodyScroll\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"BodyScrollEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onBodyScroll\" }\n  },\n  \"bodyScroll\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"BodyScrollEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onBodyScroll\" }\n  },\n  \"onFirstDataRendered\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"FirstDataRenderedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onFirstDataRendered\" }\n  },\n  \"firstDataRendered\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"FirstDataRenderedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onFirstDataRendered\" }\n  },\n  \"onExpandOrCollapseAll\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ExpandCollapseAllEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onExpandOrCollapseAll\" }\n  },\n  \"expandOrCollapseAll\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ExpandCollapseAllEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onExpandOrCollapseAll\" }\n  },\n  \"onChartCreated\": {\n    \"type\": { \"arguments\": { \"event\": \"ChartCreated\" }, \"returnType\": \"void\" },\n    \"meta\": { \"isEvent\": true, \"name\": \"onChartCreated\" }\n  },\n  \"chartCreated\": {\n    \"type\": { \"arguments\": { \"event\": \"ChartCreated\" }, \"returnType\": \"void\" },\n    \"meta\": { \"isEvent\": true, \"name\": \"onChartCreated\" }\n  },\n  \"onChartRangeSelectionChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ChartRangeSelectionChanged\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onChartRangeSelectionChanged\" }\n  },\n  \"chartRangeSelectionChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ChartRangeSelectionChanged\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onChartRangeSelectionChanged\" }\n  },\n  \"onChartOptionsChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ChartOptionsChanged\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onChartOptionsChanged\" }\n  },\n  \"chartOptionsChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ChartOptionsChanged\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onChartOptionsChanged\" }\n  },\n  \"onChartDestroyed\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ChartDestroyed\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onChartDestroyed\" }\n  },\n  \"chartDestroyed\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ChartDestroyed\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onChartDestroyed\" }\n  },\n  \"onComponentStateChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ComponentStateChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onComponentStateChanged\" }\n  },\n  \"componentStateChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"ComponentStateChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onComponentStateChanged\" }\n  },\n  \"onAsyncTransactionsFlushed\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"AsyncTransactionsFlushed\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onAsyncTransactionsFlushed\" }\n  },\n  \"asyncTransactionsFlushed\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"AsyncTransactionsFlushed\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onAsyncTransactionsFlushed\" }\n  },\n  \"onGridSizeChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"GridSizeChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onGridSizeChanged\" }\n  },\n  \"gridSizeChanged\": {\n    \"type\": {\n      \"arguments\": { \"event\": \"GridSizeChangedEvent\" },\n      \"returnType\": \"void\"\n    },\n    \"meta\": { \"isEvent\": true, \"name\": \"onGridSizeChanged\" }\n  },\n  \"api\": { \"type\": { \"returnType\": \"GridApi | null\" } },\n  \"columnApi\": { \"type\": { \"returnType\": \"ColumnApi | null\" } }\n}\n"}},{"relativePath":"grid-callbacks/callbacks.json","internal":{"content":"{\n\n    \"callbacks\": {\n        \"meta\": {\n            \"displayName\": \"Rows\"\n        },\n        \"getBusinessKeyForNode\": {\n            \"description\": \"Return a business key for the node. If implemented, each row in the DOM will have an attribute `row-id='abc'` where `abc` is what you return as the business key. This is useful for automated testing, as it provides a way for your tool to identify rows based on unique business keys.\"\n        },\n        \"getRowNodeId\": {\n            \"description\": \"Allows you to set the ID for a particular row node based on the data. Useful for selection and server side sorting and filtering for paging and virtual pagination.\"\n        },\n        \"processRowPostCreate\": {\n            \"description\": \"Allows you to process rows after they are created, so you can do final adding of custom attributes etc.\"\n        },\n        \"isRowSelectable\": {\n            \"description\": \"Callback to be used to determine which rows are selectable. By default rows are selectable, so return `false` to make a row un-selectable.\",\n            \"more\": {\n                \"name\": \"Specify Selectable Rows\",\n                \"url\": \"/row-selection/#specify-selectable-rows\"\n            }\n        },\n        \"isRowMaster\": {\n            \"description\": \"Callback to be used with [Master Detail](/master-detail/) to determine if a row should be a master row. If `false` is returned no detail row will exist for this row.\"\n        }\n    },\n    \"rendering\": {\n        \"meta\": {\n            \"displayName\": \"Rendering and Styling\"\n        },\n        \"getRowClass\": {\n            \"description\": \"Callback version of property `rowClass`. Function should return a string or an array of strings.\"\n        },\n        \"getRowStyle\": {\n            \"description\": \"Callback version of property `rowStyle`. Function should return an object of CSS values.\"\n        },\n        \"getRowHeight\": {\n            \"description\": \"Callback version of property `rowHeight`. Function should return a positive number of pixels, or return `null`/`undefined` to use the default row height.\"\n        },\n        \"isFullWidthCell\": {\n            \"description\": \"Tells the grid if this row should be rendered as [full width](/master-detail/).\"\n        }\n    },\n    \"Sort and Filter\": {\n        \"meta\": {\n            \"displayName\": \"Sort and Filter\"\n        },\n        \"isExternalFilterPresent\": {\n            \"description\": \"Grid calls this method to know if an external filter is present.\",\n            \"more\": {\n                \"name\": \"External Filter\",\n                \"url\": \"/filter-external/\"\n            }\n        },\n        \"doesExternalFilterPass\": {\n            \"description\": \"Should return `true` if external filter passes, otherwise `false`.\",\n            \"more\": {\n                \"name\": \"External Filter\",\n                \"url\": \"/filter-external/\"\n            }\n        },\n        \"postSort\": {\n            \"description\": \"Callback to perform additional sorting after the grid has sorted the rows.\",\n            \"more\": {\n                \"name\": \"Post Sort\",\n                \"url\": \"/row-sorting/#post-sort\"\n            }\n        }\n    },\n    \"groupPivot\": {\n        \"meta\": {\n            \"displayName\": \"Row Grouping and Pivoting\"\n        },\n        \"groupRowAggNodes\": {\n            \"description\": \"Callback for grouping.\",\n            \"more\": {\n                \"name\": \"Row Grouping\",\n                \"url\": \"/grouping/#reference-callbacks\"\n            }\n        },\n        \"isGroupOpenByDefault\": {\n            \"description\": \"([Client-side Row Model](/client-side-model/) only) Allows groups to be open by default.\"\n        },\n        \"defaultGroupOrderComparator\": {\n            \"description\": \"Allows default sorting of groups.\",\n            \"more\": {\n                \"name\": \"Default Group Order\",\n                \"url\": \"/grouping-group-order/#default-group-order\"\n            }\n        },\n        \"processSecondaryColDef\": {\n            \"description\": \"Callback to be used with pivoting, to allow changing the second column definition.\"\n        },\n        \"processSecondaryColGroupDef\": {\n            \"description\": \"Callback to be used with pivoting, to allow changing the second column group definition.\"\n        }\n    },\n    \"menus\": {\n        \"meta\": {\n            \"displayName\": \"Popup / Menus\"\n        },\n        \"getContextMenuItems\": {\n            \"description\": \"For customising the context menu.\",\n            \"more\": {\n                \"name\": \"Context Menu\",\n                \"url\": \"/context-menu/\"\n            }\n        },\n        \"getMainMenuItems\": {\n            \"description\": \"For customising the main 'column header' menu.\",\n            \"more\": {\n                \"name\": \"Column Menu\",\n                \"url\": \"/column-menu/#customising-the-general-menu-tab\"\n            }\n        },\n        \"postProcessPopup\": {\n            \"description\": \"Allows user to process popups after they are created. Applications can use this if they want to, for example, reposition the popup.\"\n        }\n    },\n    \"clipboard\": {\n        \"meta\": {\n            \"displayName\": \"Clipboard\",\n            \"description\": \"See [Clipboard](/clipboard/)\"\n        },\n        \"processCellForClipboard\": {\n            \"description\": \"Allows you to process cells for the clipboard. Handy if for example you have `Date` objects that need to have a particular format if importing into Excel.\"\n        },\n        \"processHeaderForClipboard\": {\n            \"description\": \"Allows you to process header values for the clipboard.\"\n        },\n        \"processCellFromClipboard\": {\n            \"description\": \"Allows you to process cells from the clipboard. Handy if for example you have number fields, and want to block non-numbers from getting into the grid.\"\n        },\n        \"sendToClipboard\": {\n            \"description\": \"Allows you to get the data that would otherwise go to the clipboard. To be used when you want to control the 'copy to clipboard' operation yourself.\"\n        },\n        \"processDataFromClipboard\": {\n            \"description\": \"Allows complete control of the paste operation, including cancelling the operation (so nothing happens) or replacing the data with other data.\"\n        }\n    },\n    \"nav\": {\n        \"meta\": {\n            \"displayName\": \"Keyboard Navigation\",\n            \"description\": \"See [Keyboard Navigation](/keyboard-navigation/)\"\n        },\n        \"navigateToNextHeader\": {\n            \"description\": \"Allows overriding the default behaviour for when user hits navigation (arrow) key when a header is focused.\"\n        },\n        \"tabToNextHeader\": {\n            \"description\": \"Allows overriding the default behaviour for when user hits <kbd>Tab</kbd> key when a header is focused.\"\n        },\n        \"navigateToNextCell\": {\n            \"description\": \"Allows overriding the default behaviour for when user hits navigation (arrow) key when a cell is focused.\"\n        },\n        \"tabToNextCell\": {\n            \"description\": \"Allows overriding the default behaviour for when user hits <kbd>Tab</kbd> key when a cell is focused.\"\n        }\n    },\n    \"pagination\": {\n        \"meta\": {\n            \"displayName\": \"Pagination\",\n            \"description\": \"See [Row Pagination](/row-pagination/)\"\n        },\n        \"paginationNumberFormatter\": {\n            \"description\": \"Allows user to format the numbers in the pagination panel, i.e. 'row count' and 'page number' labels. This is for pagination panel only, to format numbers inside the grid's cells (i.e. your data), then use `valueFormatter` in the column definitions.\"\n        }\n    },\n    \"ServerSide\": {\n        \"meta\": {\n            \"displayName\": \"Row Model: Server-Side\",\n            \"description\": \"Callbacks for [Server-Side Row Model](/server-side-model/) only.\"\n        },\n        \"getChildCount\": {\n            \"description\": \"Allows setting the child count for a group row.\"\n        },\n        \"getServerSideStoreParams\": {\n            \"description\": \"Allows providing different params for different levels of grouping.\"\n        },\n        \"isServerSideGroupOpenByDefault\": {\n            \"description\": \"Allows groups to be open by default.\"\n        },\n        \"isApplyServerSideTransaction\": {\n            \"description\": \"Allows cancelling transactions.\"\n        },\n        \"isServerSideGroup\": {\n            \"description\": \"([SSRM Tree Data](/server-side-model-tree-data/)) Allows specifying which rows are expandable.\"\n        },\n        \"getServerSideGroupKey\": {\n            \"description\": \"([SSRM Tree Data](/server-side-model-tree-data/)) Allows specifying group keys.\"\n        }\n    },\n    \"charts\": {\n        \"meta\": {\n            \"displayName\": \"Charts\"\n        },\n        \"getChartToolbarItems\": {\n            \"description\": \"Callback to be used to customise the chart toolbar items.\",\n            \"more\": {\n                \"name\": \"Configuring Toolbar Items\",\n                \"url\": \"/integrated-charts-toolbar/#configuring-toolbar-items-and-menu-panels\"\n            }\n        }\n    },\n    \"misc\": {\n        \"meta\": {\n            \"displayName\": \"Miscellaneous\"\n        },\n        \"getDocument\": {\n            \"description\": \"Allows overriding what `document` is used. Currently used by Drag and Drop (may extend to other places in the future). Use this when you want the grid to use a different `document` than the one available on the global scope. This can happen if docking out components (something which Electron supports).\"\n        }\n    }\n}\n"}},{"relativePath":"grid-events/events.json","internal":{"content":"{\n    \"selection\": {\n        \"meta\": {\n            \"displayName\": \"Selection\"\n        },\n        \"cellClicked\": {\n            \"description\": \"Cell is clicked.\"\n        },\n        \"cellDoubleClicked\": {\n            \"description\": \"Cell is double clicked.\"\n        },\n        \"cellFocused\": {\n            \"description\": \"Cell is focused.\"\n        },\n        \"cellMouseOver\": {\n            \"description\": \"Mouse entered cell.\"\n        },\n        \"cellMouseOut\": {\n            \"description\": \"Mouse left cell.\"\n        },\n        \"cellMouseDown\": {\n            \"description\": \"Mouse down on cell.\"\n        },\n        \"rowClicked\": {\n            \"description\": \"Row is clicked.\"\n        },\n        \"rowDoubleClicked\": {\n            \"description\": \"Row is double clicked.\"\n        },\n        \"rowSelected\": {\n            \"description\": \"Row is selected or deselected.\"\n        },\n        \"selectionChanged\": {\n            \"description\": \"Row selection is changed. Use the grid API to get the new row selected.\"\n        },\n        \"cellContextMenu\": {\n            \"description\": \"Cell is right clicked.\"\n        },\n        \"rangeSelectionChanged\": {\n            \"description\": \"A change to range selection has occurred.\"\n        }\n    },\n    \"editing\": {\n        \"meta\": {\n            \"displayName\": \"Editing\"\n        },\n        \"cellValueChanged\": {\n            \"description\": \"Value has changed after editing.\"\n        },\n        \"rowValueChanged\": {\n            \"description\": \"A cell's value within a row has changed. This event corresponds to [Full Row Editing](/cell-editing/#full-row-editing) only.\"\n        },\n        \"cellEditingStarted\": {\n            \"description\": \"Editing a cell has started.\"\n        },\n        \"cellEditingStopped\": {\n            \"description\": \"Editing a cell has stopped.\"\n        },\n        \"rowEditingStarted\": {\n            \"description\": \"Editing a row has started (when row editing is enabled). When row editing, this event will be fired once and <code>cellEditingStarted</code> will be fired for each individual cell. This event corresponds to [Full Row Editing](/cell-editing/#full-row-editing) only.\"\n        },\n        \"rowEditingStopped\": {\n            \"description\": \"Editing a row has stopped (when row editing is enabled). When row editing, this event will be fired once and <code>cellEditingStopped</code> will be fired for each individual cell. This event corresponds to [Full Row Editing](/cell-editing/#full-row-editing) only.\"\n        },\n        \"pasteStart\": {\n            \"description\": \"Paste operation has started.\",\n            \"more\": {\n                \"name\": \"Clipboard Events\",\n                \"url\": \"/clipboard/#clipboard-events\"\n            }\n        },\n        \"pasteEnd\": {\n            \"description\": \"Paste operation has ended.\",\n            \"more\": {\n                \"name\": \"Clipboard Events\",\n                \"url\": \"/clipboard/#clipboard-events\"\n            }\n        }\n    },\n    \"sortFilter\": {\n        \"meta\": {\n            \"displayName\": \"Sort and Filter\"\n        },\n        \"sortChanged\": {\n            \"description\": \"Sort has changed. The grid also listens for this and updates the model.\"\n        },\n        \"filterOpened\": {\n            \"description\": \"Filter has been opened.\"\n        },\n        \"filterChanged\": {\n            \"description\": \"Filter has been modified and applied.\"\n        },\n        \"filterModified\": {\n            \"description\": \"Filter was modified but not applied. Used when filters have 'Apply' buttons.\"\n        }\n    },\n    \"rowDragDrop\": {\n        \"meta\": {\n            \"displayName\": \"Row Drag and Drop\"\n        },\n        \"rowDragEnter\": {\n            \"description\": \"A drag has started, or dragging was already started and the mouse has re-entered the grid having previously left the grid.\"\n        },\n        \"rowDragMove\": {\n            \"description\": \"The mouse has moved while dragging.\"\n        },\n        \"rowDragLeave\": {\n            \"description\": \"The mouse has left the grid while dragging.\"\n        },\n        \"rowDragEnd\": {\n            \"description\": \"The drag has finished over the grid.\"\n        }\n    },\n    \"columns\": {\n        \"meta\": {\n            \"displayName\": \"Columns\"\n        },\n        \"columnVisible\": {\n            \"description\": \"A column, or group of columns, was hidden / shown.\"\n        },\n        \"columnPinned\": {\n            \"description\": \"A column, or group of columns, was pinned / unpinned.\"\n        },\n        \"columnResized\": {\n            \"description\": \"A column was resized.\"\n        },\n        \"columnMoved\": {\n            \"description\": \"A column was moved. To find out when the column move is finished you can use the <code>dragStopped</code> event below.\"\n        },\n        \"columnRowGroupChanged\": {\n            \"description\": \"A row group column was added or removed.\"\n        },\n        \"columnValueChanged\": {\n            \"description\": \"A value column was added or removed.\"\n        },\n        \"columnPivotModeChanged\": {\n            \"description\": \"The pivot mode flag was changed.\"\n        },\n        \"columnPivotChanged\": {\n            \"description\": \"A pivot column was added, removed or order changed.\"\n        },\n        \"columnGroupOpened\": {\n            \"description\": \"A column group was opened / closed.\"\n        },\n        \"newColumnsLoaded\": {\n            \"description\": \"User set new columns.\"\n        },\n        \"gridColumnsChanged\": {\n            \"description\": \"The list of grid columns changed.\"\n        },\n        \"displayedColumnsChanged\": {\n            \"description\": \"The list of displayed columns changed. This can result from columns open / close, column move, pivot, group, etc.\"\n        },\n        \"virtualColumnsChanged\": {\n            \"description\": \"The list of rendered columns changed (only columns in the visible scrolled viewport are rendered by default).\"\n        },\n        \"columnEverythingChanged\": {\n            \"description\": \"Shotgun - gets called when either a) new columns are set or b) <code>columnApi.setState()</code> is used, so everything has changed.\"\n        }\n    },\n    \"miscellaneous\": {\n        \"meta\": {\n            \"displayName\": \"Miscellaneous\"\n        },\n        \"gridReady\": {\n            \"description\": \"The grid has initialised. Use this event if, for example, you need to use the grid's API to fix the columns to size.\"\n        },\n        \"gridSizeChanged\": {\n            \"description\": \"The size of the grid <code>div</code> has changed. In other words, the grid was resized.\"\n        },\n        \"modelUpdated\": {\n            \"description\": \"Displayed rows have changed. Triggered after sort, filter or tree expand / collapse events.\"\n        },\n        \"firstDataRendered\": {\n            \"description\": \"Fired the first time data is rendered into the grid.\"\n        },\n        \"rowGroupOpened\": {\n            \"description\": \"A row group was opened or closed.\"\n        },\n        \"expandOrCollapseAll\": {\n            \"description\": \"Fired when calling either of the API methods <code>expandAll()</code> or <code>collapseAll()</code>.\"\n        },\n        \"paginationChanged\": {\n            \"description\": \"<p>Triggered every time the paging state changes. Some of the most common scenarios for this event to be triggered are:</p><ul class='content'><li>The page size changes</li><li>The current shown page is changed</li><li>New data is loaded onto the grid</li></ul>\"\n        },\n        \"pinnedRowDataChanged\": {\n            \"description\": \"The client has set new pinned row data into the grid.\"\n        },\n        \"virtualRowRemoved\": {\n            \"description\": \"A row was removed from the DOM, for any reason. Use to clean up resources (if any) used by the row.\"\n        },\n        \"viewportChanged\": {\n            \"description\": \"Which rows are rendered in the DOM has changed.\"\n        },\n        \"bodyScroll\": {\n            \"description\": \"The body was scrolled horizontally or vertically.\"\n        },\n        \"dragStarted\": {\n            \"description\": \"When dragging starts. This could be any action that uses the grid's Drag and Drop service, e.g. Column Moving, Column Resizing, Range Selection, Fill Handle, etc.\"\n        },\n        \"dragStopped\": {\n            \"description\": \"When dragging stops. This could be any action that uses the grid's Drag and Drop service, e.g. Column Moving, Column Resizing, Range Selection, Fill Handle, etc.\"\n        },\n        \"rowDataChanged\": {\n            \"description\": \"The client has set new data into the grid using <code>api.setRowData()</code> or by changing the <code>rowData</code> bound property.\"\n        },\n        \"rowDataUpdated\": {\n            \"description\": \"The client has updated data for the grid using <code>api.applyTransaction(transaction)</code> or by changing the <code>rowData</code> bound property with <code>immutableData=true</code>.\"\n        },\n        \"toolPanelVisibleChanged\": {\n            \"description\": \"The tool panel was hidden or shown. Use <code>api.isToolPanelShowing()</code> to get status.\"\n        },\n        \"componentStateChanged\": {\n            \"description\": \"Only used by React, Angular and VueJS AG Grid components (not used if doing plain JavaScript or Angular 1.x). If the grid receives changes due to bound properties, this event fires after the grid has finished processing the change.\"\n        },\n        \"asyncTransactionsFlushed\": {\n            \"description\": \"Async transactions have been applied. Contains a list of all transaction results.\"\n        },\n        \"cellKeyDown\": {\n            \"description\": \"DOM event <code>keyDown</code> happened on a cell.\",\n            \"more\": {\n                \"name\": \"Keyboard Events\",\n                \"url\": \"/keyboard-navigation/#keyboard-events\"\n            }\n        },\n        \"cellKeyPress\": {\n            \"description\": \"DOM event <code>keyPress</code> happened on a cell.\",\n            \"more\": {\n                \"name\": \"Keyboard Events\",\n                \"url\": \"/keyboard-navigation/#keyboard-events\"\n            }\n        }\n    }\n}"}},{"relativePath":"grid-properties/properties.json","internal":{"content":"{\n    \"columns\": {\n        \"meta\": {\n            \"displayName\": \"Columns\"\n        },\n        \"columnDefs\": {\n            \"description\": \"Array of [Column Definitions](/column-definitions/).\",\n            \"type\": \"ColDef[]\"\n        },\n        \"defaultColDef\": {\n            \"description\": \"A [default column definition](/column-definitions/#default-column-definitions).\",\n            \"type\": \"ColDef\"\n        },\n        \"defaultColGroupDef\": {\n            \"description\": \"A [default column group definition](/column-definitions/#default-column-definitions). All column group definitions will use these properties. Items defined in the actual column group  definition get precedence.\",\n            \"type\": \"ColDef\"\n        },\n        \"columnTypes\": {\n            \"description\": \"An object map of [custom column types](/column-definitions/#default-column-definitions) which contain groups of properties that column definitions can inherit.\",\n            \"type\": \"object\"\n        },\n        \"colResizeDefault\": {\n            \"description\": \"Set to `'shift'` to have shift-resize as the default resize operation (same as user holding down <kbd>Shift</kbd> while resizing).\",\n            \"options\": [\n                \"shift\"\n            ]\n        },\n        \"suppressAutoSize\": {\n            \"default\": false,\n            \"description\": \"Suppresses [auto-sizing columns](/column-sizing/#auto-size-columns) for columns. In other words, double clicking a column's header's edge will not auto-size.\"\n        },\n        \"autoSizePadding\": {\n            \"default\": 4,\n            \"description\": \"Number of pixels to add to a column width after the [auto-sizing](/column-sizing/#auto-size-columns) calculation. Set this if you want to add extra room to accommodate (for example) sort icons, or some other dynamic nature of the header.\"\n        },\n        \"skipHeaderOnAutoSize\": {\n            \"default\": false,\n            \"description\": \"Set this to `true` to skip the `headerName` when `autoSize` is called by default.\",\n            \"more\": {\n                \"name\": \"Resizing Example\",\n                \"url\": \"/column-sizing/#resizing-example\"\n            }\n        },\n        \"suppressColumnMoveAnimation\": {\n            \"default\": false,\n            \"description\": \"If `true`, the `ag-column-moving` class is not added to the grid while columns are moving. In the default [themes](/themes/), this results in no animation when moving columns.\"\n        },\n        \"suppressMovableColumns\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to suppress column moving, i.e. to make the columns fixed position.\"\n        },\n        \"suppressFieldDotNotation\": {\n            \"default\": false,\n            \"description\": \"If `true`, then dots in field names (e.g. `address.firstline`) are not treated as deep references. Allows you to use dots in your field name if you prefer.\"\n        },\n        \"unSortIcon\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to show the 'no sort' icon.\",\n            \"more\": {\n                \"name\": \"Example Custom Sorting\",\n                \"url\": \"/row-sorting/#example-custom-sorting\"\n            }\n        },\n        \"suppressMultiSort\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to suppress multi-sort when the user shift-clicks a column header.\"\n        },\n        \"suppressMenuHide\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to always show the column menu button, rather than only showing when the mouse is over the column header.\"\n        },\n        \"autoGroupColumnDef\": {\n            \"description\": \"Allows specifying the group 'auto column' if you are not happy with the default. If grouping, this column definition is included as the first column definition in the grid. If not grouping, this column is not included.\",\n            \"type\": \"ColDef\"\n        },\n        \"allowDragFromColumnsToolPanel\": {\n            \"default\": false,\n            \"description\": \"Allow reordering and pinning columns by dragging columns from the [Columns Tool Panel](/tool-panel-columns/) to the grid.\"\n        },\n        \"maintainColumnOrder\": {\n            \"default\": false,\n            \"description\": \"Keeps the order of Columns maintained after new Column Definitions are updated.\",\n            \"more\": {\n                \"name\": \"Maintain Column Order\",\n                \"url\": \"/column-updating-definitions/#maintain-column-order\"\n            }\n        }\n    },\n    \"sortFilter\": {\n        \"meta\": {\n            \"displayName\": \"Sort and Filter\"\n        },\n        \"quickFilterText\": {\n            \"description\": \"Rows are filtered using this text as a [quick filter](/filter-quick/).\",\n            \"type\": \"string\"\n        },\n        \"cacheQuickFilter\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to turn on the [quick filter cache](/filter-quick/#quick-filter-cache), used to improve performance when using the quick filter.\"\n        },\n        \"sortingOrder\": {\n            \"description\": \"Array defining the order in which sorting occurs (if sorting is enabled). Values can be `'asc'`, `'desc'` or `null`. For example: `sortingOrder: ['asc', 'desc']`.\",\n            \"type\": \"string[]\",\n            \"default\": [\n                null,\n                \"asc\",\n                \"desc\"\n            ],\n            \"more\": {\n                \"name\": \"Example Sorting Order and Animation\",\n                \"url\": \"/row-sorting/#example-sorting-order-and-animation\"\n            }\n        },\n        \"accentedSort\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to specify that the sort should take accented characters into account. If this feature is turned on the sort will be slower.\",\n            \"more\": {\n                \"name\": \"Accented Sort\",\n                \"url\": \"/row-sorting/#accented-sort\"\n            }\n        },\n        \"multiSortKey\": {\n            \"description\": \"Set to `'ctrl'` to have multi sorting work using the <kbd>Ctrl</kbd> (or <kbd>Command ⌘</kbd> for Mac) key.\",\n            \"options\": [\n                \"ctrl\"\n            ],\n            \"more\": {\n                \"name\": \"Multi Column Sorting\",\n                \"url\": \"/row-sorting/#multi-column-sorting\"\n            }\n        },\n        \"suppressMaintainUnsortedOrder\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to suppress sorting of un-sorted data to match original row data.\",\n            \"more\": {\n                \"name\": \"Big Data Small Transactions\",\n                \"url\": \"/immutable-data/\"\n            }\n        },\n        \"excludeChildrenWhenTreeDataFiltering\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to override the default tree data filtering behaviour to instead exclude child nodes from filter results.\",\n            \"more\": {\n                \"name\": \"Tree Data Filtering\",\n                \"url\": \"/tree-data/#tree-data-filtering\"\n            }\n        }\n    },\n    \"selection\": {\n        \"meta\": {\n            \"displayName\": \"Selection\"\n        },\n        \"rowSelection\": {\n            \"options\": [\n                \"single\",\n                \"multiple\"\n            ],\n            \"description\": \"Type of [Row Selection](/row-selection/).\"\n        },\n        \"rowMultiSelectWithClick\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to allow multiple rows to be selected using single click.\",\n            \"more\": {\n                \"name\": \"Multi Select Single Click\",\n                \"url\": \"/row-selection/#example-multi-select-with-click\"\n            }\n        },\n        \"suppressRowDeselection\": {\n            \"default\": false,\n            \"description\": \"If `true`, rows will not be deselected if you hold down <kbd>Ctrl</kbd> and click the row or press <kbd>Space</kbd>.\"\n        },\n        \"suppressRowClickSelection\": {\n            \"default\": false,\n            \"description\": \"If `true`, [row selection](/row-selection/) won't happen when rows are clicked. Use when you only want checkbox selection.\"\n        },\n        \"suppressCellSelection\": {\n            \"default\": false,\n            \"description\": \"If `true`, cells won't be selectable. This means cells will not get keyboard focus when you click on them.\"\n        },\n        \"enableRangeSelection\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to enable [Range Selection](/range-selection/).\"\n        },\n        \"enableRangeHandle\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to enable the [Range Handle](/range-selection-handle/).\"\n        },\n        \"enableFillHandle\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to enable the [Fill Handle](/range-selection-fill-handle/)\"\n        },\n        \"fillHandleDirection\": {\n            \"default\": \"xy\",\n            \"description\": \"Set to `'x'` to force the fill handle direction to horizontal, or set to `'y'` to force the fill handle direction to vertical.\",\n            \"options\": [\n                \"x\",\n                \"y\",\n                \"xy\"\n            ]\n        },\n        \"suppressClearOnFillReduction\": {\n            \"default\": false,\n            \"description\": \"Set this to `true` to prevent cell values from being cleared when the Range Selection is reduced by the Fill Handle.\"\n        }\n    },\n    \"rowDragging\": {\n        \"meta\": {\n            \"displayName\": \"Row Dragging\"\n        },\n        \"rowDragManaged\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to enable [Managed Row Dragging](/row-dragging/#managed-dragging).\"\n        },\n        \"suppressRowDrag\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to suppress [Row Dragging](/row-dragging/).\"\n        },\n        \"suppressMoveWhenRowDragging\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to suppress moving rows while dragging the `rowDrag` waffle. This option highlights the position where the row will be placed and it will only move the row on mouse up.\",\n            \"more\": {\n                \"name\": \"Row Dragging\",\n                \"url\": \"/row-dragging/\"\n            }\n        }\n    },\n    \"editing\": {\n        \"meta\": {\n            \"displayName\": \"Editing\"\n        },\n        \"singleClickEdit\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to enable [Single Click Editing](/cell-editing/#single-click-editing) for cells, to start editing with a single click.\"\n        },\n        \"suppressClickEdit\": {\n            \"default\": false,\n            \"description\": \"Set to `true` so that neither single nor double click starts editing.\",\n            \"more\": {\n                \"name\": \"Single Click, Double Click, No Click Editing\",\n                \"url\": \"/cell-editing/#single-click-double-click-no-click-editing\"\n            }\n        },\n        \"editType\": {\n            \"description\": \"Set to `'fullRow'` to enable [Full Row Editing](/cell-editing/#full-row-editing). Otherwise leave blank to edit one cell at a time.\",\n            \"options\": [\n                \"fullRow\"\n            ]\n        },\n        \"enableCellChangeFlash\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to have cells flash after data changes.\",\n            \"more\": {\n                \"name\": \"Flashing Data Changes\",\n                \"url\": \"/flashing-cells/\"\n            }\n        },\n        \"cellFlashDelay\": {\n            \"default\": 500,\n            \"description\": \"To be used in combination with `enableCellChangeFlash`, this configuration will set the delay in milliseconds of how long a cell should remain in its \\\"flashed\\\" state.\"\n        },\n        \"cellFadeDelay\": {\n            \"default\": 1000,\n            \"description\": \"To be used in combination with `enableCellChangeFlash`, this configuration will set the delay in milliseconds of how long the \\\"flashed\\\" state animation takes to fade away after the timer set by `cellFlashDelay` has completed.\"\n        },\n        \"allowShowChangeAfterFilter\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to have cells flash after data changes even when the change is due to filtering.\",\n            \"more\": {\n                \"name\": \"Flashing Data Changes\",\n                \"url\": \"/flashing-cells/\"\n            }\n        },\n        \"stopEditingWhenCellsLoseFocus\": {\n            \"default\": false,\n            \"description\": \"Set this to `true` to [stop cell editing when grid loses focus](/cell-editing/#stop-editing-when-grid-loses-focus). The default is that the grid stays editing until focus goes onto another cell. For inline (non-popup) editors only.\"\n        },\n        \"enterMovesDown<br />enterMovesDownAfterEdit\": {\n            \"default\": false,\n            \"description\": \"Set both properties to `true` to have Excel-style behaviour for the <kbd>Enter</kbd> key, i.e. pressing the <kbd>Enter</kbd> key will move down to the cell beneath [as described here](/cell-editing/#enter-key-navigation).\"\n        }\n    },\n    \"headers\": {\n        \"meta\": {\n            \"displayName\": \"Headers\"\n        },\n        \"headerHeight\": {\n            \"default\": 25,\n            \"description\": \"The height in pixels for the row containing the column label header.\",\n            \"more\": {\n                \"name\": \"Header Height\",\n                \"url\": \"/column-headers/#header-height\"\n            }\n        },\n        \"groupHeaderHeight\": {\n            \"description\": \"The height in pixels for the rows containing header column groups. If not specified, it uses `headerHeight`.\",\n            \"more\": {\n                \"name\": \"Header Height\",\n                \"url\": \"/column-headers/#header-height\"\n            }\n        },\n        \"floatingFiltersHeight\": {\n            \"default\": 20,\n            \"description\": \"The height in pixels for the row containing the floating filters.\",\n            \"more\": {\n                \"name\": \"Header Height\",\n                \"url\": \"/column-headers/#header-height\"\n            }\n        },\n        \"pivotHeaderHeight\": {\n            \"description\": \"The height in pixels for the row containing the columns when in pivot mode. If not specified, it uses `headerHeight`.\",\n            \"more\": {\n                \"name\": \"Header Height\",\n                \"url\": \"/column-headers/#header-height\"\n            }\n        },\n        \"pivotGroupHeaderHeight\": {\n            \"description\": \"The height in pixels for the row containing header column groups when in pivot mode. If not specified, it uses `groupHeaderHeight`.\",\n            \"more\": {\n                \"name\": \"Header Height\",\n                \"url\": \"/column-headers/#header-height\"\n            }\n        }\n    },\n    \"rowGrouping\": {\n        \"meta\": {\n            \"displayName\": \"Row Grouping\"\n        },\n        \"groupDisplayType\": {\n            \"description\": \"Specifies how the results of row grouping should be displayed. The options are: <ul><li>`'singleColumn'`: single group column automatically added by the grid.</li><li>`'multipleColumns'`: a group column per row group is added automatically.</li><li>`'groupRows'`: group rows are automatically added instead of group columns.</li><li>`'custom'`: informs the grid that group columns will be provided.</li></ul>\",\n            \"more\": {\n                \"name\": \"Row Grouping - Display Types\",\n                \"url\": \"/grouping-display-types/\"\n            }\n        },\n        \"groupDefaultExpanded\": {\n            \"default\": 0,\n            \"description\": \"If grouping, set to the number of levels to expand by default, e.g. `0` for none, `1` for first level only, etc. Set to `-1` to expand everything.\",\n            \"more\": {\n                \"name\": \"Opening Group Levels by Default\",\n                \"url\": \"/grouping-opening-groups/#opening-group-levels-by-default\"\n            }\n        },\n        \"autoGroupColumnDef\": {\n            \"description\": \"Allows specifying the group 'auto column' if you are not happy with the default. If grouping, this column definition is included as the first column in the grid. If not grouping, this column is not included.\",\n            \"more\": {\n                \"name\": \"Group Column Configuration\",\n                \"url\": \"/grouping-single-group-column/#group-column-configuration\"\n            }\n        },\n        \"groupSelectsChildren\": {\n            \"default\": false,\n            \"description\": \"When `true`, if you select a group, the children of the group will also be selected.\",\n            \"more\": {\n                \"name\": \"Group Selection\",\n                \"url\": \"/row-selection/#group-selection\"\n            }\n        },\n        \"groupIncludeFooter\": {\n            \"default\": false,\n            \"description\": \"If grouping, this controls whether to show a group footer when the group is expanded. If `true`, then by default, the footer will contain aggregate data (if any) when shown and the header will be blank. When closed, the header will contain the aggregate data regardless of this setting (as the footer is hidden anyway). This is handy for 'total' rows, that are displayed below the data when the group is open, and alongside the group when it is closed.\",\n            \"more\": {\n                \"name\": \"Enabling Group Footers\",\n                \"url\": \"/grouping-footers/#enabling-group-footers\"\n            }\n        },\n        \"groupIncludeTotalFooter\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to show a 'grand total' group footer across all groups.\",\n            \"more\": {\n                \"name\": \"Enabling Group Footers\",\n                \"url\": \"/grouping-footers/#enabling-group-footers\"\n            }\n        },\n        \"groupSuppressBlankHeader\": {\n            \"default\": false,\n            \"description\": \"If `true`, and showing footer, aggregate data will always be displayed at both the header and footer levels. This stops the possibly undesirable behaviour of the header details 'jumping' to the footer on expand.\"\n        },\n        \"groupSelectsFiltered\": {\n            \"default\": false,\n            \"description\": \"If using `groupSelectsChildren`, then only the children that pass the current filter will get selected.\",\n            \"more\": {\n                \"name\": \"Group Selection\",\n                \"url\": \"/row-selection/#group-selection\"\n            }\n        },\n        \"showOpenedGroup\": {\n            \"default\": false,\n            \"description\": \"Shows the open group in the group column for non-group rows.\",\n            \"more\": {\n                \"name\": \"Showing Open Groups\",\n                \"url\": \"/grouping-single-group-column/#showing-open-groups\"\n            }\n        },\n        \"groupRemoveSingleChildren\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to collapse groups that only have one child.\",\n            \"more\": {\n                \"name\": \"Remove Single Children\",\n                \"url\": \"/grouping-single-group-column/#removing-single-children\"\n            }\n        },\n        \"groupRemoveLowestSingleChildren\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to collapse lowest level groups that only have one child.\",\n            \"more\": {\n                \"name\": \"Remove Single Children\",\n                \"url\": \"/grouping-single-group-column/#removing-single-children\"\n            }\n        },\n        \"groupHideOpenParents\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to hide parents that are open. When used with multiple columns for showing groups, it can give a more pleasing user experience.\",\n            \"more\": {\n                \"name\": \"Hide Open Parents\",\n                \"url\": \"/grouping-multiple-group-columns/#hide-open-parents\"\n            }\n        },\n        \"rowGroupPanelShow\": {\n            \"default\": \"never\",\n            \"options\": [\n                \"never\",\n                \"always\",\n                \"onlyWhenGrouping\"\n            ],\n            \"description\": \"When to show the 'row group panel' (where you drag rows to group) at the top.\",\n            \"more\": {\n                \"name\": \"Enabling Row Group Panel\",\n                \"url\": \"/grouping-group-panel/#enabling-row-group-panel\"\n            }\n        },\n        \"suppressDragLeaveHidesColumns\": {\n            \"default\": false,\n            \"description\": \"By default, dragging a column out of the grid, i.e. to the [Row Group Panel](/grouping-group-panel/), it will be hidden in the grid. This property prevents the column becoming hidden in the grid.\",\n            \"more\": {\n                \"name\": \"Keeping Columns Visible\",\n                \"url\": \"/grouping-group-panel/#keeping-columns-visible\"\n            }\n        },\n        \"suppressMakeColumnVisibleAfterUnGroup\": {\n            \"default\": false,\n            \"description\": \"By default, when a column is un-grouped, i.e. using the [Row Group Panel](/grouping-group-panel/), it is made visible in the grid. This property stops the column becoming visible again when un-grouping.\",\n            \"more\": {\n                \"name\": \"Keeping Columns Visible\",\n                \"url\": \"/grouping-group-panel/#keeping-columns-visible\"\n            }\n        }\n    },\n    \"rowPivoting\": {\n        \"meta\": {\n            \"displayName\": \"Row Pivoting\"\n        },\n        \"pivotMode\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to enable pivot mode.\",\n            \"more\": {\n                \"name\": \"Pivoting\",\n                \"url\": \"/pivoting/\"\n            }\n        },\n        \"pivotPanelShow\": {\n            \"default\": \"never\",\n            \"options\": [\n                \"never\",\n                \"always\",\n                \"onlyWhenPivoting\"\n            ],\n            \"description\": \"When to show the 'pivot panel' (where you drag rows to pivot) at the top. Note that the pivot panel will never show if `pivotMode` is off.\"\n        },\n        \"suppressAggFuncInHeader\": {\n            \"default\": false,\n            \"description\": \"When `true`, column headers won't include the `aggFunc` name, e.g. `'sum(Bank Balance)`' will just be `'Bank Balance'`.\"\n        },\n        \"suppressAggAtRootLevel\": {\n            \"default\": false,\n            \"description\": \"When `true`, the aggregations won't be computed for the root node of the grid.\",\n            \"more\": {\n                \"name\": \"Big Data Small Transactions\",\n                \"url\": \"/data-update-transactions/#example-small-changes-big-data\"\n            }\n        },\n        \"aggregateOnlyChangedColumns\": {\n            \"default\": false,\n            \"description\": \"When using [change detection](/change-detection/#tree-path-selection), only the updated column will be re-aggregated.\"\n        },\n        \"functionsReadOnly\": {\n            \"default\": false,\n            \"description\": \"If `true`, then row group, pivot and value aggregation will be read-only from the GUI. The grid will display what values are used for each, but will not allow the user to change the selection.\",\n            \"more\": {\n                \"name\": \"Read Only Functions\",\n                \"url\": \"/tool-panel-columns/#read-only-functions\"\n            }\n        },\n        \"aggFuncs\": {\n            \"description\": \"A map of 'function name' to 'function' for custom aggregation functions.\",\n            \"more\": {\n                \"name\": \"Custom Aggregation Functions\",\n                \"url\": \"/aggregation/#custom-aggregation-functions\"\n            }\n        },\n        \"suppressAggFilteredOnly\": {\n            \"default\": false,\n            \"description\": \"Set to `true` so that aggregations are not impacted by filtering.\",\n            \"more\": {\n                \"name\": \"Custom Aggregation Functions\",\n                \"url\": \"/aggregation/#filtering\"\n            }\n        },\n        \"pivotColumnGroupTotals\": {\n            \"options\": [\n                \"before\",\n                \"after\"\n            ],\n            \"description\": \"When set and the grid is in pivot mode, automatically calculated totals will appear within the Pivot Column Groups, in the position specified.\",\n            \"more\": {\n                \"name\": \"Pivot Column Group Totals\",\n                \"url\": \"/pivoting/#pivot-column-group-totals\"\n            }\n        },\n        \"pivotRowTotals\": {\n            \"options\": [\n                \"before\",\n                \"after\"\n            ],\n            \"description\": \"When set and the grid is in pivot mode, automatically calculated totals will appear for each value column in the position specified.\",\n            \"more\": {\n                \"name\": \"Pivot Row Totals\",\n                \"url\": \"/pivoting/#pivot-row-totals\"\n            }\n        },\n        \"suppressExpandablePivotGroups\": {\n            \"default\": false,\n            \"description\": \"When enabled, pivot column groups will appear 'fixed', without the ability to expand and collapse the column groups.\",\n            \"more\": {\n                \"name\": \"Fixed Pivot Column Groups\",\n                \"url\": \"/pivoting/#fixed-pivot-column-groups\"\n            }\n        },\n        \"pivotSuppressAutoColumn\": {\n            \"default\": false,\n            \"description\": \"If `true`, the grid will not swap in the grouping column when pivoting. Useful if pivoting using [Server Side Row Model](/server-side-model/) or [Viewport Row Model](/viewport/) and you want full control of all columns including the group column.\"\n        }\n    },\n    \"rowModels\": {\n        \"meta\": {\n            \"displayName\": \"Data and Row Models\"\n        },\n        \"rowModelType\": {\n            \"default\": \"clientSide\",\n            \"options\": [\n                \"clientSide\",\n                \"infinite\",\n                \"viewport\",\n                \"serverSide\"\n            ],\n            \"description\": \"Sets the [Row Model](/row-models/) type.\"\n        },\n        \"rowData\": {\n            \"description\": \"([Client-Side Row Model](/client-side-model/) only) Set the data to be displayed as rows in the grid.\"\n        },\n        \"immutableData\": {\n            \"default\": false,\n            \"description\": \"([Client-Side Row Model](/client-side-model/) only) Enables [Immutable Data](/immutable-data/) mode, for compatibility with immutable stores.\"\n        },\n        \"suppressModelUpdateAfterUpdateTransaction\": {\n            \"default\": false,\n            \"description\": \"([Client-Side Row Model](/client-side-model/) only) Prevents [Transactions](/data-update-transactions/) changing sort, filter, group or pivot state when transaction only contains updates.\",\n            \"more\": {\n                \"name\": \"Suppress Model Updates\",\n                \"url\": \"/data-update-transactions/#suppress-model-updates\"\n            }\n        },\n        \"pinnedTopRowData\": {\n            \"description\": \"Data to be displayed as [Pinned Top Rows](/row-pinning/) in the grid.\"\n        },\n        \"pinnedBottomRowData\": {\n            \"description\": \"Data to be displayed as [Pinned Bottom Rows](/row-pinning/) in the grid.\"\n        }\n    },\n    \"serverSideRowModel\": {\n        \"meta\": {\n            \"displayName\": \"Row Model: Server-Side\"\n        },\n        \"serverSideStoreType\": {\n            \"description\": \"Whether to use Full Store or Partial Store for storing rows.\",\n            \"default\": \"full\",\n            \"more\": {\n                \"name\": \"Row Stores\",\n                \"url\": \"/server-side-model-row-stores/\"\n            }\n        },\n        \"cacheBlockSize\": {\n            \"default\": 100,\n            \"description\": \"(Partial Store only) How many rows for each block in the store, i.e. how many rows returned from the server at a time.\"\n        },\n        \"maxBlocksInCache\": {\n            \"description\": \"(Partial Store only) How many blocks to keep in the store. Default is no limit, so every requested block is kept. Use this if you have memory concerns, and blocks that were least recently viewed will be purged when the limit is hit. The grid will additionally make sure it has all the blocks needed to display what is currently visible, in case this property is set to a low value.\"\n        },\n        \"maxConcurrentDatasourceRequests\": {\n            \"default\": 1,\n            \"description\": \"How many requests to hit the server with concurrently. If the max is reached, requests are queued.\"\n        },\n        \"blockLoadDebounceMillis\": {\n            \"description\": \"How many milliseconds to wait before loading a block. Useful when scrolling over many rows, spanning many Partial Store blocks, as it prevents blocks loading until scrolling has settled.\"\n        },\n        \"purgeClosedRowNodes\": {\n            \"default\": false,\n            \"description\": \"When enabled, closing group rows will remove children of that row. Next time the row is opened, child rows will be read from the datasource again. This property only applies when there is [Row Grouping](/server-side-model-grouping/).\"\n        },\n        \"serverSideSortingAlwaysResets\": {\n            \"default\": false,\n            \"description\": \"When enabled, always refreshes top level groups regardless of which column was sorted. This property only applies when there is [Row Grouping](/server-side-model-grouping/).\"\n        },\n        \"serverSideFilteringAlwaysResets\": {\n            \"default\": false,\n            \"description\": \"When enabled, always refreshes stores after filter has changed. Used by Full Store only, to allow Server-Side Filtering.\"\n        }\n    },\n    \"viewportRowModel\": {\n        \"meta\": {\n            \"displayName\": \"Row Model: Viewport\"\n        },\n        \"viewportRowModelPageSize\": {\n            \"description\": \"When using [Viewport Row Model](/viewport/), sets the page size for the viewport.\"\n        },\n        \"viewportRowModelBufferSize\": {\n            \"description\": \"When using [Viewport Row Model](/viewport/), sets the buffer size for the viewport.\"\n        },\n        \"viewportDatasource\": {\n            \"description\": \"To use the [Viewport Row Model](/viewport/) you need to provide the grid with a `viewportDatasource`.\"\n        }\n    },\n    \"scrolling\": {\n        \"meta\": {\n            \"displayName\": \"Scrolling\"\n        },\n        \"alwaysShowHorizontalScroll\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to always show the horizontal scrollbar.\"\n        },\n        \"alwaysShowVerticalScroll\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to always show the vertical scrollbar.\"\n        },\n        \"debounceVerticalScrollbar\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to debounce the vertical scrollbar. Can provide smoother scrolling on older browsers, e.g. Internet Explorer.\"\n        },\n        \"suppressHorizontalScroll\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to never show the horizontal scroll. This is useful if the grid is aligned with another grid and will scroll when the other grid scrolls. (Should not be used in combination with `alwaysShowHorizontalScroll`.)\",\n            \"more\": {\n                \"name\": \"Aligned Grid as Footer\",\n                \"url\": \"/aligned-grids/#example-aligned-floating-footer\"\n            }\n        },\n        \"suppressColumnVirtualisation\": {\n            \"default\": false,\n            \"description\": \"Set to `true` so that the grid doesn't virtualise the columns. For example, if you have 100 columns, but only 10 visible due to scrolling, all 100 will always be rendered.\"\n        },\n        \"suppressRowVirtualisation\": {\n            \"strikeThrough\": true,\n            \"description\": \"There is no such property as `suppressRowVirtualisation` - if you want to do this, then set the `rowBuffer` property to be very large, e.g. `9999`. **Warning: rendering lots of rows will mean a very large amount of rendering in the DOM which will slow things down.**\"\n        },\n        \"suppressMaxRenderedRowRestriction\": {\n            \"default\": false,\n            \"description\": \"By default the grid has a limit of rendering a maximum of 500 rows at once (remember the grid only renders rows you can see, so unless your display shows more than 500 rows without vertically scrolling this will never be an issue).<br />**This is only relevant if you are manually setting `rowBuffer` to a high value (rendering more rows than can be seen) or if your grid height is able to display more than 500 rows at once.**\"\n        },\n        \"suppressScrollOnNewData\": {\n            \"default\": false,\n            \"description\": \"When `true`, the grid will not scroll to the top when new row data is provided. Use this if you don't want the default behaviour of scrolling to the top every time you load new data.\"\n        },\n        \"suppressAnimationFrame\": {\n            \"default\": false,\n            \"description\": \"When `true`, the grid will not use animation frames when drawing rows while scrolling. Use this if the grid is working fast enough that you don't need animation frames and you don't want the grid to flicker.\"\n        }\n    },\n    \"pagination\": {\n        \"meta\": {\n            \"displayName\": \"Pagination\"\n        },\n        \"pagination\": {\n            \"default\": false,\n            \"description\": \"Set whether [Pagination](/row-pagination/) is enabled.\"\n        },\n        \"paginationPageSize\": {\n            \"default\": 100,\n            \"description\": \"How many rows to load per page. If `paginationAutoPageSize` is specified, this property is ignored.\",\n            \"more\": {\n                \"name\": \"Customising Pagination\",\n                \"url\": \"/row-pagination/#example-customising-pagination\"\n            }\n        },\n        \"paginationAutoPageSize\": {\n            \"default\": false,\n            \"description\": \"Set to `true` so that the number of rows to load per page is automatically adjusted by the grid so each page shows enough rows to just fill the area designated for the grid. If `false`, `paginationPageSize` is used.\",\n            \"more\": {\n                \"name\": \"Auto Page Size\",\n                \"url\": \"/row-pagination/#example-auto-page-size\"\n            }\n        },\n        \"suppressPaginationPanel\": {\n            \"default\": false,\n            \"description\": \"If `true`, the default grid controls for navigation are hidden. This is useful if `pagination=true` and you want to provide your own pagination controls. Otherwise, when `pagination=true` the grid automatically shows the necessary controls at the bottom so that the user can navigate through the different pages.\",\n            \"more\": {\n                \"name\": \"Custom Pagination Controls\",\n                \"url\": \"/row-pagination/#example-customising-pagination\"\n            }\n        },\n        \"paginateChildRows\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to have pages split children of groups when using Row Grouping or detail rows with Master Detail.\",\n            \"more\": {\n                \"name\": \"Pagination & Child Rows\",\n                \"url\": \"/row-pagination/#pagination--child-rows\"\n            }\n        }\n    },\n    \"fullWidthRenderers\": {\n        \"meta\": {\n            \"displayName\": \"Full Width Renderers\"\n        },\n        \"groupRowRenderer<br />groupRowRendererFramework\": {\n            \"description\": \"Sets the [Cell Renderer](/component-cell-renderer/) to use when `groupUseEntireRow=true`.\",\n            \"more\": {\n                \"name\": \"Row Grouping\",\n                \"url\": \"/grouping/#reference-callbacks\"\n            }\n        },\n        \"groupRowRendererParams\": {\n            \"description\": \"Customise the parameters provided to the group row renderer component.\"\n        },\n        \"groupRowInnerRenderer<br />groupRowInnerRendererFramework\": {\n            \"description\": \"Sets the inner [Cell Renderer](/component-cell-renderer/) to use when `groupUseEntireRow=true`.\",\n            \"more\": {\n                \"name\": \"Row Grouping\",\n                \"url\": \"/grouping/#reference-callbacks\"\n            }\n        },\n        \"fullWidthCellRenderer<br />fullWidthCellRendererFramework\": {\n            \"description\": \"Sets the [Cell Renderer](/component-cell-renderer/) to use for [Full Width Rows](/full-width-rows/).\"\n        },\n        \"fullWidthCellRendererParams\": {\n            \"description\": \"Customise the parameters provided to the full width cell renderer component.\"\n        }\n    },\n    \"masterDetail\": {\n        \"meta\": {\n            \"displayName\": \"Master Detail\"\n        },\n        \"masterDetail\": {\n            \"default\": false,\n            \"description\": \"Used to enable Master Detail.\",\n            \"more\": {\n                \"name\": \"Enabling Master Detail\",\n                \"url\": \"/master-detail/#enabling-master--detail\"\n            }\n        },\n        \"detailCellRendererParams\": {\n            \"description\": \"Specifies the params to be used by the default detail [Cell Renderer](/component-cell-renderer/).\",\n            \"more\": {\n                \"name\": \"Detail Grids\",\n                \"url\": \"/master-detail-grids/\"\n            }\n        },\n        \"keepDetailRows\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to keep detail rows for when they are displayed again.\"\n        },\n        \"keepDetailRowsCount\": {\n            \"default\": 10,\n            \"description\": \"Sets the number of details rows to keep.\"\n        },\n        \"detailRowHeight\": {\n            \"description\": \"Set fixed height in pixels for each detail row.\"\n        }\n    },\n    \"renderingStyling\": {\n        \"meta\": {\n            \"displayName\": \"Rendering and Styling\"\n        },\n        \"icons\": {\n            \"description\": \"[Icons](/custom-icons/) to use inside the grid instead of the grid's default icons.\",\n            \"more\": {\n                \"name\": \"Custom Icons\",\n                \"url\": \"/custom-icons/#set-the-icons-through-gridoptions-javascript\"\n            }\n        },\n        \"rowHeight\": {\n            \"default\": 25,\n            \"description\": \"Default [Row Height](/row-height/) in pixels.\"\n        },\n        \"animateRows\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to enable [Row Animation](/row-animation/).\"\n        },\n        \"rowStyle\": {\n            \"description\": \"The style to give a particular row.\",\n            \"more\": {\n                \"name\": \"Row Style\",\n                \"url\": \"/row-styles/#row-style\"\n            }\n        },\n        \"rowClass\": {\n            \"description\": \"The class to give a particular row.\",\n            \"more\": {\n                \"name\": \"Row Class\",\n                \"url\": \"/row-styles/#row-class\"\n            }\n        },\n        \"rowClassRules\": {\n            \"description\": \"Rules which can be applied to include certain CSS classes. See [Row Class Rules](/row-styles/#row-class-rules).\"\n        },\n        \"scrollbarWidth\": {\n            \"description\": \"Tell the grid how wide in pixels the scrollbar is, which is used in grid width calculations. Set only if using non-standard browser-provided scrollbars, so the grid can use the non-standard size in its calculations.\"\n        },\n        \"suppressRowHoverHighlight\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to not highlight rows by adding the `ag-row-hover` CSS class.\"\n        },\n        \"columnHoverHighlight\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to highlight columns by adding the `ag-column-hover` CSS class.\"\n        }\n    },\n    \"clipboard\": {\n        \"meta\": {\n            \"displayName\": \"Clipboard\"\n        },\n        \"suppressCopyRowsToClipboard\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to only have the range selection, and not row selection, copied to [clipboard](/clipboard/).\"\n        },\n        \"copyHeadersToClipboard\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to also include headers when copying to clipboard using <kbd>Ctrl</kbd>+<kbd>C</kbd> [clipboard](/clipboard/).\"\n        },\n        \"clipboardDeliminator\": {\n            \"description\": \"Specify the deliminator to use when copying to [clipboard](/clipboard/).\"\n        },\n        \"suppressLastEmptyLineOnPaste\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to work around a bug with Excel (Windows) that adds an extra empty line at the end of ranges copied to the clipboard.\"\n        },\n        \"enableCellTextSelection\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to be able to select the text within cells.<br />**Note:** When this is set to `true`, the clipboard service is disabled.\"\n        }\n    },\n    \"localisation\": {\n        \"meta\": {\n            \"displayName\": \"Localisation\"\n        },\n        \"localeText\": {\n            \"description\": \"A map of key->value pairs for localising text within the grid.\",\n            \"more\": {\n                \"name\": \"Localisation\",\n                \"url\": \"/localisation/\"\n            }\n        },\n        \"localeTextFunc\": {\n            \"description\": \"A callback for localising text within the grid.\",\n            \"more\": {\n                \"name\": \"Localisation\",\n                \"url\": \"/localisation/\"\n            }\n        }\n    },\n    \"overlays\": {\n        \"meta\": {\n            \"displayName\": \"Overlays\"\n        },\n        \"suppressLoadingOverlay\": {\n            \"default\": false,\n            \"description\": \"Disables the 'loading' [overlay](/overlays/).\"\n        },\n        \"suppressNoRowsOverlay\": {\n            \"default\": false,\n            \"description\": \"Disables the 'no rows' [overlay](/overlays/).\"\n        },\n        \"overlayLoadingTemplate\": {\n            \"description\": \"Provide a template for 'loading' [overlay](/overlays/).\"\n        },\n        \"overlayNoRowsTemplate\": {\n            \"description\": \"Provide a template for 'no rows' [overlay](/overlays/).\"\n        },\n        \"loadingOverlayComponent<br />loadingOverlayComponentFramework \": {\n            \"description\": \"Provide a custom [loading overlay component](/component-overlay/#loading-rows-overlay-interface).\"\n        },\n        \"loadingOverlayComponentParams\": {\n            \"type\": \"object\",\n            \"description\": \"Customise the parameters provided to the loading overlay component.\"\n        },\n        \"noRowsOverlayComponent<br />noRowsOverlayComponentFramework \": {\n            \"description\": \"Provide a custom [no rows overlay component](/component-overlay/#no-rows-overlay-interface).\"\n        },\n        \"noRowsOverlayComponentParams\": {\n            \"type\": \"object\",\n            \"description\": \"Customise the parameters provided to the no rows overlay component.\"\n        }\n    },\n    \"charts\": {\n        \"meta\": {\n            \"displayName\": \"Charts\",\n            \"page\": {\n                \"name\": \"Integrated Charts\",\n                \"url\": \"/integrated-charts/\"\n            }\n        },\n        \"enableCharts\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to [Enable Charts](/integrated-charts/#enabling-charts).\"\n        },\n        \"chartThemes\": {\n            \"default\": [\n                \"ag-default\",\n                \"ag-material\",\n                \"ag-pastel\",\n                \"ag-vivid\",\n                \"ag-solar\"\n            ],\n            \"description\": \"The list of chart themes to be used.\",\n            \"more\": {\n                \"name\": \"Chart Themes\",\n                \"url\": \"/integrated-charts-customisation/#provided-themes\"\n            }\n        },\n        \"customChartThemes\": {\n            \"type\": \"object\",\n            \"description\": \"A map containing custom chart themes.\",\n            \"more\": {\n                \"name\": \"Custom Chart Themes\",\n                \"url\": \"/integrated-charts-customisation/#custom-chart-themes\"\n            }\n        },\n        \"chartThemeOverrides\": {\n            \"type\": \"object\",\n            \"description\": \"Chart theme overrides applied to all themes, see [Overriding Existing Themes](/integrated-charts-customisation/#overriding-existing-themes).\"\n        }\n    },\n    \"components\": {\n        \"meta\": {\n            \"displayName\": \"Components\",\n            \"page\": {\n                \"name\": \"Components\",\n                \"url\": \"/components/\"\n            }\n        },\n        \"components\": {\n            \"type\": \"object\",\n            \"description\": \"A map of component names to plain JavaScript components.\"\n        },\n        \"frameworkComponents\": {\n            \"type\": \"object\",\n            \"description\": \"A map of component names to framework (React, Angular, etc.) components.\"\n        }\n    },\n    \"miscellaneous\": {\n        \"meta\": {\n            \"displayName\": \"Miscellaneous\"\n        },\n        \"popupParent\": {\n            \"type\": \"HTMLElement\",\n            \"description\": \"DOM element to use as [popup parent](/context-menu/#popup-parent) for grid popups (context menu, column menu etc).\"\n        },\n        \"tabIndex\": {\n            \"default\": 0,\n            \"description\": \"Change this value to set the tabIndex order of the Grid within your application.\"\n        },\n        \"valueCache\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to turn on the [value cache](/value-getters/#value-cache-properties).\"\n        },\n        \"valueCacheNeverExpires\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to configure the [value cache](/value-getters/#value-cache-properties) to not expire after data updates.\"\n        },\n        \"defaultCsvExportParams\": {\n            \"type\": \"object\",\n            \"description\": \"A default configuration object used to export to [CSV](/csv-export/).\"\n        },\n        \"defaultExcelExportParams\": {\n            \"type\": \"object\",\n            \"description\": \"A default configuration object used to export to [Excel](/excel-export/).\"\n        },\n        \"suppressMiddleClickScrolls\": {\n            \"default\": false,\n            \"description\": \"If `true`, middle clicks will result in `click` events for cells and rows. Otherwise the browser will use middle click to scroll the grid.<br />**Note:** Not all browsers fire `click` events with the middle button. Most will fire only `mousedown` and `mouseup` events, which can be used to focus a cell, but will not work to call the `onCellClicked` function.\"\n        },\n        \"suppressPreventDefaultOnMouseWheel\": {\n            \"default\": false,\n            \"description\": \"If `true`, mouse wheel events will be passed to the browser. Useful if your grid has no vertical scrolls and you want the mouse to scroll the browser page.\"\n        },\n        \"enableBrowserTooltips\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to use the browser's default tooltip instead of using the grid's [Tooltip Component](/component-tooltip/).\"\n        },\n        \"tooltipShowDelay\": {\n            \"default\": 2000,\n            \"description\": \"The delay in milliseconds that it takes for tooltips to show up once an element is hovered over.<br />**Note:** This property does not work if `enableBrowserTooltips` is `true`.\"\n        },\n        \"tooltipMouseTrack\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to have tooltips follow the cursor once they are displayed.\"\n        },\n        \"enableCellExpressions\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to allow [cell expressions](/cell-expressions/#cell-expressions).\"\n        },\n        \"domLayout\": {\n            \"default\": \"normal\",\n            \"options\": [\n                \"normal\",\n                \"autoHeight\",\n                \"print\"\n            ],\n            \"description\": \"Switch between layout options. See [Printing](/printing/) and [Auto Height](/grid-size/#grid-auto-height).\"\n        },\n        \"ensureDomOrder\": {\n            \"default\": false,\n            \"description\": \"When `true`, the order of rows and columns in the DOM are consistent with what is on screen.\",\n            \"more\": {\n                \"name\": \"Accessibility - Row and Column Order\",\n                \"url\": \"/accessibility/#ensure-dom-element-order\"\n            }\n        },\n        \"rowBuffer\": {\n            \"default\": 10,\n            \"description\": \"The number of rows rendered outside the viewable area the grid renders. Having a buffer means the grid will have rows ready to show as the user slowly scrolls vertically.\"\n        },\n        \"alignedGrids\": {\n            \"type\": \"object[]\",\n            \"description\": \"A list of grids to treat as [Aligned Grids](/aligned-grids/). If grids are aligned then the columns and horizontal scrolling will be kept in sync.\"\n        },\n        \"suppressParentsInRowNodes\": {\n            \"default\": false,\n            \"description\": \"If `true`, row nodes do not have their parents set. The grid doesn't use the parent reference, but it is included to help the client code navigate the node tree if it wants by providing bi-direction navigation up and down the tree. If this is a problem (e.g. if you need to convert the tree to JSON, which does not allow cyclic dependencies) then set this to `true`.\"\n        },\n        \"suppressDragLeaveHidesColumns\": {\n            \"default\": false,\n            \"description\": \"If `true`, when you drag a column out of the grid (e.g. to the group zone) the column is not hidden.\"\n        },\n        \"layoutInterval\": {\n            \"default\": 500,\n            \"description\": \"The interval in milliseconds that the grid uses to periodically check its size and lay itself out again if the size has changed, such as when your browser changes size, or your application changes the size of the `div` element that the grid lives inside. To stop the periodic layout, set it to `-1`.\"\n        },\n        \"enableRtl\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to operate the grid in [RTL (Right to Left)](/rtl/) mode.\"\n        },\n        \"debug\": {\n            \"default\": false,\n            \"description\": \"Set this to `true` to enable debug information from the grid and related components. Will result in additional logging being output, but very useful when investigating problems.\"\n        },\n        \"context\": {\n            \"type\": \"object\",\n            \"description\": \"Provides a [context](/context/) object that is provided to different callbacks the grid uses. Used for passing additional information to the callbacks by your application.\"\n        },\n        \"suppressContextMenu\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to not show the [context menu](/context-menu/). Use if you don't want to use the default 'right click' context menu.\"\n        },\n        \"preventDefaultOnContextMenu\": {\n            \"default\": false,\n            \"description\": \"When using `suppressContextMenu`, you can use the `onCellContextMenu` function to provide your own code to handle cell `contextmenu` events. This flag is useful to prevent the browser from showing its default context menu.\"\n        },\n        \"allowContextMenuWithControlKey\": {\n            \"default\": false,\n            \"description\": \"Allows [context menu](/context-menu/) to show, even when <kbd>Ctrl</kbd> key is held down.\"\n        },\n        \"statusBar\": {\n            \"type\": \"object\",\n            \"description\": \"Specifies the [status bar](/status-bar/) components to use in the status bar.\"\n        },\n        \"suppressTouch\": {\n            \"default\": false,\n            \"description\": \"Disables [touch support](/touch/) (but does not remove the browser's efforts to simulate mouse events on touch).\"\n        },\n        \"suppressAsyncEvents\": {\n            \"default\": false,\n            \"description\": \"Disables the asynchronous nature of the events introduced in v10, and makes them synchronous. This property only exists for the purpose of supporting legacy code which has a dependency on synchronous events from earlier versions (v9 or earlier) of AG Grid. **It is strongly recommended that you do not change this property unless you have legacy issues.**\"\n        },\n        \"suppressCsvExport\": {\n            \"default\": false,\n            \"description\": \"Prevents the user from exporting the grid to CSV.\"\n        },\n        \"suppressExcelExport\": {\n            \"default\": false,\n            \"description\": \"Prevents the user from exporting the grid to Excel.\"\n        },\n        \"excelStyles\": {\n            \"description\": \"A list (array) of [Excel Styles](/excel-export-styles/#excelstyle) to be used when [exporting to Excel with styles](/excel-export-styles/)\",\n            \"type\": \"ExcelStyle[]\"\n        },\n        \"asyncTransactionWaitMillis\": {\n            \"description\": \"How many milliseconds to wait before executing a [batch of async transactions](/data-update-high-frequency/).\"\n        },\n        \"suppressPropertyNamesCheck\": {\n            \"default\": false,\n            \"description\": \"Disables showing a warning message in the console if using a `gridOptions` or `colDef` property that doesn't exist.\"\n        },\n        \"suppressRowTransform\": {\n            \"default\": false,\n            \"description\": \"Uses CSS `top` instead of CSS `transform` for positioning rows. Useful if the transform function is causing issues such as used in [row spanning](/row-spanning/).\"\n        },\n        \"serverSideSortingAlwaysResets\": {\n            \"default\": false,\n            \"description\": \"When `true`, a full reset will be performed when sorting using the [Server-Side Row Model](/server-side-model/).\"\n        },\n        \"suppressBrowserResizeObserver\": {\n            \"default\": false,\n            \"description\": \"The grid will check for `ResizeObserver` and use it if it exists in the browser, otherwise it will use the grid's alternative implementation. Some users reported issues with Chrome's `ResizeObserver`. Use this property to always use the grid's alternative implementation should such problems exist.\"\n        },\n        \"suppressFocusAfterRefresh\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to not set focus back on the grid after a refresh. This can avoid issues where you want to keep the focus on another part of the browser.\"\n        }\n    }\n}"}},{"relativePath":"licensing/menu.json","internal":{"content":"[\n  {\n    \"group\": \"Basics\",\n    \"items\": [\n      {\n        \"title\": \"Getting Started\",\n        \"matrixExcludeChildren\": true,\n        \"items\": [\n          {\n            \"title\": \"Tutorial\",\n            \"url\": \"/getting-started/\",\n            \"icon\": \"framework\",\n            \"pane\": \"left\"\n          },\n          {\n            \"title\": \"Video Tutorial\",\n            \"url\": \"{video-tutorial}\",\n            \"icon\": \"youtube\",\n            \"menuHide\": true,\n            \"pane\": \"left\"\n          },\n          {\n            \"title\": \"Plunker Example\",\n            \"url\": \"{example}\",\n            \"icon\": \"plunker\",\n            \"menuHide\": true,\n            \"frameworks\": [\n              \"javascript\"\n            ],\n            \"pane\": \"left\"\n          },\n          {\n            \"title\": \"Stackblitz Example\",\n            \"url\": \"{example}\",\n            \"icon\": \"stackblitz\",\n            \"menuHide\": true,\n            \"frameworks\": [\n              \"angular\",\n              \"react\",\n              \"vue\"\n            ],\n            \"pane\": \"left\"\n          },\n          {\n            \"title\": \"Thinkster Course\",\n            \"url\": \"{thinkster}\",\n            \"icon\": \"thinkster\",\n            \"menuHide\": true,\n            \"frameworks\": [\n              \"angular\",\n              \"react\"\n            ],\n            \"pane\": \"left\"\n          },\n          {\n            \"title\": \"AngularJS\",\n            \"icon\": \"angularjs\",\n            \"url\": \"/angularjs/\",\n            \"frameworks\": [\n              \"angular\"\n            ],\n            \"pane\": \"right\"\n          },\n          {\n            \"title\": \"React UI\",\n            \"icon\": \"reactui\",\n            \"url\": \"/reactui/\",\n            \"frameworks\": [\n              \"react\"\n            ],\n            \"pane\": \"right\"\n          },\n          {\n            \"title\": \"Vue 3 Tutorial\",\n            \"icon\": \"vue\",\n            \"url\": \"/vue3/\",\n            \"frameworks\": [\n              \"vue\"\n            ],\n            \"pane\": \"right\"\n          }\n        ]\n      },\n      {\n        \"title\": \"Interface / API\",\n        \"icon\": \"icon-api\",\n        \"matrixExcludeChildren\": true,\n        \"items\": [\n          {\n            \"title\": \"Grid Interface\",\n            \"url\": \"/grid-interface/\",\n            \"showInCollapsed\": true,\n            \"items\": [\n              {\n                \"title\": \"Grid Properties\",\n                \"url\": \"/grid-properties/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Grid API\",\n                \"url\": \"/grid-api/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Grid Events\",\n                \"box-title\": \"Events\",\n                \"url\": \"/grid-events/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Grid Callbacks\",\n                \"url\": \"/grid-callbacks/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Row Object\",\n                \"url\": \"/row-object/\",\n                \"showInCollapsed\": true\n              }\n            ]\n          },\n          {\n            \"title\": \"Column Interface\",\n            \"url\": \"/column-interface/\",\n            \"showInCollapsed\": true,\n            \"items\": [\n              {\n                \"title\": \"Column Properties\",\n                \"url\": \"/column-properties/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Column API\",\n                \"url\": \"/column-api/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Column Object\",\n                \"url\": \"/column-object/\",\n                \"showInCollapsed\": true\n              }\n            ]\n          }\n        ]\n      },\n      {\n        \"title\": \"Columns\",\n        \"icon\": \"icon-columns\",\n        \"matrixExcludeChildren\": true,\n        \"items\": [\n          {\n            \"title\": \"Column Definitions\",\n            \"box-title\": \"Definitions\",\n            \"url\": \"/column-definitions/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Updating Definitions\",\n            \"box-title\": \"State\",\n            \"url\": \"/column-updating-definitions/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Column State\",\n            \"box-title\": \"State\",\n            \"url\": \"/column-state/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Column Headers\",\n            \"box-title\": \"Headers\",\n            \"url\": \"/column-headers/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Column Groups\",\n            \"box-title\": \"Groups\",\n            \"url\": \"/column-groups/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Column Sizing\",\n            \"box-title\": \"Sizing\",\n            \"url\": \"/column-sizing/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Column Moving\",\n            \"box-title\": \"Moving\",\n            \"url\": \"/column-moving/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Column Pinning\",\n            \"box-title\": \"Pinning\",\n            \"url\": \"/column-pinning/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Column Spanning\",\n            \"box-title\": \"Spanning\",\n            \"url\": \"/column-spanning/\",\n            \"showInCollapsed\": true\n          }\n        ]\n      },\n      {\n        \"title\": \"Rows\",\n        \"icon\": \"icon-rows\",\n        \"items\": [\n          {\n            \"title\": \"Row Sorting\",\n            \"box-title\": \"Sorting\",\n            \"url\": \"/row-sorting/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Row Spanning\",\n            \"box-title\": \"Spanning\",\n            \"url\": \"/row-spanning/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Row Pinning\",\n            \"box-title\": \"Pinning\",\n            \"url\": \"/row-pinning/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Row Height\",\n            \"box-title\": \"Height\",\n            \"url\": \"/row-height/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Full Width Rows\",\n            \"box-title\": \"Full Width\",\n            \"url\": \"/full-width-rows/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Row Animation\",\n            \"box-title\": \"Animation\",\n            \"url\": \"/row-animation/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Row Dragging\",\n            \"box-title\": \"Dragging\",\n            \"showInCollapsed\": true,\n            \"url\": \"/row-dragging/\",\n            \"items\": [\n              {\n                \"title\": \"External DropZone\",\n                \"url\": \"/row-dragging-to-external-dropzone/\"\n              },\n              {\n                \"title\": \"Grid to Grid\",\n                \"url\": \"/row-dragging-to-grid/\"\n              }\n            ]\n          }\n        ]\n      },\n      {\n        \"title\": \"Build & Tooling\",\n        \"icon\": \"icon-information\",\n        \"matrixExcludeChildren\": true,\n        \"items\": [\n          {\n            \"title\": \"Install with NPM\",\n            \"url\": \"/npm/\",\n            \"showInCollapsed\": true,\n            \"frameworks\": [\n              \"javascript\"\n            ]\n          },\n          {\n            \"title\": \"Download Bundles\",\n            \"url\": \"/download/\",\n            \"showInCollapsed\": true,\n            \"frameworks\": [\n              \"javascript\"\n            ]\n          },\n          {\n            \"title\": \"SystemJS\",\n            \"url\": \"/systemjs/\",\n            \"showInCollapsed\": true,\n            \"frameworks\": [\n              \"angular\"\n            ]\n          },\n          {\n            \"title\": \"Webpack 1\",\n            \"url\": \"/webpack/\",\n            \"showInCollapsed\": true,\n            \"frameworks\": [\n              \"angular\"\n            ]\n          },\n          {\n            \"title\": \"Webpack 2\",\n            \"url\": \"/webpack-2/\",\n            \"showInCollapsed\": true,\n            \"frameworks\": [\n              \"angular\"\n            ]\n          },\n          {\n            \"title\": \"Webpack 3\",\n            \"url\": \"/webpack-3/\",\n            \"showInCollapsed\": true,\n            \"frameworks\": [\n              \"angular\"\n            ]\n          },\n          {\n            \"title\": \"Community & Enterprise\",\n            \"url\": \"/licensing/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Packages & Modules\",\n            \"url\": \"/packages-modules/\",\n            \"showInCollapsed\": true,\n            \"items\": [\n              {\n                \"title\": \"Packages\",\n                \"url\": \"/packages/\"\n              },\n              {\n                \"title\": \"Modules - Overview\",\n                \"url\": \"/modules/\"\n              },\n              {\n                \"title\": \"Modules - More Details\",\n                \"url\": \"/modules-more-details/\"\n              },\n              {\n                \"title\": \"Building\",\n                \"url\": \"/modules-building/\"\n              }\n            ]\n          },\n          {\n            \"title\": \"Supported Browsers\",\n            \"url\": \"/supported-browsers/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Building\",\n            \"url\": \"/building/\",\n            \"showInCollapsed\": true,\n            \"frameworks\": [\n              \"javascript\"\n            ],\n            \"items\": [\n              {\n                \"title\": \"Rollup\",\n                \"url\": \"/building-rollup/\",\n                \"frameworks\": [\n                  \"javascript\"\n                ]\n              },\n              {\n                \"title\": \"TypeScript & Webpack\",\n                \"url\": \"/building-typescript/\",\n                \"frameworks\": [\n                  \"javascript\"\n                ]\n              },\n              {\n                \"title\": \"AMD\",\n                \"url\": \"/building-amd/\",\n                \"frameworks\": [\n                  \"javascript\"\n                ]\n              }\n            ]\n          }\n        ]\n      }\n    ]\n  },\n  {\n    \"group\": \"Core Features\",\n    \"items\": [\n      {\n        \"title\": \"Layout & Styling\",\n        \"icon\": \"icon-style\",\n        \"items\": [\n          {\n            \"title\": \"Styling Rows\",\n            \"box-title\": \"Rows\",\n            \"url\": \"/row-styles/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Styling Cells\",\n            \"box-title\": \"Cells\",\n            \"url\": \"/cell-styles/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Themes\",\n            \"url\": \"/themes/\",\n            \"matrixExcludeChildren\": true,\n            \"showInCollapsed\": true,\n            \"items\": [\n              {\n                \"title\": \"Provided Themes\",\n                \"url\": \"/themes-provided/\"\n              },\n              {\n                \"title\": \"Customising Themes\",\n                \"url\": \"/themes-customising/\"\n              },\n              {\n                \"title\": \"Migrating to v23+\",\n                \"url\": \"/themes-v23-migration/\"\n              }\n            ]\n          },\n          {\n            \"title\": \"Grid Size\",\n            \"url\": \"/grid-size/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Custom Icons\",\n            \"box-title\": \"Icons\",\n            \"url\": \"/custom-icons/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Printing\",\n            \"url\": \"/printing/\",\n            \"showInCollapsed\": true\n          }\n        ]\n      },\n      {\n        \"title\": \"Client-Side Data\",\n        \"icon\": \"icon-data\",\n        \"items\": [\n          {\n            \"title\": \"Overview\",\n            \"url\": \"/client-side-model/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Accessing Data\",\n            \"url\": \"/accessing-data/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Updating Data\",\n            \"url\": \"/data-update/\",\n            \"showInCollapsed\": true,\n            \"items\": [\n              {\n                \"title\": \"Single Row / Cell\",\n                \"url\": \"/data-update-single-row-cell/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Transactions\",\n                \"url\": \"/data-update-transactions/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"High Frequency\",\n                \"url\": \"/data-update-high-frequency/\",\n                \"showInCollapsed\": true\n              }\n            ]\n          },\n          {\n            \"title\": \"Immutable Data\",\n            \"url\": \"/immutable-data/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Context\",\n            \"url\": \"/context/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"See Also\",\n            \"url\": \"\",\n            \"frameworks\": [\n              \"angular\",\n              \"react\",\n              \"vue\"\n            ],\n            \"items\": [\n              {\n                \"title\": \"Use with RxJS\",\n                \"url\": \"/rxjs/\"\n              }\n            ]\n          }\n        ]\n      },\n      {\n        \"title\": \"Server-Side Data\",\n        \"icon\": \"icon-data\",\n        \"items\": [\n          {\n            \"title\": \"Row Models\",\n            \"url\": \"/row-models/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Server-Side Row Model\",\n            \"url\": \"/server-side-model/\",\n            \"showInCollapsed\": true,\n            \"enterprise\": true,\n            \"matrixExcludeChildren\": true,\n            \"items\": [\n              {\n                \"title\": \"Datasource\",\n                \"url\": \"/server-side-model-datasource/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Row Stores\",\n                \"url\": \"/server-side-model-row-stores/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Configuration\",\n                \"url\": \"/server-side-model-configuration/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Sorting\",\n                \"url\": \"/server-side-model-sorting/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Filtering\",\n                \"url\": \"/server-side-model-filtering/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Row Grouping\",\n                \"url\": \"/server-side-model-grouping/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Refresh\",\n                \"url\": \"/server-side-model-refresh/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Pivoting\",\n                \"url\": \"/server-side-model-pivoting/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Pagination\",\n                \"url\": \"/server-side-model-pagination/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Row Selection\",\n                \"url\": \"/server-side-model-selection/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Changing Columns\",\n                \"url\": \"/server-side-model-changing-columns/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Updating Data\",\n                \"url\": \"/server-side-model-updating/\",\n                \"enterprise\": true,\n                \"items\": [\n                  {\n                    \"title\": \"Transactions\",\n                    \"url\": \"/server-side-model-transactions/\",\n                    \"enterprise\": true\n                  },\n                  {\n                    \"title\": \"High Frequency\",\n                    \"url\": \"/server-side-model-high-frequency/\",\n                    \"enterprise\": true\n                  }\n                ]\n              },\n              {\n                \"title\": \"Load Retry\",\n                \"url\": \"/server-side-model-retry/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Row Height\",\n                \"url\": \"/server-side-model-row-height/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Master Detail\",\n                \"url\": \"/server-side-model-master-detail/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Tree Data\",\n                \"url\": \"/server-side-model-tree-data/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"See Also\",\n                \"url\": \"\",\n                \"items\": [\n                  {\n                    \"title\": \"Using Node.js & MySQL\",\n                    \"url\": \"/server-side-operations-nodejs/\",\n                    \"enterprise\": true\n                  },\n                  {\n                    \"title\": \"Using GraphQL & MySQL\",\n                    \"url\": \"/server-side-operations-graphql/\",\n                    \"enterprise\": true\n                  },\n                  {\n                    \"title\": \"Using Java & Oracle\",\n                    \"url\": \"/server-side-operations-oracle/\",\n                    \"enterprise\": true\n                  },\n                  {\n                    \"title\": \"Using Java & Apache Spark\",\n                    \"url\": \"/server-side-operations-spark/\",\n                    \"enterprise\": true\n                  }\n                ]\n              }\n            ]\n          },\n          {\n            \"title\": \"Infinite Row Model\",\n            \"url\": \"/infinite-scrolling/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Viewport Row Model\",\n            \"url\": \"/viewport/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          }\n        ]\n      },\n      {\n        \"title\": \"Selection\",\n        \"icon\": \"icon-selection\",\n        \"items\": [\n          {\n            \"title\": \"Overview\",\n            \"url\": \"/selection-overview/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Row Selection\",\n            \"url\": \"/row-selection/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Range Selection\",\n            \"url\": \"/range-selection/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true,\n            \"items\": [\n              {\n                \"title\": \"Range Handle\",\n                \"url\": \"/range-selection-handle/\",\n                \"enterprise\": true,\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Fill Handle\",\n                \"url\": \"/range-selection-fill-handle/\",\n                \"enterprise\": true,\n                \"showInCollapsed\": true\n              }\n            ]\n          }\n        ]\n      },\n      {\n        \"title\": \"Filtering\",\n        \"icon\": \"icon-filter\",\n        \"items\": [\n          {\n            \"title\": \"Overview\",\n            \"url\": \"/filtering-overview/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Column Filters\",\n            \"url\": \"/filtering/\",\n            \"showInCollapsed\": false,\n            \"items\": [\n              {\n                \"title\": \"Provided Column Filters\",\n                \"url\": \"/filter-provided/\"\n              },\n              {\n                \"title\": \"Simple Column Filters\",\n                \"url\": \"/filter-provided-simple/\",\n                \"items\": [\n                  {\n                    \"title\": \"Text Filter\",\n                    \"url\": \"/filter-text/\",\n                    \"showInCollapsed\": true\n                  },\n                  {\n                    \"title\": \"Number Filter\",\n                    \"url\": \"/filter-number/\",\n                    \"showInCollapsed\": true\n                  },\n                  {\n                    \"title\": \"Date Filter\",\n                    \"url\": \"/filter-date/\",\n                    \"showInCollapsed\": true\n                  }\n                ]\n              },\n              {\n                \"title\": \"Set Filter\",\n                \"url\": \"/filter-set/\",\n                \"enterprise\": true,\n                \"matrixExcludeChildren\": true,\n                \"showInCollapsed\": true,\n                \"items\": [\n                  {\n                    \"title\": \"Filter List\",\n                    \"url\": \"/filter-set-filter-list/\",\n                    \"enterprise\": true\n                  },\n                  {\n                    \"title\": \"Data Updates\",\n                    \"url\": \"/filter-set-data-updates/\",\n                    \"enterprise\": true\n                  },\n                  {\n                    \"title\": \"Mini Filter\",\n                    \"url\": \"/filter-set-mini-filter/\",\n                    \"enterprise\": true\n                  },\n                  {\n                    \"title\": \"Excel Mode\",\n                    \"url\": \"/filter-set-excel-mode/\",\n                    \"enterprise\": true\n                  },\n                  {\n                    \"title\": \"API\",\n                    \"url\": \"/filter-set-api/\",\n                    \"enterprise\": true\n                  }\n                ]\n              },\n              {\n                \"title\": \"Multi Filter\",\n                \"url\": \"/filter-multi/\",\n                \"enterprise\": true,\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Filter API\",\n                \"url\": \"/filter-api/\"\n              },\n              {\n                \"title\": \"Floating Filters\",\n                \"url\": \"/floating-filters/\"\n              },\n              {\n                \"title\": \"Custom Filter\",\n                \"url\": \"/filter-custom/\"\n              }\n            ]\n          },\n          {\n            \"title\": \"External Filter\",\n            \"url\": \"/filter-external/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Quick Filter\",\n            \"url\": \"/filter-quick/\",\n            \"showInCollapsed\": true\n          }\n        ]\n      },\n      {\n        \"title\": \"Rendering\",\n        \"icon\": \"icon-render-cells\",\n        \"items\": [\n          {\n            \"title\": \"Cell Content\",\n            \"url\": \"/cell-content/\",\n            \"showInCollapsed\": true,\n            \"items\": [\n              {\n                \"title\": \"Value Getters\",\n                \"url\": \"/value-getters/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Value Formatters\",\n                \"url\": \"/value-formatters/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Expressions\",\n                \"url\": \"/cell-expressions/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Reference Data\",\n                \"url\": \"/reference-data/\",\n                \"showInCollapsed\": true\n              }\n            ]\n          },\n          {\n            \"title\": \"Cell Rendering\",\n            \"url\": \"/cell-rendering/\",\n            \"showInCollapsed\": true,\n            \"items\": [\n              {\n                \"title\": \"Group Cell Renderer\",\n                \"url\": \"/group-cell-renderer/\"\n              },\n              {\n                \"title\": \"Change Cell Renderers\",\n                \"url\": \"/change-cell-renderers/\"\n              }\n            ]\n          },\n          {\n            \"title\": \"Rendering API\",\n            \"url\": \"/rendering-api/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"View Refresh\",\n            \"url\": \"/view-refresh/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Flashing Cells\",\n            \"url\": \"/flashing-cells/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Change Detection\",\n            \"url\": \"/change-detection/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"See Also\",\n            \"url\": \"\",\n            \"items\": [\n              {\n                \"title\": \"Expressions & Context\",\n                \"url\": \"/expressions-and-context/\"\n              }\n            ]\n          }\n        ]\n      },\n      {\n        \"title\": \"Editing\",\n        \"icon\": \"icon-edit-cells\",\n        \"items\": [\n          {\n            \"title\": \"Cell Editing\",\n            \"url\": \"/cell-editing/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Saving Content\",\n            \"url\": \"/saving-content/\",\n            \"showInCollapsed\": true,\n            \"items\": [\n              {\n                \"title\": \"Value Parsers\",\n                \"url\": \"/value-parsers/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Value Setters\",\n                \"url\": \"/value-setters/\",\n                \"showInCollapsed\": true\n              }\n            ]\n          },\n          {\n            \"title\": \"Provided Editors\",\n            \"url\": \"/provided-cell-editors/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Undo / Redo Edits\",\n            \"url\": \"/undo-redo-edits/\",\n            \"showInCollapsed\": true\n          }\n        ]\n      },\n      {\n        \"title\": \"Group & Pivot\",\n        \"icon\": \"icon-group\",\n        \"items\": [\n          {\n            \"title\": \"Row Grouping\",\n            \"url\": \"/grouping/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true,\n            \"matrixExcludeChildren\": true,\n            \"items\": [\n              {\n                \"title\": \"Display Types\",\n                \"url\": \"/grouping-display-types/\",\n                \"items\": [\n                  {\n                    \"title\": \"Single Group Column\",\n                    \"url\": \"/grouping-single-group-column/\",\n                    \"enterprise\": true,\n                    \"showInCollapsed\": false\n                  },\n                  {\n                    \"title\": \"Multiple Group Columns\",\n                    \"url\": \"/grouping-multiple-group-columns/\",\n                    \"enterprise\": true,\n                    \"showInCollapsed\": false\n                  },\n                  {\n                    \"title\": \"Group Rows\",\n                    \"url\": \"/grouping-group-rows/\",\n                    \"enterprise\": true,\n                    \"showInCollapsed\": false\n                  },\n                  {\n                    \"title\": \"Custom Group Columns\",\n                    \"url\": \"/grouping-custom-group-columns/\",\n                    \"enterprise\": true,\n                    \"showInCollapsed\": false\n                  }\n                ]\n              },\n              {\n                \"title\": \"Row Group Panel\",\n                \"url\": \"/grouping-group-panel/\",\n                \"enterprise\": true,\n                \"showInCollapsed\": false\n              },\n              {\n                \"title\": \"Group Order\",\n                \"url\": \"/grouping-group-order/\",\n                \"enterprise\": true,\n                \"showInCollapsed\": false\n              },\n              {\n                \"title\": \"Sorting Groups\",\n                \"url\": \"/grouping-sorting/\",\n                \"enterprise\": true,\n                \"showInCollapsed\": false\n              },\n              {\n                \"title\": \"Filtering Groups\",\n                \"url\": \"/grouping-filtering/\",\n                \"enterprise\": true,\n                \"showInCollapsed\": false\n              },\n              {\n                \"title\": \"Group Footers\",\n                \"url\": \"/grouping-footers/\",\n                \"enterprise\": true,\n                \"showInCollapsed\": false\n              },\n              {\n                \"title\": \"Opening Groups\",\n                \"url\": \"/grouping-opening-groups/\",\n                \"enterprise\": true,\n                \"showInCollapsed\": false\n              },\n              {\n                \"title\": \"Complex Objects\",\n                \"url\": \"/grouping-complex-objects/\",\n                \"enterprise\": true,\n                \"showInCollapsed\": false\n              },\n              {\n                \"title\": \"Unbalanced Groups\",\n                \"url\": \"/grouping-unbalanced-groups/\",\n                \"enterprise\": true,\n                \"showInCollapsed\": false\n              }\n            ]\n          },\n          {\n            \"title\": \"Aggregation\",\n            \"url\": \"/aggregation/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Tree Data\",\n            \"url\": \"/tree-data/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Pivoting\",\n            \"url\": \"/pivoting/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          }\n        ]\n      },\n      {\n        \"title\": \"Master Detail\",\n        \"icon\": \"icon-misc\",\n        \"items\": [\n          {\n            \"title\": \"Overview\",\n            \"url\": \"/master-detail/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Detail Grids\",\n            \"url\": \"/master-detail-grids/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Detail Height\",\n            \"url\": \"/master-detail-height/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Detail Refresh\",\n            \"url\": \"/master-detail-refresh/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Master Rows\",\n            \"url\": \"/master-detail-master-rows/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Nesting\",\n            \"url\": \"/master-detail-nesting/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Custom Detail\",\n            \"url\": \"/master-detail-custom-detail/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": false\n          },\n          {\n            \"title\": \"Other\",\n            \"url\": \"/master-detail-other/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": false\n          }\n        ]\n      },\n      {\n        \"title\": \"Import & Export\",\n        \"icon\": \"icon-import-export\",\n        \"items\": [\n          {\n            \"title\": \"CSV Export\",\n            \"url\": \"/csv-export/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Excel Export\",\n            \"url\": \"/excel-export/\",\n            \"showInCollapsed\": true,\n            \"enterprise\": true,\n            \"items\": [\n              {\n                \"title\": \"API Reference\",\n                \"url\": \"/excel-export-api/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Styles\",\n                \"url\": \"/excel-export-styles/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Formulas\",\n                \"url\": \"/excel-export-formulas/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Extra Content\",\n                \"url\": \"/excel-export-extra-content/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Images\",\n                \"url\": \"/excel-export-images/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Multiple Sheets\",\n                \"url\": \"/excel-export-multiple-sheets/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Rows\",\n                \"url\": \"/excel-export-rows/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Columns\",\n                \"url\": \"/excel-export-columns/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Data Types\",\n                \"url\": \"/excel-export-data-types/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Hyperlinks\",\n                \"url\": \"/excel-export-hyperlinks/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Master Detail\",\n                \"url\": \"/excel-export-master-detail/\",\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Page Setup\",\n                \"url\": \"/excel-export-page-setup/\",\n                \"enterprise\": true\n              }\n            ]\n          },\n          {\n            \"title\": \"Clipboard\",\n            \"url\": \"/clipboard/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Drag & Drop\",\n            \"url\": \"/drag-and-drop/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"See Also\",\n            \"url\": \"\",\n            \"items\": [\n              {\n                \"title\": \"Import Excel\",\n                \"url\": \"/excel-import/\"\n              }\n            ]\n          }\n        ]\n      }\n    ]\n  },\n  {\n    \"group\": \"Extending the grid\",\n    \"items\": [\n      {\n        \"title\": \"Accessories\",\n        \"icon\": \"icon-accessories\",\n        \"level-2-display-style-forced\": \"block\",\n        \"items\": [\n          {\n            \"title\": \"Tool Panels\",\n            \"url\": \"/tool-panel/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true,\n            \"items\": [\n              {\n                \"title\": \"Side Bar\",\n                \"url\": \"/side-bar/\",\n                \"enterprise\": true,\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Columns Tool Panel\",\n                \"url\": \"/tool-panel-columns/\",\n                \"showInCollapsed\": true,\n                \"enterprise\": true\n              },\n              {\n                \"title\": \"Filters Tool Panel\",\n                \"url\": \"/tool-panel-filters/\",\n                \"showInCollapsed\": true,\n                \"enterprise\": true\n              }\n            ]\n          },\n          {\n            \"title\": \"Column Menu\",\n            \"url\": \"/column-menu/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Context Menu\",\n            \"url\": \"/context-menu/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Status Bar\",\n            \"url\": \"/status-bar/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Overlays\",\n            \"url\": \"/overlays/\",\n            \"showInCollapsed\": true\n          }\n        ]\n      },\n      {\n        \"title\": \"Components\",\n        \"icon\": \"icon-components\",\n        \"items\": [\n          {\n            \"title\": \"Registering Components\",\n            \"url\": \"/components/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Component Types\",\n            \"url\": \"/component-types/\",\n            \"showInCollapsed\": true,\n            \"items\": [\n              {\n                \"title\": \"Cell Renderer\",\n                \"box-title\": \"Cell\",\n                \"url\": \"/component-cell-renderer/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Cell Editor\",\n                \"box-title\": \"Editor\",\n                \"url\": \"/component-cell-editor/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Date Component\",\n                \"box-title\": \"Date\",\n                \"url\": \"/component-date/\"\n              },\n              {\n                \"title\": \"Filter Component\",\n                \"box-title\": \"Filter\",\n                \"url\": \"/component-filter/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Floating Filter Component\",\n                \"box-title\": \"Floating Filter\",\n                \"url\": \"/component-floating-filter/\"\n              },\n              {\n                \"title\": \"Header Component\",\n                \"box-title\": \"Header\",\n                \"url\": \"/component-header/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Loading Cell Renderer\",\n                \"box-title\": \"Loading\",\n                \"url\": \"/component-loading-cell-renderer/\"\n              },\n              {\n                \"title\": \"Overlay Component\",\n                \"box-title\": \"Overlays\",\n                \"url\": \"/component-overlay/\"\n              },\n              {\n                \"title\": \"Status Bar Component\",\n                \"box-title\": \"Status Bar\",\n                \"url\": \"/component-status-bar/\",\n                \"enterprise\": true,\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Tool Panel Component\",\n                \"box-title\": \"Tool Panel\",\n                \"url\": \"/component-tool-panel/\",\n                \"enterprise\": true,\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Tooltip Component\",\n                \"box-title\": \"Tooltip\",\n                \"url\": \"/component-tooltip/\",\n                \"showInCollapsed\": true\n              },\n              {\n                \"title\": \"Styling Components\",\n                \"box-title\": \"Tooltip\",\n                \"url\": \"/component-styling/\",\n                \"showInCollapsed\": true,\n                \"frameworks\": [\n                  \"react\"\n                ]\n              },\n              {\n                \"title\": \"Higher Order Components\",\n                \"url\": \"/framework-hoc/\",\n                \"showInCollapsed\": true,\n                \"frameworks\": [\n                  \"react\"\n                ]\n              },\n              {\n                \"title\": \"Hooks / Functional Components\",\n                \"url\": \"/react-hooks/\",\n                \"showInCollapsed\": true,\n                \"frameworks\": [\n                  \"react\"\n                ]\n              },\n              {\n                \"title\": \"Parent/Child Communication\",\n                \"url\": \"/component-communication/\",\n                \"showInCollapsed\": true,\n                \"frameworks\": [\n                  \"angular\",\n                  \"vue\"\n                ]\n              }\n            ]\n          }\n        ]\n      },\n      {\n        \"title\": \"Integrated Charts\",\n        \"icon\": \"icon-charts\",\n        \"items\": [\n          {\n            \"title\": \"Overview\",\n            \"url\": \"/integrated-charts/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Range Chart\",\n            \"url\": \"/integrated-charts-range-chart/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Pivot Chart\",\n            \"url\": \"/integrated-charts-pivot-chart/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Chart Toolbar\",\n            \"url\": \"/integrated-charts-toolbar/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Chart API\",\n            \"url\": \"/integrated-charts-api/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Customisation\",\n            \"url\": \"/integrated-charts-customisation/\",\n            \"enterprise\": true,\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Chart Container\",\n            \"url\": \"/integrated-charts-container/\",\n            \"enterprise\": true\n          },\n          {\n            \"title\": \"Cross Filtering\",\n            \"url\": \"/integrated-charts-cross-filtering/\",\n            \"enterprise\": true\n          },\n          {\n            \"title\": \"Time Series\",\n            \"url\": \"/integrated-charts-time-series/\",\n            \"enterprise\": true\n          },\n          {\n            \"title\": \"Chart Events\",\n            \"url\": \"/integrated-charts-events/\",\n            \"enterprise\": true\n          },\n          {\n            \"title\": \"Third-Party Charting\",\n            \"url\": \"/third-party-charting/\"\n          }\n        ]\n      },\n      {\n        \"title\": \"Standalone Charts\",\n        \"icon\": \"icon-charts\",\n        \"items\": [\n          {\n            \"title\": \"Overview\",\n            \"url\": \"/charts-overview/\",\n            \"showInCollapsed\": true,\n            \"hideChildren\": true,\n            \"matrixExcludeChildren\": true,\n            \"items\": [\n              {\n                \"title\": \"Bar/Column\",\n                \"url\": \"/charts-overview/#bar-column\",\n                \"disableActive\": true,\n                \"hideChildren\": true,\n                \"items\": [\n                  {\n                    \"title\": \"Simple Bar\",\n                    \"url\": \"/charts-overview/gallery/simple-bar/\"\n                  },\n                  {\n                    \"title\": \"Grouped Bar\",\n                    \"url\": \"/charts-overview/gallery/grouped-bar/\"\n                  },\n                  {\n                    \"title\": \"Stacked Bar\",\n                    \"url\": \"/charts-overview/gallery/stacked-bar/\"\n                  },\n                  {\n                    \"title\": \"100% Stacked Bar\",\n                    \"url\": \"/charts-overview/gallery/100--stacked-bar/\"\n                  },\n                  {\n                    \"title\": \"Bar With Labels\",\n                    \"url\": \"/charts-overview/gallery/bar-with-labels/\"\n                  },\n                  {\n                    \"title\": \"Simple Column\",\n                    \"url\": \"/charts-overview/gallery/simple-column/\"\n                  },\n                  {\n                    \"title\": \"Grouped Column\",\n                    \"url\": \"/charts-overview/gallery/grouped-column/\"\n                  },\n                  {\n                    \"title\": \"Stacked Column\",\n                    \"url\": \"/charts-overview/gallery/stacked-column/\"\n                  },\n                  {\n                    \"title\": \"100% Stacked Column\",\n                    \"url\": \"/charts-overview/gallery/100--stacked-column/\"\n                  },\n                  {\n                    \"title\": \"Column With Negative Values\",\n                    \"url\": \"/charts-overview/gallery/column-with-negative-values/\"\n                  }\n                ]\n              },\n              {\n                \"title\": \"Pie/Doughnut\",\n                \"url\": \"/charts-overview/#pie-doughnut\",\n                \"disableActive\": true,\n                \"hideChildren\": true,\n                \"items\": [\n                  {\n                    \"title\": \"Simple Pie\",\n                    \"url\": \"/charts-overview/gallery/simple-pie/\"\n                  },\n                  {\n                    \"title\": \"Simple Doughnut\",\n                    \"url\": \"/charts-overview/gallery/simple-doughnut/\"\n                  }\n                ]\n              },\n              {\n                \"title\": \"Line\",\n                \"url\": \"/charts-overview/#line\",\n                \"disableActive\": true,\n                \"hideChildren\": true,\n                \"items\": [\n                  {\n                    \"title\": \"Simple Line\",\n                    \"url\": \"/charts-overview/gallery/simple-line/\"\n                  },\n                  {\n                    \"title\": \"Line With Gaps\",\n                    \"url\": \"/charts-overview/gallery/line-with-gaps/\"\n                  }\n                ]\n              },\n              {\n                \"title\": \"Scatter/Bubble\",\n                \"url\": \"/charts-overview/#scatter-bubble\",\n                \"disableActive\": true,\n                \"hideChildren\": true,\n                \"items\": [\n                  {\n                    \"title\": \"Simple Scatter\",\n                    \"url\": \"/charts-overview/gallery/simple-scatter/\"\n                  },\n                  {\n                    \"title\": \"Simple Bubble\",\n                    \"url\": \"/charts-overview/gallery/simple-bubble/\"\n                  },\n                  {\n                    \"title\": \"Bubble With Negative Values\",\n                    \"url\": \"/charts-overview/gallery/bubble-with-negative-values/\"\n                  },\n                  {\n                    \"title\": \"Bubble With Categories\",\n                    \"url\": \"/charts-overview/gallery/bubble-with-categories/\"\n                  }\n                ]\n              },\n              {\n                \"title\": \"Area\",\n                \"url\": \"/charts-overview/#area\",\n                \"disableActive\": true,\n                \"hideChildren\": true,\n                \"items\": [\n                  {\n                    \"title\": \"Simple Area\",\n                    \"url\": \"/charts-overview/gallery/simple-area/\"\n                  },\n                  {\n                    \"title\": \"Stacked Area\",\n                    \"url\": \"/charts-overview/gallery/stacked-area/\"\n                  },\n                  {\n                    \"title\": \"100% Stacked Area\",\n                    \"url\": \"/charts-overview/gallery/100--stacked-area/\"\n                  },\n                  {\n                    \"title\": \"Area With Negative Values\",\n                    \"url\": \"/charts-overview/gallery/area-with-negative-values/\"\n                  }\n                ]\n              },\n              {\n                \"title\": \"Histogram\",\n                \"url\": \"/charts-overview/#histogram\",\n                \"disableActive\": true,\n                \"hideChildren\": true,\n                \"items\": [\n                  {\n                    \"title\": \"Simple Histogram\",\n                    \"url\": \"/charts-overview/gallery/simple-histogram/\"\n                  },\n                  {\n                    \"title\": \"Histogram With Specified Bins\",\n                    \"url\": \"/charts-overview/gallery/histogram-with-specified-bins/\"\n                  },\n                  {\n                    \"title\": \"XY Histogram With Mean Aggregation\",\n                    \"url\": \"/charts-overview/gallery/xy-histogram-with-mean-aggregation/\"\n                  }\n                ]\n              },\n              {\n                \"title\": \"Treemap\",\n                \"url\": \"/charts-overview/#treemap\",\n                \"disableActive\": true,\n                \"hideChildren\": true,\n                \"items\": [\n                  {\n                    \"title\": \"Market Index Treemap\",\n                    \"url\": \"/charts-overview/gallery/market-index-treemap/\"\n                  }\n                ]\n              },\n              {\n                \"title\": \"Feature Highlights\",\n                \"url\": \"/charts-overview/#feature-highlights\",\n                \"disableActive\": true,\n                \"hideChildren\": true,\n                \"items\": [\n                  {\n                    \"title\": \"Time Axis With Irregular Intervals\",\n                    \"url\": \"/charts-overview/gallery/time-axis-with-irregular-intervals/\"\n                  },\n                  {\n                    \"title\": \"Log Axis\",\n                    \"url\": \"/charts-overview/gallery/log-axis/\"\n                  },\n                  {\n                    \"title\": \"Real-Time Data Updates\",\n                    \"url\": \"/charts-overview/gallery/real-time-data-updates/\"\n                  },\n                  {\n                    \"title\": \"Combination of Different Series Types\",\n                    \"url\": \"/charts-overview/gallery/combination-of-different-series-types/\"\n                  },\n                  {\n                    \"title\": \"Chart Customisation\",\n                    \"url\": \"/charts-overview/gallery/chart-customisation/\"\n                  },\n                  {\n                    \"title\": \"Custom Marker Shapes\",\n                    \"url\": \"/charts-overview/gallery/custom-marker-shapes/\"\n                  },\n                  {\n                    \"title\": \"Custom Tooltips\",\n                    \"url\": \"/charts-overview/gallery/custom-tooltips/\"\n                  },\n                  {\n                    \"title\": \"Per-Marker Customisation\",\n                    \"url\": \"/charts-overview/gallery/per-marker-customisation/\"\n                  }\n                ]\n              }\n            ]\n          },\n          {\n            \"title\": \"Getting Started\",\n            \"url\": \"/charts-getting-started/\"\n          },\n          {\n            \"title\": \"API\",\n            \"isCategory\": true,\n            \"forceTopLevelSubItems\": true,\n            \"items\": [\n              {\n                \"title\": \"Options Reference\",\n                \"showInCollapsed\": true,\n                \"url\": \"/charts-api/\"\n              },\n              {\n                \"title\": \"Themes Reference\",\n                \"showInCollapsed\": true,\n                \"url\": \"/charts-api-themes/\"\n              },\n              {\n                \"title\": \"Explorer\",\n                \"showInCollapsed\": true,\n                \"url\": \"/charts-api-explorer/\"\n              }\n            ]\n          },\n          {\n            \"title\": \"Series\",\n            \"isCategory\": true,\n            \"items\": [\n              {\n                \"title\": \"Line\",\n                \"url\": \"/charts-line-series/\"\n              },\n              {\n                \"title\": \"Bar/Column\",\n                \"url\": \"/charts-bar-series/\"\n              },\n              {\n                \"title\": \"Histogram\",\n                \"url\": \"/charts-histogram-series/\"\n              },\n              {\n                \"title\": \"Area\",\n                \"url\": \"/charts-area-series/\"\n              },\n              {\n                \"title\": \"Scatter/Bubble\",\n                \"url\": \"/charts-scatter-series/\"\n              },\n              {\n                \"title\": \"Pie/Doughnut\",\n                \"url\": \"/charts-pie-series/\"\n              },\n              {\n                \"title\": \"Treemap\",\n                \"url\": \"/charts-treemap-series/\"\n              }\n            ]\n          },\n          {\n            \"title\": \"Features\",\n            \"isCategory\": true,\n            \"items\": [\n              {\n                \"title\": \"Layout\",\n                \"url\": \"/charts-layout/\"\n              },\n              {\n                \"title\": \"Legend\",\n                \"url\": \"/charts-legend/\"\n              },\n              {\n                \"title\": \"Themes\",\n                \"url\": \"/charts-themes/\"\n              },\n              {\n                \"title\": \"Navigator\",\n                \"url\": \"/charts-navigator/\"\n              },\n              {\n                \"title\": \"Markers\",\n                \"url\": \"/charts-markers/\"\n              },\n              {\n                \"title\": \"Formatters\",\n                \"url\": \"/charts-formatters/\"\n              },\n              {\n                \"title\": \"Tooltips\",\n                \"url\": \"/charts-tooltips/\"\n              },\n              {\n                \"title\": \"Axes\",\n                \"url\": \"/charts-axes/\"\n              },\n              {\n                \"title\": \"Events\",\n                \"url\": \"/charts-events/\"\n              }\n            ]\n          }\n        ]\n      }\n    ]\n  },\n  {\n    \"group\": \"Other\",\n    \"items\": [\n      {\n        \"title\": \"Scrolling\",\n        \"icon\": \"icon-scroll\",\n        \"items\": [\n          {\n            \"title\": \"DOM Virtualisation\",\n            \"url\": \"/dom-virtualisation/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Row Pagination\",\n            \"url\": \"/row-pagination/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Aligned Grids\",\n            \"url\": \"/aligned-grids/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Massive Row Count\",\n            \"url\": \"/massive-row-count/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Scrolling Performance\",\n            \"url\": \"/scrolling-performance/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"See Also\",\n            \"url\": \"\",\n            \"items\": [\n              {\n                \"title\": \"Scrolling Scenarios\",\n                \"url\": \"/scrolling-scenarios/\"\n              }\n            ]\n          }\n        ]\n      },\n      {\n        \"title\": \"Interactivity\",\n        \"icon\": \"icon-interactivity\",\n        \"items\": [\n          {\n            \"title\": \"Keyboard Navigation\",\n            \"url\": \"/keyboard-navigation/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Touch\",\n            \"url\": \"/touch/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Accessibility (ARIA)\",\n            \"url\": \"/accessibility/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"RTL Text Direction\",\n            \"url\": \"/rtl/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Localisation\",\n            \"url\": \"/localisation/\",\n            \"showInCollapsed\": true\n          }\n        ]\n      },\n      {\n        \"title\": \"Testing & Security\",\n        \"icon\": \"icon-test\",\n        \"matrixExcludeChildren\": true,\n        \"level-2-display-style-forced\": \"block\",\n        \"items\": [\n          {\n            \"title\": \"Testing\",\n            \"url\": \"/testing/\",\n            \"showInCollapsed\": true\n          },\n          {\n            \"title\": \"Security\",\n            \"url\": \"/security/\",\n            \"showInCollapsed\": true\n          }\n        ]\n      },\n      {\n        \"title\": \"Miscellaneous\",\n        \"icon\": \"icon-misc\",\n        \"matrixExcludeChildren\": true,\n        \"level-2-display-style-forced\": \"block\",\n        \"items\": [\n          {\n            \"title\": \"Unidirectional Data Flow\",\n            \"url\": \"/framework-data-flow/\",\n            \"showInCollapsed\": true,\n            \"frameworks\": [\n              \"vue\"\n            ]\n          },\n          {\n            \"title\": \"Fine Tuning\",\n            \"url\": \"/fine-tuning/\",\n            \"showInCollapsed\": true,\n            \"frameworks\": [\n              \"react\"\n            ]\n          },\n          {\n            \"title\": \"Redux Integration Part 1\",\n            \"url\": \"/redux-integration-pt1/\",\n            \"showInCollapsed\": true,\n            \"frameworks\": [\n              \"react\"\n            ]\n          },\n          {\n            \"title\": \"Redux Integration Part 2\",\n            \"url\": \"/redux-integration-pt2/\",\n            \"showInCollapsed\": true,\n            \"frameworks\": [\n              \"react\"\n            ]\n          },\n          {\n            \"title\": \"Material UI Components\",\n            \"url\": \"/material-design/\",\n            \"showInCollapsed\": true,\n            \"frameworks\": [\n              \"angular\"\n            ]\n          },\n          {\n            \"title\": \"Use with RxJS\",\n            \"url\": \"/angular-rxjs/\",\n            \"showInCollapsed\": true,\n            \"frameworks\": [\n              \"angular\"\n            ]\n          },\n          {\n            \"title\": \"Miscellaneous\",\n            \"url\": \"/framework-misc/\",\n            \"showInCollapsed\": true,\n            \"frameworks\": [\n              \"vue\"\n            ]\n          }\n        ]\n      }\n    ]\n  }\n]"}},{"relativePath":"modules/modules.json","internal":{"content":"[\n  {\n    \"title\": \"All Community Modules <sup>(!)</sup>\",\n    \"module\": \"@ag-grid-community/all-modules\",\n    \"exported\": \"All Community Modules\"\n  },\n  {\n    \"title\": \"Grid Core\",\n    \"module\": \"@ag-grid-community/core\",\n    \"exported\": \"Core Grid Components: GridOptions, ColDef etc\"\n  },\n  {\n    \"title\": \"Client Side Row Model\",\n    \"shortname\": \"clientside\",\n    \"module\": \"@ag-grid-community/client-side-row-model\",\n    \"exported\": \"ClientSideRowModelModule\"\n  },\n  {\n    \"title\": \"Infinite Row Model\",\n    \"shortname\": \"infinite\",\n    \"module\": \"@ag-grid-community/infinite-row-model\",\n    \"exported\": \"InfiniteRowModelModule\"\n  },\n  {\n    \"title\": \"CSV Export\",\n    \"shortname\": \"csv\",\n    \"module\": \"@ag-grid-community/csv-export\",\n    \"exported\": \"CsvExportModule\"\n  },\n  {\n    \"title\": \"Angular Support\",\n    \"module\": \"@ag-grid-community/angular\",\n    \"framework\": true,\n    \"exported\": \"Angular Support\",\n    \"angular\": true\n  },\n  {\n    \"title\": \"React Support\",\n    \"module\": \"@ag-grid-community/react\",\n    \"framework\": true,\n    \"exported\": \"React Support\",\n    \"react\": true\n  },\n  {\n    \"title\": \"Vue Support\",\n    \"module\": \"@ag-grid-community/vue\",\n    \"framework\": true,\n    \"exported\": \"Vue Support\",\n    \"vue\": true\n  },\n  {\n    \"title\": \"All Community & Enterprise Modules <sup>(!)</sup><enterprise-icon></enterprise-icon>\",\n    \"module\": \"@ag-grid-enterprise/all-modules\",\n    \"enterprise\": true,\n    \"exported\": \"All Community & Enterprise Modules\"\n  },\n  {\n    \"title\": \"Enterprise Core<enterprise-icon></enterprise-icon>\",\n    \"module\": \"@ag-grid-enterprise/core\",\n    \"enterprise\": true,\n    \"exported\": \"LicenseManager\"\n  },\n  {\n    \"title\": \"Charts<enterprise-icon></enterprise-icon>\",\n    \"shortname\": \"charts\",\n    \"module\": \"@ag-grid-enterprise/charts\",\n    \"enterprise\": true,\n    \"exported\": \"GridChartsModule\"\n  },\n  {\n    \"title\": \"Clipboard<enterprise-icon></enterprise-icon>\",\n    \"shortname\": \"clipboard\",\n    \"module\": \"@ag-grid-enterprise/clipboard\",\n    \"enterprise\": true,\n    \"exported\": \"ClipboardModule\"\n  },\n  {\n    \"title\": \"Column Tool Panel & Column Menu Panel<enterprise-icon></enterprise-icon>\",\n    \"shortname\": \"columnpanel\",\n    \"module\": \"@ag-grid-enterprise/column-tool-panel\",\n    \"enterprise\": true,\n    \"exported\": \"ColumnsToolPanelModule\"\n  },\n  {\n    \"title\": \"Excel Export<enterprise-icon></enterprise-icon>\",\n    \"shortname\": \"excel\",\n    \"module\": \"@ag-grid-enterprise/excel-export\",\n    \"enterprise\": true,\n    \"exported\": \"ExcelExportModule\"\n  },\n  {\n    \"title\": \"Filter Tool Panel<enterprise-icon></enterprise-icon>\",\n    \"shortname\": \"filterpanel\",\n    \"module\": \"@ag-grid-enterprise/filter-tool-panel\",\n    \"enterprise\": true,\n    \"exported\": \"FiltersToolPanelModule\"\n  },\n  {\n    \"title\": \"Master Detail<enterprise-icon></enterprise-icon>\",\n    \"shortname\": \"masterdetail\",\n    \"module\": \"@ag-grid-enterprise/master-detail\",\n    \"enterprise\": true,\n    \"exported\": \"MasterDetailModule\"\n  },\n  {\n    \"title\": \"Context & Column Menu<enterprise-icon></enterprise-icon>\",\n    \"shortname\": \"menu\",\n    \"module\": \"@ag-grid-enterprise/menu\",\n    \"enterprise\": true,\n    \"exported\": \"MenuModule\"\n  },\n  {\n    \"title\": \"Range Selection<enterprise-icon></enterprise-icon>\",\n    \"shortname\": \"range\",\n    \"module\": \"@ag-grid-enterprise/range-selection\",\n    \"enterprise\": true,\n    \"exported\": \"RangeSelectionModule\"\n  },\n  {\n    \"title\": \"Rich Select\",\n    \"shortname\": \"richselect\",\n    \"module\": \"@ag-grid-enterprise/rich-select\",\n    \"enterprise\": true,\n    \"exported\": \"RichSelectModule\"\n  },\n  {\n    \"title\": \"Row Grouping, Pivoting & Tree Data<enterprise-icon></enterprise-icon>\",\n    \"shortname\": \"rowgrouping\",\n    \"module\": \"@ag-grid-enterprise/row-grouping\",\n    \"enterprise\": true,\n    \"exported\": \"RowGroupingModule\"\n  },\n  {\n    \"title\": \"Server Side Row Model<enterprise-icon></enterprise-icon>\",\n    \"shortname\": \"serverside\",\n    \"module\": \"@ag-grid-enterprise/server-side-row-model\",\n    \"enterprise\": true,\n    \"exported\": \"ServerSideRowModelModule\"\n  },\n  {\n    \"title\": \"Set Filter<enterprise-icon></enterprise-icon>\",\n    \"shortname\": \"setfilter\",\n    \"module\": \"@ag-grid-enterprise/set-filter\",\n    \"enterprise\": true,\n    \"exported\": \"SetFilterModule\"\n  },\n  {\n    \"title\": \"Multi Filter<enterprise-icon></enterprise-icon>\",\n    \"shortname\": \"multifilter\",\n    \"module\": \"@ag-grid-enterprise/multi-filter\",\n    \"enterprise\": true,\n    \"exported\": \"MultiFilterModule\"\n  },\n  {\n    \"title\": \"Side Bar<enterprise-icon></enterprise-icon>\",\n    \"shortname\": \"sidebar\",\n    \"module\": \"@ag-grid-enterprise/side-bar\",\n    \"enterprise\": true,\n    \"exported\": \"SideBarModule\"\n  },\n  {\n    \"title\": \"Status Bar<enterprise-icon></enterprise-icon>\",\n    \"shortname\": \"statusbar\",\n    \"module\": \"@ag-grid-enterprise/status-bar\",\n    \"enterprise\": true,\n    \"exported\": \"StatusBarModule\"\n  },\n  {\n    \"title\": \"Viewport Row Model<enterprise-icon></enterprise-icon>\",\n    \"shortname\": \"viewport\",\n    \"module\": \"@ag-grid-enterprise/viewport-row-model\",\n    \"enterprise\": true,\n    \"exported\": \"ViewportRowModelModule\"\n  }\n]\n"}},{"relativePath":"row-object/row-node.AUTO.json","internal":{"content":"{\n  \"ID_PREFIX_ROW_GROUP\": { \"type\": {} },\n  \"ID_PREFIX_TOP_PINNED\": { \"type\": {} },\n  \"ID_PREFIX_BOTTOM_PINNED\": { \"type\": {} },\n  \"EVENT_ROW_SELECTED\": { \"type\": {} },\n  \"EVENT_DATA_CHANGED\": { \"type\": {} },\n  \"EVENT_CELL_CHANGED\": { \"type\": {} },\n  \"EVENT_ALL_CHILDREN_COUNT_CHANGED\": { \"type\": {} },\n  \"EVENT_MASTER_CHANGED\": { \"type\": {} },\n  \"EVENT_MOUSE_ENTER\": { \"type\": {} },\n  \"EVENT_MOUSE_LEAVE\": { \"type\": {} },\n  \"EVENT_HEIGHT_CHANGED\": { \"type\": {} },\n  \"EVENT_TOP_CHANGED\": { \"type\": {} },\n  \"EVENT_DISPLAYED_CHANGED\": { \"type\": {} },\n  \"EVENT_FIRST_CHILD_CHANGED\": { \"type\": {} },\n  \"EVENT_LAST_CHILD_CHANGED\": { \"type\": {} },\n  \"EVENT_CHILD_INDEX_CHANGED\": { \"type\": {} },\n  \"EVENT_ROW_INDEX_CHANGED\": { \"type\": {} },\n  \"EVENT_EXPANDED_CHANGED\": { \"type\": {} },\n  \"EVENT_HAS_CHILDREN_CHANGED\": { \"type\": {} },\n  \"EVENT_SELECTABLE_CHANGED\": { \"type\": {} },\n  \"EVENT_UI_LEVEL_CHANGED\": { \"type\": {} },\n  \"EVENT_HIGHLIGHT_CHANGED\": { \"type\": {} },\n  \"EVENT_DRAGGING_CHANGED\": { \"type\": {} },\n  \"id\": {\n    \"description\": \"/** Unique ID for the node. Either provided by the grid, or user can set to match the primary\\n * key in the database (or whatever data source is used). */\",\n    \"type\": { \"returnType\": \"string | undefined\" }\n  },\n  \"groupData\": {\n    \"description\": \"/** The group data */\",\n    \"type\": { \"returnType\": \"{ [key: string]: any | null; } | null\" }\n  },\n  \"aggData\": {\n    \"description\": \"/** The aggregated data */\",\n    \"type\": { \"returnType\": \"any\" }\n  },\n  \"data\": {\n    \"description\": \"/** The user provided data */\",\n    \"type\": { \"returnType\": \"any\" }\n  },\n  \"parent\": {\n    \"description\": \"/** The parent node to this node, or empty if top level */\",\n    \"type\": { \"returnType\": \"RowNode | null\" }\n  },\n  \"level\": {\n    \"description\": \"/** How many levels this node is from the top */\",\n    \"type\": { \"returnType\": \"number\" }\n  },\n  \"uiLevel\": {\n    \"description\": \"/** How many levels this node is from the top in the UI (different to the level when removing parents) */\",\n    \"type\": { \"returnType\": \"number\" }\n  },\n  \"rowGroupIndex\": {\n    \"description\": \"/** If doing in memory grouping, this is the index of the group column this cell is for.\\n * This will always be the same as the level, unless we are collapsing groups ie groupRemoveSingleChildren = true */\",\n    \"type\": { \"returnType\": \"number | null\" }\n  },\n  \"group\": {\n    \"description\": \"/** True if this node is a group node (ie has children) */\",\n    \"type\": { \"returnType\": \"boolean | undefined\" }\n  },\n  \"dragging\": {\n    \"description\": \"/** True if this row is getting dragged */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"master\": {\n    \"description\": \"/** True if this row is a master row, part of master / detail (ie row can be expanded to show detail) */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"detail\": {\n    \"description\": \"/** True if this row is a detail row, part of master / detail (ie child row of an expanded master row) */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"detailNode\": {\n    \"description\": \"/** If this row is a master row that was expanded, this points to the associated detail row. */\",\n    \"type\": { \"returnType\": \"RowNode\" }\n  },\n  \"detailGridInfo\": {\n    \"description\": \"/** If master detail, this contains details about the detail grid */\",\n    \"type\": { \"returnType\": \"DetailGridInfo | null\" }\n  },\n  \"leafGroup\": {\n    \"description\": \"/** True if this node is a group and the group is the bottom level in the tree */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"firstChild\": {\n    \"description\": \"/** True if this is the first child in this group */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"lastChild\": {\n    \"description\": \"/** True if this is the last child in this group */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"childIndex\": {\n    \"description\": \"/** The index of this node in the group */\",\n    \"type\": { \"returnType\": \"number\" }\n  },\n  \"rowIndex\": {\n    \"description\": \"/** The index of this node in the grid, only valid if node is displayed in the grid, otherwise it should be ignored as old index may be present */\",\n    \"type\": { \"returnType\": \"number | null\" }\n  },\n  \"rowPinned\": {\n    \"description\": \"/** Either 'top' or 'bottom' if row pinned, otherwise undefined or null */\",\n    \"type\": { \"returnType\": \"string\" }\n  },\n  \"quickFilterAggregateText\": {\n    \"description\": \"/** If using quick filter, stores a string representation of the row for searching against */\",\n    \"type\": { \"returnType\": \"string | null\" }\n  },\n  \"footer\": {\n    \"description\": \"/** Groups only - True if row is a footer. Footers  have group = true and footer = true */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"field\": {\n    \"description\": \"/** Groups only - The field we are grouping on eg Country */\",\n    \"type\": { \"returnType\": \"string | null\" }\n  },\n  \"rowGroupColumn\": {\n    \"description\": \"/** Groups only - the row group column for this group */\",\n    \"type\": { \"returnType\": \"Column | null\" }\n  },\n  \"key\": {\n    \"description\": \"/** Groups only - The key for the group eg Ireland, UK, USA */\",\n    \"type\": { \"returnType\": \"string | null\" }\n  },\n  \"stub\": {\n    \"description\": \"/** Used by server side row model, true if this row node is a stub */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"failedLoad\": {\n    \"description\": \"/** Used by server side row model, true if this row node failed a load */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"allLeafChildren\": {\n    \"description\": \"/** All user provided nodes */\",\n    \"type\": { \"returnType\": \"RowNode[]\" }\n  },\n  \"childrenAfterGroup\": {\n    \"description\": \"/** Groups only - Children of this group */\",\n    \"type\": { \"returnType\": \"RowNode[] | null\" }\n  },\n  \"childrenAfterFilter\": {\n    \"description\": \"/** Groups only - Filtered children of this group */\",\n    \"type\": { \"returnType\": \"RowNode[] | null\" }\n  },\n  \"childrenAfterSort\": {\n    \"description\": \"/** Groups only - Sorted children of this group */\",\n    \"type\": { \"returnType\": \"RowNode[] | null\" }\n  },\n  \"allChildrenCount\": {\n    \"description\": \"/** Groups only - Number of children and grand children */\",\n    \"type\": { \"returnType\": \"number | null\" }\n  },\n  \"childrenMapped\": {\n    \"description\": \"/** Children mapped by the pivot columns */\",\n    \"type\": { \"returnType\": \"{ [key: string]: any; } | null\" }\n  },\n  \"childStore\": {\n    \"description\": \"/** Server Side Row Model Only - the children are in an infinite cache */\",\n    \"type\": { \"returnType\": \"IServerSideStore | null\" }\n  },\n  \"expanded\": {\n    \"description\": \"/** Groups only - True if group is expanded, otherwise false */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"sibling\": {\n    \"description\": \"/** Groups only - If doing footers, reference to the footer node for this group */\",\n    \"type\": { \"returnType\": \"RowNode\" }\n  },\n  \"rowHeight\": {\n    \"description\": \"/** The height, in pixels, of this row */\",\n    \"type\": { \"returnType\": \"number | null | undefined\" }\n  },\n  \"rowHeightEstimated\": {\n    \"description\": \"/** Dynamic row heights are done on demand, only when row is visible. However for row virtualisation\\n * we need a row height to do the 'what rows are in viewport' maths. So we assign a row height to each\\n * row based on defaults and rowHeightEstimated=true, then when the row is needed for drawing we do\\n * the row height calculation and set rowHeightEstimated=false. */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"displayed\": {\n    \"description\": \"/** True if the RowNode is not filtered, or in a collapsed group. */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"rowTop\": {\n    \"description\": \"/** The top pixel for this row */\",\n    \"type\": { \"returnType\": \"number | null\" }\n  },\n  \"oldRowTop\": {\n    \"description\": \"/** The top pixel for this row last time, makes sense if data set was ordered or filtered,\\n * it is used so new rows can animate in from their old position. */\",\n    \"type\": { \"returnType\": \"number | null\" }\n  },\n  \"daemon\": {\n    \"description\": \"/** True if this node is a daemon. This means row is not part of the model. Can happen when then\\n * the row is selected and then the user sets a different ID onto the node. The nodes is then\\n * representing a different entity, so the selection controller, if the node is selected, takes\\n * a copy where daemon=true. */\",\n    \"type\": { \"returnType\": \"boolean\" }\n  },\n  \"selectable\": {\n    \"description\": \"/** True by default - can be overridden via gridOptions.isRowSelectable(rowNode) */\",\n    \"type\": {}\n  },\n  \"___cacheData\": {\n    \"description\": \"/** Used by the value service, stores values for a particular change detection turn. */\",\n    \"type\": { \"returnType\": \"{ [colId: string]: any; }\" }\n  },\n  \"___cacheVersion\": { \"type\": { \"returnType\": \"number\" } },\n  \"___objectId\": {\n    \"description\": \"/** Used by sorting service - to give deterministic sort to groups. Previously we\\n * just id for this, however id is a string and had slower sorting compared to numbers. */\",\n    \"type\": { \"returnType\": \"number\" }\n  },\n  \"alreadyRendered\": {\n    \"description\": \"/** True when nodes with the same id are being removed and added as part of the same batch transaction */\",\n    \"type\": {}\n  },\n  \"highlighted\": { \"type\": { \"returnType\": \"RowHighlightPosition | null\" } },\n  \"setData\": {\n    \"type\": { \"arguments\": { \"data\": \"any\" }, \"returnType\": \"void\" }\n  },\n  \"updateData\": {\n    \"type\": { \"arguments\": { \"data\": \"any\" }, \"returnType\": \"void\" }\n  },\n  \"getRowIndexString\": { \"type\": { \"arguments\": {}, \"returnType\": \"string\" } },\n  \"setDataAndId\": {\n    \"type\": {\n      \"arguments\": { \"data\": \"any\", \"id\": \"string | undefined\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setRowSelectable\": { \"type\": { \"arguments\": { \"newVal\": \"boolean\" } } },\n  \"setId\": {\n    \"type\": { \"arguments\": { \"id\": \"string\" }, \"returnType\": \"void\" }\n  },\n  \"isPixelInRange\": {\n    \"type\": { \"arguments\": { \"pixel\": \"number\" }, \"returnType\": \"boolean\" }\n  },\n  \"setFirstChild\": {\n    \"type\": { \"arguments\": { \"firstChild\": \"boolean\" }, \"returnType\": \"void\" }\n  },\n  \"setLastChild\": {\n    \"type\": { \"arguments\": { \"lastChild\": \"boolean\" }, \"returnType\": \"void\" }\n  },\n  \"setChildIndex\": {\n    \"type\": { \"arguments\": { \"childIndex\": \"number\" }, \"returnType\": \"void\" }\n  },\n  \"setRowTop\": {\n    \"type\": { \"arguments\": { \"rowTop\": \"number | null\" }, \"returnType\": \"void\" }\n  },\n  \"clearRowTopAndRowIndex\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"setDragging\": {\n    \"type\": { \"arguments\": { \"dragging\": \"boolean\" }, \"returnType\": \"void\" }\n  },\n  \"setHighlighted\": {\n    \"type\": {\n      \"arguments\": { \"highlighted\": \"RowHighlightPosition | null\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setAllChildrenCount\": {\n    \"type\": {\n      \"arguments\": { \"allChildrenCount\": \"number | null\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setMaster\": {\n    \"type\": { \"arguments\": { \"master\": \"boolean\" }, \"returnType\": \"void\" }\n  },\n  \"setRowHeight\": {\n    \"type\": {\n      \"arguments\": {\n        \"rowHeight\": \"number | undefined | null\",\n        \"estimated\": \"undefined = false\"\n      },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setRowAutoHeight\": {\n    \"type\": {\n      \"arguments\": { \"cellHeight\": \"number | undefined\", \"column\": \"Column\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"checkAutoHeights\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"setRowIndex\": {\n    \"type\": {\n      \"arguments\": { \"rowIndex\": \"number | null\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setUiLevel\": {\n    \"type\": { \"arguments\": { \"uiLevel\": \"number\" }, \"returnType\": \"void\" }\n  },\n  \"setExpanded\": {\n    \"type\": { \"arguments\": { \"expanded\": \"boolean\" }, \"returnType\": \"void\" }\n  },\n  \"setDataValue\": {\n    \"type\": {\n      \"arguments\": { \"colKey\": \"string | Column\", \"newValue\": \"any\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setGroupValue\": {\n    \"type\": {\n      \"arguments\": { \"colKey\": \"string | Column\", \"newValue\": \"any\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"setAggData\": {\n    \"type\": { \"arguments\": { \"newAggData\": \"any\" }, \"returnType\": \"void\" }\n  },\n  \"updateHasChildren\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"hasChildren\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isEmptyRowGroupNode\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean | undefined\" }\n  },\n  \"resetQuickFilterAggregateText\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"isExpandable\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"isSelected\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"boolean | undefined\" }\n  },\n  \"depthFirstSearch\": {\n    \"type\": {\n      \"arguments\": { \"callback\": \"(rowNode: RowNode) => void\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"calculateSelectedFromChildren\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"void\" }\n  },\n  \"setSelectedInitialValue\": {\n    \"type\": { \"arguments\": { \"selected\": \"boolean\" }, \"returnType\": \"void\" }\n  },\n  \"setSelected\": {\n    \"type\": {\n      \"arguments\": {\n        \"newValue\": \"boolean\",\n        \"clearSelection\": \"boolean = false\",\n        \"suppressFinishActions\": \"boolean = false\"\n      }\n    }\n  },\n  \"isRowPinned\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"setSelectedParams\": {\n    \"type\": {\n      \"arguments\": { \"params\": \"SetSelectedParams\" },\n      \"returnType\": \"number\"\n    }\n  },\n  \"isParentOfNode\": {\n    \"type\": {\n      \"arguments\": { \"potentialParent\": \"RowNode\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"selectThisNode\": {\n    \"type\": { \"arguments\": { \"newValue\": \"boolean\" }, \"returnType\": \"boolean\" }\n  },\n  \"addEventListener\": {\n    \"type\": {\n      \"arguments\": { \"eventType\": \"string\", \"listener\": \"Function\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"removeEventListener\": {\n    \"type\": {\n      \"arguments\": { \"eventType\": \"string\", \"listener\": \"Function\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"onMouseEnter\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"onMouseLeave\": { \"type\": { \"arguments\": {}, \"returnType\": \"void\" } },\n  \"getFirstChildOfFirstChild\": {\n    \"type\": {\n      \"arguments\": { \"rowGroupColumn\": \"Column | null\" },\n      \"returnType\": \"RowNode | null\"\n    }\n  },\n  \"isFullWidthCell\": { \"type\": { \"arguments\": {}, \"returnType\": \"boolean\" } },\n  \"getRoute\": {\n    \"type\": { \"arguments\": {}, \"returnType\": \"string[] | undefined\" }\n  }\n}\n"}},{"relativePath":"csv-export/resources/csv.json","internal":{"content":"{\n    \"csvExportParams\": {\n        \"columnSeparator\": {\n            \"default\": \",\",\n            \"description\": \"Delimiter to insert between cell values.\",\n            \"type\": \"string\"\n        },\n        \"suppressQuotes\": {\n            \"default\": false,\n            \"description\": \"By default cell values are encoded according to CSV format rules: values are wrapped in double quotes, and any double quotes within the values are escaped, so my value becomes \\\"my\\\"\\\"value\\\". Pass `true` to insert the value into the CSV file without escaping. In this case it is your responsibility to ensure that no cells contain the columnSeparator character.\",\n            \"type\": \"boolean\"\n        },\n        \"prependContent\": {\n            \"description\": \"Content to put at the top of the file export. A 2D array of CsvCell objects (see Prepending and Appending Content section). Alternatively, you can pass a multi-line string that is simply appended to the top of the file content.\",\n            \"type\": \"string | CsvCell[][]\"\n        },\n        \"appendContent\": {\n            \"description\": \"Content to put at the bottom of the file export. A 2D array of CsvCell objects (see Prepending and Appending Content section). Alternatively, you can pass a multi-line string that is simply appended to the bottom of the file content.\",\n            \"type\": \"string | CsvCell[][]\"\n        },\n        \"allColumns\": {\n            \"default\": false,\n            \"description\": \"If `true`, all columns will be exported in the order they appear in the columnDefs.\",\n            \"type\": \"boolean\"\n        },\n        \"columnKeys\": {\n            \"description\": \"Provide a list (an array) of column keys or Column objects if you want to export specific columns.\",\n            \"type\": \"(string | Column)[]\"\n        },\n        \"fileName\": {\n            \"default\": \"export.csv\",\n            \"description\": \"String to use as the file name\",\n            \"type\": \"string\"\n        },\n        \"onlySelected\": {\n            \"default\": false,\n            \"description\": \"Export only selected rows.\",\n            \"type\": \"boolean\"\n        },\n        \"onlySelectedAllPages\": {\n            \"default\": false,\n            \"description\": \"Only export selected rows including other pages (only makes sense when using pagination).\",\n            \"type\": \"boolean\"\n        },\n        \"skipColumnGroupHeaders\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to skip include header column groups.\",\n            \"type\": \"boolean\"\n        },\n        \"skipColumnHeaders\": {\n            \"default\": false,\n            \"description\": \"Set to `true` if you don't want to export column headers.\",\n            \"type\": \"boolean\"\n        },\n        \"skipRowGroups\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to skip row group headers if grouping rows. Only relevant when grouping rows.\",\n            \"type\": \"boolean\"\n        },\n        \"skipPinnedTop\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to suppress exporting rows pinned to the top of the grid.\",\n            \"type\": \"boolean\"\n        },\n        \"skipPinnedBottom\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to suppress exporting rows pinned to the bottom of the grid.\",\n            \"type\": \"boolean\"\n        },\n        \"getCustomContentBelowRow\": {\n            \"description\": \"A callback function to return content to be inserted below a row in the export.\",\n            \"type\": {\n                \"meta\": {\n                    \"name\":  \"ProcessRowGroupForExportParams\"\n                },\n                \"parameters\": {\n                    \"node\": \"RowNode\",\n                    \"api\": \"GridApi\",\n                    \"columnApi\": \"ColumnApi\",\n                    \"context\": \"any\"\n                },\n                \"returnType\": \"CsvCell\"\n            }\n        },\n        \"shouldRowBeSkipped\": {\n            \"description\": \"A callback function that will be invoked once per row in the grid. Return true to omit the row from the export.\",\n            \"type\": {\n                \"meta\": {\n                    \"name\":  \"ShouldRowBeSkippedParams\"\n                },\n                \"parameters\": {\n                    \"node\": \"RowNode\",\n                    \"api\": \"GridApi\",\n                    \"context\": \"any\"\n                },\n                \"returnType\": \"boolean\"\n            }\n        },\n        \"processCellCallback\": {\n            \"description\": \"A callback function invoked once per cell in the grid. Return a string value to be displayed in the export. Useful for formatting date values.\",\n            \"type\": {\n                \"meta\": {\n                    \"name\":  \"ProcessCellForExportParams\"\n                },\n                \"parameters\": {\n                    \"value\": \"any\",\n                    \"node\": \"RowNode\",\n                    \"column\": \"Column\",\n                    \"api\": \"GridApi\",\n                    \"columnApi\": \"ColumnApi\",\n                    \"context\": \"any\",\n                    \"type\": \"string\"\n                },\n                \"returnType\": \"string\"\n            }\n        },\n        \"processHeaderCallback\": {\n            \"description\": \"A callback function invoked once per column. Return a string to be displayed in the column header.\",\n            \"type\": {\n                \"meta\": {\n                    \"name\":  \"ProcessHeaderForExportParams\"\n                },\n                \"parameters\": {\n                    \"column\": \"Column\",\n                    \"api\": \"GridApi\",\n                    \"columnApi\": \"ColumnApi\",\n                    \"context\": \"any\"\n                },\n                \"returnType\": \"string\"\n            }\n        },\n        \"processGroupHeaderCallback\": {\n            \"description\": \"A callback function invoked once per column group. Return a string to be displayed in the column group header. Note that column groups are not exported by default, you must pass columnGroups=true.\",\n            \"type\": {\n                \"meta\": {\n                    \"name\":  \"ProcessGroupHeaderForExportParams\"\n                },\n                \"parameters\": {\n                    \"columnGroup\": \"ColumnGroup\",\n                    \"api\": \"GridApi\",\n                    \"columnApi\": \"ColumnApi\",\n                    \"context\": \"any\"\n                },\n                \"returnType\": \"string\"\n            }\n        },\n        \"processRowGroupCallback\": {\n            \"description\": \"A callback function invoked once per row group. Return a string to be displayed in the group cell.\",\n            \"type\": {\n                \"meta\": {\n                    \"name\":  \"ProcessRowGroupForExportParams\"\n                },\n                \"parameters\": {\n                    \"node\": \"RowNode\",\n                    \"api\": \"GridApi\",\n                    \"columnApi\": \"ColumnApi\",\n                    \"context\": \"any\"\n                },\n                \"returnType\": \"string\"\n            }\n        }\n    },\n    \"csvCell\": {\n        \"data\": {\n            \"description\": \"The data that will be added to the cell.\",\n            \"type\": \"CsvCellData\",\n            \"isRequired\": true\n        },\n        \"mergeAcross\": {\n            \"default\": 0,\n            \"description\": \"The number of cells to span across (1 means span 2 columns)\",\n            \"type\": \"number\"\n        }\n    },\n    \"csvCellData\": {\n        \"value\": {\n            \"description\": \"The value of the cell.\",\n            \"type\": \"string\",\n            \"isRequired\": true\n        }\n    }\n}"}},{"relativePath":"filter-api/resources/filter-api.json","internal":{"content":"{\n    \"api\": {\n        \"isFilterActive()\": {\n            \"description\": \"Returns `true` if the filter is currently active, otherwise `false`.\",\n            \"type\": {\n                \"arguments\": {},\n                \"returnType\": \"boolean\"\n            }\n        },\n        \"getModel()\": {\n            \"description\": \"Returns a model representing the current state of the filter, or `null` if the filter is not active.\",\n            \"type\": {\n                \"arguments\": {},\n                \"returnType\": \"object\"\n            }\n        },\n        \"setModel()\": {\n            \"description\": \"Sets the state of the filter using the supplied model. Providing `null` as the model will de-activate the filter.\",\n            \"type\": {\n                \"arguments\": {\n                    \"model\": [\n                        \"object\",\n                        \"null\"\n                    ]\n                }\n            }\n        }\n    }\n}"}},{"relativePath":"excel-export-api/resources/excel-export-params.json","internal":{"content":"{\n    \"excelExportParams\": {\n        \"author\": {\n            \"default\": \"AG Grid\",\n            \"description\": \"The author of the exported file.\",\n            \"type\": \"string\"\n        },\n        \"autoConvertFormulas\": {\n            \"default\": false,\n            \"description\": \"If set to `true`, this will try to convert any cell that starts with `=` to a formula, instead of setting the cell value as regular string that starts with `=`.\",\n            \"type\": \"boolean\"\n        },\n        \"columnWidth\": {\n            \"description\": \"Defines the default column width. If no value is present, each column will have value currently set in the application with a min value of 75px. This property can also be supplied a callback function that returns a number: `(params: ColumnWidthCallbackParams) => number`.\",\n            \"type\": \"number\"\n        },\n        \"exportMode\": {\n            \"default\": \"xlsx\",\n            \"description\": \"For backwards compatibility, this property could be set to `xml`, which will export an Excel Spreadsheet compatible with old Office versions (prior to Office 2007). Setting this to `xml` is not recommended as some features will not work in legacy mode.\",\n            \"type\": \"string\",\n            \"options\": [\"xlsx\", \"xml\"]\n        },\n        \"fontSize\": {\n            \"default\": 11,\n            \"description\": \"The default value for the font size of the Excel document.\",\n            \"type\": \"number\"\n        },\n        \"headerRowHeight\": {\n            \"description\": \"The height in pixels of header rows. Defaults to Excel default value. This property can also be supplied a callback function that returns a number: `(params: RowHeightCallbackParams) => number`.\",\n            \"type\": \"number | Function\"\n        },\n        \"rowHeight\": {\n            \"description\": \"The height in pixels of all rows. Defaults to Excel default value. This property can also be supplied a callback function that returns a number: `(params: RowHeightCallbackParams) => number`.\",\n            \"type\": \"number | Function\"\n        },\n        \"sheetName\": {\n            \"default\": \"ag-grid\",\n            \"description\": \"The name of the sheet in Excel where the grid will be exported. There is a max limit of 31 characters.\",\n            \"type\": \"string\"\n        },\n        \"appendContent\": {\n            \"description\": \"Content to put at the top of the exported sheet. A 2D array of ExcelCell objects (see <a href=\\\"../excel-export-extra-content/\\\">Extra Content</a> section).\",\n            \"type\": \"ExcelCell[][]\"\n        },\n        \"prependContent\": {\n            \"description\": \"Content to put at the bottom of the exported sheet. A 2D array of ExcelCell objects (see <a href=\\\"../excel-export-extra-content/\\\">Extra Content</a> section).\",\n            \"type\": \"ExcelCell[][]\"\n        },\n        \"allColumns\": {\n            \"default\": false,\n            \"description\": \"If `true`, all columns will be exported in the order they appear in the columnDefs. When `false` only the columns currently being displayed will be exported.\",\n            \"type\": \"boolean\"\n        },\n        \"columnKeys\": {\n            \"description\": \"Provide a list (an array) of column keys or Column objects if you want to export specific columns.\",\n            \"type\": \"(string | Column)[]\"\n        },\n        \"fileName\": {\n            \"default\": \"export.xlsx\",\n            \"description\": \"String to use as the file name.\",\n            \"type\": \"string\"\n        },\n        \"onlySelected\": {\n            \"default\": false,\n            \"description\": \"Export only selected rows.\",\n            \"type\": \"boolean\"\n        },\n        \"onlySelectedAllPages\": {\n            \"default\": false,\n            \"description\": \"Only export selected rows including other pages (only makes sense when using pagination).\",\n            \"type\": \"boolean\"\n        },\n        \"margins\": {\n            \"description\": \"The Excel document page margins. Relevant for printing.\",\n            \"type\": \"ExcelSheetMargin\"\n        },\n        \"pageSetup\": {\n            \"description\": \"Allows you to setup the page orientation and size.\",\n            \"type\": \"ExcelSheetPageSetup\"\n        },\n        \"suppressTextAsCDATA\": {\n            \"default\": false,\n            \"description\": \"If `true`, text content will be encoded with XML character entities like `&amp;lt;` and `&amp;gt;`. This is only relevant when `exportMode='xml'`.\",\n            \"type\": \"boolean\"\n        },\n        \"skipColumnGroupHeaders\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to exclude header column groups.\",\n            \"type\": \"boolean\"\n        },\n        \"skipColumnHeaders\": {\n            \"default\": false,\n            \"description\": \"Set to `true` if you don't want to export column headers.\",\n            \"type\": \"boolean\"\n        },\n        \"skipRowGroups\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to skip row group headers if grouping rows. Only relevant when grouping rows.\",\n            \"type\": \"boolean\"\n        },\n        \"skipPinnedBottom\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to suppress exporting rows pinned to the bottom of the grid.\",\n            \"type\": \"boolean\"\n        },\n        \"getCustomContentBelowRow\": {\n            \"description\": \"A callback function to return content to be inserted below a row in the export.\",\n            \"type\": {\n                \"meta\": {\n                    \"name\": \"ProcessRowGroupForExportParams\"\n                },\n                \"parameters\": {\n                    \"node\": \"RowNode\",\n                    \"api\": \"GridApi\",\n                    \"columnApi\": \"ColumnApi\",\n                    \"context\": \"object\"\n                },\n                \"returnType\": \"ExcelCell\"\n            }\n        },\n        \"shouldRowBeSkipped\": {\n            \"description\": \"A callback function that will be invoked once per row in the grid. Return true to omit the row from the export.\",\n            \"type\": {\n                \"meta\": {\n                    \"name\": \"ShouldRowBeSkippedParams\"\n                },\n                \"parameters\": {\n                    \"node\": \"RowNode\",\n                    \"api\": \"GridApi\",\n                    \"context\": \"object\"\n                },\n                \"returnType\": \"boolean\"\n            }\n        },\n        \"processCellCallback\": {\n            \"description\": \"A callback function invoked once per cell in the grid. Return a string value to be displayed in the export. For example this is useful for formatting date values.\",\n            \"type\": {\n                \"meta\": {\n                    \"name\": \"ProcessCellForExportParams\"\n                },\n                \"parameters\": {\n                    \"node\": \"RowNode\",\n                    \"api\": \"GridApi\",\n                    \"columnApi\": \"ColumnApi\",\n                    \"context\": \"object\",\n                    \"value\": \"any\",\n                    \"accumulatedRowIndex\": \"number\",\n                    \"column\": \"Column\",\n                    \"type\": \"string\"\n                },\n                \"returnType\": \"string\"\n            }\n        },\n        \"processHeaderCallback\": {\n            \"description\": \"A callback function invoked once per column. Return a string to be displayed in the column header.\",\n            \"type\": {\n                \"meta\": {\n                    \"name\": \"ProcessHeaderForExportParams\"\n                },\n                \"parameters\": {\n                    \"node\": \"RowNode\",\n                    \"api\": \"GridApi\",\n                    \"columnApi\": \"ColumnApi\",\n                    \"context\": \"object\"\n                },\n                \"returnType\": \"string\"\n            }\n        },\n        \"processGroupHeaderCallback\": {\n            \"description\": \"A callback function invoked once per column group. Return a `string` to be displayed in the column group header. Note that column groups are exported by default, this option will not work with `skipColumnGroupHeaders=true`.\",\n            \"type\": {\n                \"meta\": {\n                    \"name\": \"ProcessGroupHeaderForExportParams\"\n                },\n                \"parameters\": {\n                    \"node\": \"RowNode\",\n                    \"api\": \"GridApi\",\n                    \"columnApi\": \"ColumnApi\",\n                    \"context\": \"object\"\n                },\n                \"returnType\": \"string\"\n            }\n        },\n        \"processRowGroupCallback\": {\n            \"description\": \"A callback function invoked once per row group. Return a `string` to be displayed in the group cell.\",\n            \"type\": {\n                \"meta\": {\n                    \"name\": \"ProcessRowGroupForExportParams\"\n                },\n                \"parameters\": {\n                    \"node\": \"RowNode\",\n                    \"api\": \"GridApi\",\n                    \"columnApi\": \"ColumnApi\",\n                    \"context\": \"object\"\n                },\n                \"returnType\": \"string\"\n            }\n        },\n        \"addImageToCell\": {\n            \"description\": \"A callback function invoked once per cell. Return an `ExcelImage` object to add an image to the current cell.\",\n            \"type\": {\n                \"meta\": {\n                    \"name\":  \"AddImageToCellParams\"\n                },\n                \"parameters\": {\n                    \"rowIndex\": \"number\",\n                    \"column\": \"Column\",\n                    \"value\": \"string\"\n                },\n                \"returnType\": {\n                    \"image\": \"ExcelImage\",\n                    \"value\": \"string\"\n                }\n            }\n        }\n    },\n    \"excelExportMultipleSheetParams\": {\n        \"author\": {\n            \"default\": \"AG Grid\",\n            \"description\": \"The author of the exported file.\",\n            \"type\": \"string\"\n        },\n        \"data\": {\n            \"description\": \"Array of strings containing the raw data for Excel workbook sheets. This property is only used when exporting to multiple sheets using `api.exportMultipleSheetsAsExcel()` and the data for each sheet is obtained by calling `api.getSheetDataForExcel()`.\",\n            \"type\": \"string[]\",\n            \"more\": {\n                \"name\": \"Multiple Sheets\",\n                \"url\": \"/excel-export-multiple-sheets/\"\n            }\n        },\n        \"fileName\": {\n            \"default\": \"export.xlsx\",\n            \"description\": \"String to use as the file name.\",\n            \"type\": \"string\"\n        },\n        \"fontSize\": {\n            \"default\": 11,\n            \"description\": \"The default value for the font size of the Excel document.\",\n            \"type\": \"number\"\n        }\n    },\n    \"excelCell\": {\n        \"data\": {\n            \"description\": \"The data that will be added to the cell.\",\n            \"type\": \"ExcelData\"\n        },\n        \"styleId\": {\n            \"description\": \"The ExcelStyle id to be associated with the cell.\",\n            \"type\": \"string\"\n        },\n        \"mergeAcross\": {\n            \"default\": 0,\n            \"description\": \"The number of cells to span across (1 means span 2 columns)\",\n            \"type\": \"number\"\n        }\n    },\n    \"excelData\": {\n        \"type\": {\n            \"description\": \"The type of data being in the cell.\",\n            \"type\": \"ExcelDataType\",\n            \"isRequired\": true\n        },\n        \"value\": {\n            \"description\": \"The value of the cell.\",\n            \"type\": \"string\",\n            \"isRequired\": true\n        }\n    },\n    \"excelDataType\": {\n        \"type\": \"string\",\n        \"options\": [\"String\", \"Formula\", \"Number\", \"Boolean\", \"DateTime\", \"Error\"]\n    },\n    \"excelImage\": {\n        \"id\": {\n            \"description\": \"The image `id`. This field is required so the same image doesn't get imported multiple times.\",\n            \"type\": \"string\",\n            \"isRequired\": true\n        },\n        \"base64\": {\n            \"description\": \"A base64 string that represents the image being imported. See more info about <a href=\\\"https://en.wikipedia.org/wiki/Base64\\\" target=\\\"_blank\\\">Base64</a>/\",\n            \"type\": \"string\",\n            \"isRequired\": true\n        },\n        \"imageType\": {\n            \"description\": \"The type of image being exported.\",\n            \"type\": \"string\",\n            \"options\": [\"jpg\", \"png\", \"gif\"],\n            \"isRequired\": true\n        },\n        \"fitCell\": {\n            \"default\": false,\n            \"description\": \"If set to `true`, the image will cover the whole cell that is being imported to.\",\n            \"type\": \"boolean\"\n        },\n        \"transparency\": {\n            \"default\": 0,\n            \"description\": \"Set a value between 0 - 100 that will indicate the percentage of transparency of the image.\",\n            \"type\": \"number\"\n        },\n        \"rotation\": {\n            \"default\": 0,\n            \"description\": \"Set a value between 0 - 359 that will indicate the number of degrees to rotate the image clockwise.\",\n            \"type\": \"number\"\n        },\n        \"recolor\": {\n            \"description\": \"Set this property to select a preset that changes the appearance of the image.\",\n            \"type\": \"string\",\n            \"options\": [\"Grayscale\", \"Sepia\",\"Washout\"]\n        },\n        \"width\": {\n            \"description\": \"The width of the image in pixels. If this value is not selected, `fitCell` will be automatically set to true.\",\n            \"type\": \"number\"\n        },\n        \"height\": {\n            \"description\": \"The height of the image in pixels. If this value is not selected, `fitCell` will be automatically set to true.\",\n            \"type\": \"number\"\n        },\n        \"position\": {\n            \"row\": {\n                \"description\": \"The row containing this image. This property is set automatically, don't change it unless you know what you are doing.\",\n                \"type\": \"number\"\n            },\n            \"rowSpan\": {\n                \"default\": 1,\n                \"description\": \"The amount of rows this image will cover.\",\n                \"type\": \"number\"\n            },\n            \"column\": {\n                \"description\": \"The column containing this image. This property is set automatically, don't change it unless you know what you are doing.\",\n                \"type\": \"number\"\n            },\n            \"colSpan\": {\n                \"default\": 1,\n                \"description\": \"The amount of columns this image will cover.\",\n                \"type\": \"number\"\n            },\n            \"offsetX\": {\n                \"default\": 0,\n                \"description\": \"The amount in pixels the image should be offset horizontally.\",\n                \"type\": \"number\"\n            },\n            \"offsetY\": {\n                \"default\": 0,\n                \"description\": \"The amount in pixels the image should be offset vertically.\",\n                \"type\": \"number\"\n            }\n        }\n    },\n    \"excelStyle\": {\n        \"id\": {\n            \"description\": \"The id of the Excel Style, this should match a CSS cell class.\",\n            \"type\": \"string\",\n            \"isRequired\": true\n        },\n        \"alignment\": {\n            \"description\": \"Use this property to customise cell alignment properties.\",\n            \"type\": \"ExcelAlignment\"\n        },\n        \"borders\": {\n            \"description\": \"Use this property to customise cell borders.\",\n            \"type\": \"ExcelBorders\"\n        },\n        \"dataType\": {\n            \"default\": \"String\",\n            \"description\": \"Use this property to specify the type of data being exported.\",\n            \"type\": \"ExcelDataType\"\n        },\n        \"font\": {\n            \"description\": \"Use this property to customise the font used in the cell.\",\n            \"type\": \"ExcelFont\"\n        },\n        \"interior\": {\n            \"description\": \"Use this property to customise the cell background.\",\n            \"type\": \"ExcelInterior\"\n        },\n        \"numberFormat\": {\n            \"description\": \"Use this property to customise the cell value as a formatted number.\",\n            \"type\": \"ExcelNumberFormat\"\n        },\n        \"protection\": {\n            \"description\": \"Use this property to setup cell protection.\",\n            \"type\": \"ExcelProtection\"\n        }\n    },\n    \"excelAlignment\": {\n        \"horizontal\": {\n            \"default\": \"Automatic\",\n            \"description\": \"Use this property to change the cell horizontal alignment.\",\n            \"options\": [\n                \"Automatic\",\n                \"Left\",\n                \"Center\",\n                \"Right\",\n                \"Fill\",\n                \"Justify\",\n                \"CenterAcrossSelection\",\n                \"Distributed\",\n                \"JustifyDistributed\"\n            ],\n            \"type\": \"string\"\n        },\n        \"indent\": {\n            \"default\": 0,\n            \"description\": \"Use this property to change the level of indentation in the cell.\",\n            \"type\": \"number\"\n        },\n        \"readingOrder\": {\n            \"default\": \"LeftToRight\",\n            \"description\": \"Use this property to change the cell reading order.\",\n            \"options\": [\n                \"RightToLeft\",\n                \"LeftToRight\",\n                \"Context\"\n            ],\n            \"type\": \"string\"\n        },\n        \"rotate\": {\n            \"default\": 0,\n            \"description\": \"The number of degrees between 0 and 359 to rotate the text.\",\n            \"type\": \"number\"\n        },\n        \"shrinkToFit\": {\n            \"default\": false,\n            \"description\": \"If set to `true`, the font size of the cell will automatically change to force the text to fit within the cell.\",\n            \"type\": \"boolean\"\n        },\n        \"vertical\": {\n            \"default\": \"Automatic\",\n            \"description\": \"Use this property to change the cell vertical alignment.\",\n            \"options\": [\n                \"Automatic\",\n                \"Top\",\n                \"Bottom\",\n                \"Center\",\n                \"Justify\",\n                \"Distributed\",\n                \"JustifyDistributed\"\n            ],\n            \"type\": \"string\"\n        },\n        \"wrapText\": {\n            \"default\": false,\n            \"description\": \"If set to `true`, multiline text will be displayed as multiline by Excel.\",\n            \"type\": \"boolean\"\n        }\n    },\n    \"excelBorders\": {\n        \"borderBottom\": {\n            \"description\": \"Use to set the cell's bottom border.\",\n            \"type\": \"ExcelBorder\"\n        },\n        \"borderLeft\": {\n            \"description\": \"Use to set the cell's left border.\",\n            \"type\": \"ExcelBorder\"\n        },\n        \"borderRight\": {\n            \"description\": \"Use to set the cell's right border.\",\n            \"type\": \"ExcelBorder\"\n        },\n        \"borderTop\": {\n            \"description\": \"Use to set the cell's top border.\",\n            \"type\": \"ExcelBorder\"\n        }\n    },\n    \"excelBorder\": {\n        \"color\": {\n            \"default\": \"black\",\n            \"description\": \"The color of the border.\",\n            \"type\": \"string\"\n        },\n        \"lineStyle\": {\n            \"default\": \"None\",\n            \"description\": \"The style of the border.\",\n            \"options\": [\n                \"None\",\n                \"Continuous\",\n                \"Dash\",\n                \"Dot\",\n                \"DashDot\",\n                \"DashDotDot\",\n                \"SlantDashDot\",\n                \"Double\"\n            ],\n            \"type\": \"string\"\n        },\n        \"weight\": {\n            \"default\": 0,\n            \"description\": \"The thickness of the border from 0 (thin) to 3 (thick)\",\n            \"options\": [0, 1, 2, 3],\n            \"type\": \"number\"\n        }\n    },\n    \"excelFont\": {\n        \"bold\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to set the cell text to bold.\",\n            \"type\": \"boolean\"\n        },\n        \"color\": {\n            \"default\": \"#000000\",\n            \"description\": \"The color of the cell font.\",\n            \"type\": \"string\"\n        },\n        \"family\": {\n            \"default\": \"Automatic\",\n            \"description\": \"The family of the font to used in the cell.\",\n            \"type\": \"string\",\n            \"options\": [\"Automatic\", \"Roman\", \"Swiss\", \"Modern\", \"Script\", \"Decorative\"]\n        },\n        \"fontName\": {\n            \"default\": \"Calibri\",\n            \"description\": \"The name of the font to be used in the cell.\",\n            \"type\": \"string\"\n        },\n        \"italic\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to display the cell font as italic.\",\n            \"type\": \"boolean\"\n        },\n        \"outline\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to add a text outline.\",\n            \"type\": \"boolean\"\n        },\n        \"shadow\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to add text shadow.\",\n            \"type\": \"boolean\"\n        },\n        \"size\": {\n            \"description\": \"Set this property to used a different font size other than the default.\",\n            \"type\": \"number\"\n        },\n        \"strikeThrough\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to add a strikeThrough line.\",\n            \"type\": \"boolean\"\n        },\n        \"underline\": {\n            \"description\": \"Use this property to underline the cell text.\",\n            \"options\": [\n                \"Single\",\n                \"Double\"\n            ],\n            \"type\": \"string\"\n        },\n        \"verticalAlign\": {\n            \"description\": \"Use this property to change the default font alignment. Note: This is different than setting cell vertical alignment.\",\n            \"options\": [\n                \"Superscript\",\n                \"Subscript\"\n            ],\n            \"type\": \"string\"\n        }\n    },\n    \"excelInterior\": {\n        \"color\": {\n            \"description\": \"The colour of the cell background.\",\n            \"type\": \"string\"\n        },\n        \"pattern\": {\n            \"default\": \"None\",\n            \"description\": \"Use this property to set background color patterns.\",\n            \"options\": [\n                \"None\", \"Solid\", \"Gray75\", \"Gray50\", \"Gray25\", \"Gray125\", \"Gray0625\", \"HorzStripe\", \"VertStripe\", \"ReverseDiagStripe\", \"DiagStripe\", \"DiagCross\", \"ThickDiagCross\", \"ThinHorzStripe\", \"ThinVertStripe\", \"ThinReverseDiagStripe\", \"ThinDiagStripe\", \"ThinHorzCross\", \"ThinDiagCross\"\n            ],\n            \"type\": \"string\"\n        },\n        \"patternColor\": {\n            \"description\": \"The colour to be used as a secondary colour combined with patterns.\",\n            \"type\": \"string\"\n        }\n    },\n    \"excelNumberFormat\": {\n        \"format\": {\n            \"description\": \"Use this property to provide a pattern to format a number. (eg. 10000 could become $10,000.00).\",\n            \"type\": \"string\"\n        }\n    },\n    \"excelProtection\": {\n        \"protected\": {\n            \"default\": true,\n            \"description\": \"Set to `false` to disable cell protection (locking)\",\n            \"type\": \"boolean\"\n        },\n        \"hideFormula\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to hide formulas within protected cells\",\n            \"type\": \"boolean\"\n        }\n    },\n    \"excelSheetMargin\": {\n        \"top\": {\n            \"default\": 0.75,\n            \"description\": \"The sheet top margin.\",\n            \"type\": \"number\"\n        },\n        \"right\": {\n            \"default\": 0.7,\n            \"description\": \"The sheet right margin.\",\n            \"type\": \"number\"\n        },\n        \"bottom\": {\n            \"default\": 0.75,\n            \"description\": \"The sheet bottom margin.\",\n            \"type\": \"number\"\n        },\n        \"left\": {\n            \"default\": 0.7,\n            \"description\": \"The sheet left margin.\",\n            \"type\": \"number\"\n        },\n        \"header\": {\n            \"default\": 0.3,\n            \"description\": \"The sheet header margin.\",\n            \"type\": \"number\"\n        },\n        \"footer\": {\n            \"default\": 0.3,\n            \"description\": \"The sheet footer margin.\",\n            \"type\": \"number\"\n        }\n    },\n    \"excelSheetPageSetup\": {\n        \"orientation\": {\n            \"default\": \"Portrait\",\n            \"description\": \"Use this property to change the print orientation.\",\n            \"options\": [\n                \"Portrait\",\n                \"Landscape\"\n            ],\n            \"type\": \"string\"\n        },\n        \"pageSize\": {\n            \"default\": \"Letter\",\n            \"description\": \"Use this property to set the sheet size.\",\n            \"options\": [\n                \"Letter\",\n                \"Letter Small\",\n                \"Tabloid\",\n                \"Ledger\",\n                \"Legal\",\n                \"Statement\",\n                \"Executive\",\n                \"A3\",\n                \"A4\",\n                \"A4 Small\",\n                \"A5\",\n                \"A6\",\n                \"B4\",\n                \"B5\",\n                \"Folio\",\n                \"Envelope\",\n                \"Envelope DL\",\n                \"Envelope C5\",\n                \"Envelope B5\",\n                \"Envelope C3\",\n                \"Envelope C4\",\n                \"Envelope C6\",\n                \"Envelope Monarch\",\n                \"Japanese Postcard\",\n                \"Japanese Double Postcard\"\n            ],\n            \"type\": \"string\"\n        }\n    },\n    \"excelHeaderFooterConfig\": {\n        \"all\": {\n            \"description\": \"The configuration for header and footer on every page.\",\n            \"type\": \"ExcelHeaderFooter\"\n        },\n        \"first\": {\n            \"description\": \"The configuration for header and footer on the first page only.\",\n            \"type\": \"ExcelHeaderFooter\"\n        },\n        \"even\": {\n            \"description\": \"The configuration for header and footer on even numbered pages only..\",\n            \"type\": \"ExcelHeaderFooter\"\n        }\n    },\n    \"excelHeaderFooter\": {\n        \"header\": {\n            \"description\": \"An array of maximum 3 items (Left, Center, Right), containing header configurations.\",\n            \"type\": \"ExcelHeaderFooterContent[]\"\n        },\n        \"footer\": {\n            \"description\": \"An array of maximum 3 items (Left, Center, Right), containing footer configurations.\",\n            \"type\": \"ExcelHeaderFooterContent[]\"\n        }\n    },\n    \"excelHeaderFooterContent\": {\n        \"value\": {\n            \"description\": \"The value of the text to be included in the header.\",\n            \"type\": \"string\",\n            \"isRequired\": true\n        },\n        \"position\": {\n            \"description\": \"Configures where the text should be added (Left, Center, Right)\",\n            \"default\": \"Left\",\n            \"type\": \"string\",\n            \"options\": [\"Left\", \"Center\", \"Right\"]\n        },\n        \"font\": {\n            \"description\": \"The font style of the header/footer value.\",\n            \"type\": \"ExcelFont\"\n        }\n    }\n}"}},{"relativePath":"filter-multi/resources/multi-filter.json","internal":{"content":"{\n    \"filterParams\": {\n        \"filters\": {\n            \"description\": \"An array of filter definition objects.\",\n            \"type\": \"IFilterDef[]\"\n        }\n    },\n    \"filterDef\": {\n        \"filter<br />filterFramework\": {\n            \"description\": \"Child filter component to use inside the Multi Filter.\"\n        },\n        \"filterParams\": {\n            \"description\": \"Custom parameters to be passed to the child filter component.\",\n            \"type\": \"object\"\n        },\n        \"floatingFilterComponent<br />floatingFilterComponentFramework\": {\n            \"description\": \"Floating filter component to use for the child filter.\"\n        },\n        \"floatingFilterComponentParams\": {\n            \"description\": \"Custom parameters to be passed to the floating filter component.\",\n            \"type\": \"object\"\n        },\n        \"display\": {\n            \"default\": \"inline\",\n            \"options\": [\n                \"inline\",\n                \"subMenu\",\n                \"accordion\"\n            ],\n            \"description\": \"Configures how the filter is shown in the Multi Filter.\",\n            \"more\": {\n                \"url\": \"/filter-multi/#display-style\",\n                \"name\": \"Display Style\"\n            }\n        },\n        \"title\": {\n            \"description\": \"The title to be used when a filter is displayed inside a sub-menu or accordion.\",\n            \"type\": \"string\"\n        }\n    },\n    \"api\": {\n        \"setModel()\": {\n            \"description\": \"Sets the state of the child filters using the supplied models. Providing `null` will de-activate all child filters.<br /><br />**Note:** if you are [providing values asynchronously](/filter-set-filter-list/#asynchronous-values) to a child [Set Filter](/filter-set/), you need to wait for these changes to be applied before performing any further actions by waiting on the returned grid promise, e.g. `filter.setModel([null, { values: ['a', 'b'] }]).then(function() { gridApi.onFilterChanged(); });`\",\n            \"type\": {\n                \"arguments\": {\n                    \"model\": [\n                        \"object\",\n                        \"null\"\n                    ]\n                }\n            }\n        },\n        \"getChildFilterInstance()\": {\n            \"description\": \"Returns the child filter instance at the specified index.\",\n            \"type\": {\n                \"arguments\": {\n                    \"index\": \"number\"\n                },\n                \"returnType\": \"IFilter\"\n            },\n            \"more\": {\n                \"url\": \"/filter-multi/#accessing-child-filters\",\n                \"name\": \"Accessing Child Filters\"\n            }\n        }\n    }\n}"}},{"relativePath":"filter-provided-simple/resources/simple-filters.json","internal":{"content":"{\n    \"filterParams\": {\n        \"alwaysShowBothConditions\": {\n            \"default\": false,\n            \"description\": \"By default, only one condition is shown, and a second is made visible once a first condition has been entered. Set this to `true` to always show both conditions. In this case the second condition will be disabled until a first condition has been entered.\",\n            \"relevantTo\": [\n                \"Text\",\n                \"Number\",\n                \"Date\"\n            ]\n        },\n        \"filterOptions\": {\n            \"description\": \"Array of [Filter Options](/filter-provided-simple/#simple-filter-options) to present to the user. See [Filter Options](/filter-provided-simple/#simple-filter-options) for all options available to each filter type.\",\n            \"type\": \"string[]\",\n            \"relevantTo\": [\n                \"Text\",\n                \"Number\",\n                \"Date\"\n            ]\n        },\n        \"defaultOption\": {\n            \"description\": \"The default [Filter Option](/filter-provided-simple/#simple-filter-options) to be selected.\",\n            \"type\": \"string\",\n            \"relevantTo\": [\n                \"Text\",\n                \"Number\",\n                \"Date\"\n            ]\n        },\n        \"defaultJoinOperator\": {\n            \"description\": \"By default, the two conditions are combined using `AND`. You can change this default by setting this property.\",\n            \"type\": \"string\",\n            \"options\": [\n                \"AND\",\n                \"OR\"\n            ],\n            \"relevantTo\": [\n                \"Text\",\n                \"Number\",\n                \"Date\"\n            ]\n        },\n        \"suppressAndOrCondition\": {\n            \"description\": \"If `true`, the filter will only allow one condition.\",\n            \"default\": false,\n            \"relevantTo\": [\n                \"Text\",\n                \"Number\",\n                \"Date\"\n            ]\n        },\n        \"textCustomComparator\": {\n            \"description\": \"Used to override how to filter based on the user input.\",\n            \"more\": {\n                \"name\": \"Text Custom Comparator\",\n                \"url\": \"/filter-text/#text-custom-comparator\"\n            },\n            \"relevantTo\": [\n                \"Text\"\n            ]\n        },\n        \"caseSensitive\": {\n            \"description\": \"By default, text filtering is case-insensitive. Set this to `true` to make text filtering case-sensitive.\",\n            \"default\": false,\n            \"relevantTo\": [\n                \"Text\"\n            ]\n        },\n        \"textFormatter\": {\n            \"description\": \"Formats the text before applying the filter compare logic. Useful if you want to substitute accented characters, for example.\",\n            \"relevantTo\": [\n                \"Text\"\n            ]\n        },\n        \"trimInput\": {\n            \"default\": false,\n            \"description\": \"If `true`, the input that the user enters will be trimmed when the filter is applied, so any leading or trailing whitespace will be removed. If only whitespace is entered, it will be left as-is. If you enable `trimInput`, it is best to also increase the `debounceMs` to give users more time to enter text.\",\n            \"relevantTo\": [\n                \"Text\"\n            ]\n        },\n        \"inRangeInclusive\": {\n            \"description\": \"If `true`, the `'inRange'` filter option will include values equal to the start and end of the range.\",\n            \"relevantTo\": [\n                \"Number\",\n                \"Date\"\n            ]\n        },\n        \"includeBlanksInEquals\": {\n            \"description\": \"If `true`, blank (`null` or `undefined`) values will pass the `'equals'` filter option.\",\n            \"relevantTo\": [\n                \"Number\",\n                \"Date\"\n            ]\n        },\n        \"includeBlanksInLessThan\": {\n            \"description\": \"If `true`, blank (`null` or `undefined`) values will pass the `'lessThan'` and `'lessThanOrEqual'` filter options.\",\n            \"relevantTo\": [\n                \"Number\",\n                \"Date\"\n            ]\n        },\n        \"includeBlanksInGreaterThan\": {\n            \"description\": \"If `true`, blank (`null` or `undefined`) values will pass the `'greaterThan'` and `'greaterThanOrEqual'` filter options.\",\n            \"relevantTo\": [\n                \"Number\",\n                \"Date\"\n            ]\n        },\n        \"includeBlanksInRange\": {\n            \"description\": \"If `true`, blank (`null` or `undefined`) values will pass the `'inRange'` filter option.\",\n            \"relevantTo\": [\n                \"Number\",\n                \"Date\"\n            ]\n        },\n        \"allowedCharPattern\": {\n            \"description\": \"When specified, the input field will be of type `text` instead of `number`, and this will be used as a regex of all the characters that are allowed to be typed. This will be compared against any typed character and prevent the character from appearing in the input if it does not match, in supported browsers (all except Safari).\",\n            \"relevantTo\": [\n                \"Number\"\n            ]\n        },\n        \"numberParser\": {\n            \"description\": \"Typically used alongside `allowedCharPattern`, this provides a custom parser to convert the value entered in the filter inputs into a number that can be used for comparisons.\",\n            \"relevantTo\": [\n                \"Number\"\n            ]\n        },\n        \"comparator\": {\n            \"description\": \"Required if the data for the column are not native JS `Date` objects.\",\n            \"relevantTo\": [\n                \"Date\"\n            ]\n        },\n        \"browserDatePicker\": {\n            \"description\": \"This is only used if a date component is not provided. By default the grid will use the browser date picker in Chrome and Firefox and a plain text box for all other browsers (this is because Chrome and Firefox are the only current browsers providing a decent out-of-the-box date picker). If this property is set to `true`, the browser date picker will be used regardless of the browser type. If set to `false`, a plain text box will be used for all browsers.\",\n            \"relevantTo\": [\n                \"Date\"\n            ]\n        },\n        \"minValidYear\": {\n            \"default\": 1000,\n            \"description\": \"This is the minimum year that must be entered in a date field for the value to be considered valid.\",\n            \"relevantTo\": [\n                \"Date\"\n            ]\n        }\n    }\n}"}},{"relativePath":"filter-provided/resources/provided-filters.json","internal":{"content":"{\n    \"filterParams\": {\n        \"buttons\": {\n            \"description\": \"Specifies the buttons to be shown in the filter, in the order they should be displayed in. The options are: <ul><li>`'apply'`: If the Apply button is present, the filter is only applied after the user hits the Apply button.</li><li>`'clear'`: The Clear button will clear the (form) details of the filter without removing any active filters on the column.</li><li>`'reset'`: The Reset button will clear the details of the filter and any active filters on that column.</li><li>`'cancel'`: The Cancel button will discard any changes that have been made to the filter in the UI, restoring the applied model.</li></ul>\",\n            \"type\": \"string[]\"\n        },\n        \"closeOnApply\": {\n            \"description\": \"If the Apply button is present, the filter popup will be closed immediately when the Apply or Reset button is clicked if this is set to `true`.\",\n            \"default\": false\n        },\n        \"debounceMs\": {\n            \"description\": \"By default the [Text](/filter-text/) and [Number](/filter-number/) filters will debounce by 500ms. This is because these filters have text field inputs, so time is given to the user to type items in before the input is formatted and the filtering applied. The [Set](/filter-set/) and [Date](/filter-date/) will execute immediately (no debounce). To override these defaults, set `debounceMs` to the number of milliseconds to debounce by.\",\n            \"type\": \"number\"\n        },\n        \"newRowsAction\": {\n            \"default\": \"clear\",\n            \"description\": \"This property is for when using the [Client Side Row Model](/client-side-model/) only. When set to `'clear'`, updating the data in the grid by calling `api.setRowData()` (or updating the `rowData` property if bound by a framework) will clear (reset) the filter. If you instead set this to `'keep'`, the grid will keep its currently set filter when the data is updated.\",\n            \"options\": [\n                \"clear\",\n                \"keep\"\n            ]\n        }\n    },\n    \"api\": {\n        \"getModelFromUi()\": {\n            \"description\": \"Returns the filter model from the UI. If changes have been made to the UI but not yet applied, this model will reflect those changes.\",\n            \"type\": {\n                \"arguments\": {},\n                \"returnType\": \"object\"\n            }\n        },\n        \"applyModel()\": {\n            \"description\": \"Applies the model shown in the UI (so that `getModel()` will now return what was in the UI when `applyModel()` was called).\",\n            \"type\": {\n                \"arguments\": {}\n            }\n        }\n    }\n}"}},{"relativePath":"filter-set/resources/set-filter-params.json","internal":{"content":"{\n    \"filterParams\": {\n        \"applyMiniFilterWhileTyping\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to apply the Set Filter immediately when the user is typing in the Mini Filter.\",\n            \"more\": {\n                \"name\": \"Keyboard Shortcuts\",\n                \"url\": \"/filter-set-mini-filter/#keyboard-shortcuts\"\n            }\n        },\n        \"cellHeight\": {\n            \"description\": \"The height of values in the Filter List in pixels.\"\n        },\n        \"cellRenderer\": {\n            \"description\": \"Similar to the Cell Renderer for the grid. Setting it separately here allows for the value to be rendered differently in the filter.\",\n            \"more\": {\n                \"name\": \"Filter List Cell Renderer\",\n                \"url\": \"/filter-set-filter-list/#cell-renderer\"\n            }\n        },\n        \"comparator(a, b)\": {\n            \"description\": \"Comparator for sorting. If not provided, the Column Definition comparator is used. If Column Definition comparator is also not provided, the default (grid provided) comparator is used.\",\n            \"more\": {\n                \"name\": \"Sorting Filter Lists\",\n                \"url\": \"/filter-set-filter-list/#sorting-filter-lists\"\n            }\n        },\n        \"defaultToNothingSelected\": {\n            \"default\": false,\n            \"description\": \"By default, when the Set Filter is opened all values are shown selected. Set this to `true` to instead show all values as de-selected by default.\",\n            \"more\": {\n                \"name\": \"Default State\",\n                \"url\": \"/filter-set-filter-list/#default-state\"\n            }\n        },\n        \"excelMode\": {\n            \"description\": \"Changes the behaviour of the Set Filter to match that of Excel's AutoFilter.\",\n            \"more\": {\n                \"name\": \"Excel Mode\",\n                \"url\": \"/filter-set-excel-mode/\"\n            }\n        },\n        \"showTooltips\": {\n            \"default\": false,\n            \"description\": \"If `true`, hovering over a value in the Set Filter will show a tooltip containing the full, untruncated value.\",\n            \"more\": {\n                \"name\": \"Filter Value Tooltips\",\n                \"url\": \"/filter-set-filter-list/#filter-value-tooltips\"\n            }\n        },\n        \"suppressMiniFilter\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to hide the Mini Filter.\",\n            \"more\": {\n                \"name\": \"Hiding the Mini Filter\",\n                \"url\": \"/filter-set-mini-filter/#hiding-the-mini-filter\"\n            }\n        },\n        \"suppressSelectAll\": {\n            \"default\": false,\n            \"description\": \"Set to `true` to remove the Select All checkbox.\"\n        },\n        \"suppressSorting\": {\n            \"default\": false,\n            \"description\": \"If `true`, the Set Filter values will not be sorted. Use this if you are providing your own values and don't want them sorted as you are providing in the order you want.\",\n            \"more\": {\n                \"name\": \"Supplying Filter Values\",\n                \"url\": \"/filter-set-filter-list/#supplying-filter-values\"\n            }\n        },\n        \"textFormatter\": {\n            \"description\": \"If specified, this formats the text before applying the Mini Filter compare logic, useful for instance to substitute accented characters.\",\n            \"more\": {\n                \"name\": \"Custom Searches\",\n                \"url\": \"/filter-set-mini-filter/#custom-searches\"\n            }\n        },\n        \"values\": {\n            \"description\": \"The values to display in the Filter List. If this is not set, the filter will takes its values from what is loaded in the table.\",\n            \"more\": {\n                \"name\": \"Supplying Filter Values\",\n                \"url\": \"/filter-set-filter-list/#supplying-filter-values\"\n            }\n        }\n    }\n}"}},{"relativePath":"filter-set-api/resources/set-filter-api.json","internal":{"content":"{\n    \"api\": {\n        \"setModel()\": {\n            \"description\": \"Sets the state of the filter using the supplied model. Providing `null` as the model will de-activate the filter.<br /><br />**Note:** if you are [providing values asynchronously](/filter-set-filter-list/#asynchronous-values) to the Set Filter, you need to wait for these changes to be applied before performing any further actions by waiting on the returned grid promise, e.g. `filter.setModel({ values: ['a', 'b'] }).then(function() { gridApi.onFilterChanged(); });`\",\n            \"type\": {\n                \"arguments\": {\n                    \"model\": \"object | null\"\n                }\n            }\n        },\n        \"getValues()\": {\n            \"description\": \"Returns the full list of unique values used by the Set Filter.\"\n        },\n        \"setMiniFilter(text)\": {\n            \"description\": \"Sets the text in the Mini Filter at the top of the filter (the 'quick search' in the popup).\"\n        },\n        \"getMiniFilter()\": {\n            \"description\": \"Gets the Mini Filter text.\"\n        },\n        \"refreshFilterValues()\": {\n            \"description\": \"Refreshes the values shown in the filter from the original source. For example, if a callback was provided, the callback will be executed again and the filter will refresh using the values returned.\",\n            \"more\": {\n                \"name\": \"Refreshing Values\",\n                \"url\": \"/filter-set-filter-list/#refreshing-values\"\n            }\n        },\n        \"setFilterValues(values[])\": {\n            \"description\": \"Sets the values used in the Set Filter on the fly.\"\n        },\n        \"resetFilterValues()\": {\n            \"description\": \"Resets the Set Filter to use values from the grid, rather than any values that have been provided directly.\"\n        }\n    }\n}"}},{"relativePath":"filter-set-excel-mode/resources/excel-mode.json","internal":{"content":"{\n    \"behaviours\": [\n        {\n            \"behaviour\": \"Show all values selected by default\",\n            \"agGrid\": true,\n            \"windowsExcel\": true,\n            \"macExcel\": true\n        },\n        {\n            \"behaviour\": \"Allow filter with no values selected\",\n            \"agGrid\": true,\n            \"windowsExcel\": false,\n            \"macExcel\": false\n        },\n        {\n            \"behaviour\": \"Apply the filter immediately when a value is selected/deselected\",\n            \"agGrid\": true,\n            \"windowsExcel\": false,\n            \"macExcel\": \"after 500ms delay\"\n        },\n        {\n            \"behaviour\": \"Apply the filter when the Apply button is clicked\",\n            \"agGrid\": \"when button enabled\",\n            \"windowsExcel\": true,\n            \"macExcel\": null\n        },\n        {\n            \"behaviour\": \"Close the filter when the Apply button is clicked\",\n            \"agGrid\": false,\n            \"windowsExcel\": true,\n            \"macExcel\": null\n        },\n        {\n            \"behaviour\": \"Press <kbd>Enter</kbd> to apply the filter\",\n            \"agGrid\": false,\n            \"windowsExcel\": true,\n            \"macExcel\": null\n        },\n        {\n            \"behaviour\": \"Close the filter when <kbd>Enter</kbd> is pressed\",\n            \"agGrid\": false,\n            \"windowsExcel\": true,\n            \"macExcel\": false\n        },\n        {\n            \"behaviour\": \"Discard the selected state of values that are not visible when the filter is applied\",\n            \"agGrid\": false,\n            \"windowsExcel\": true,\n            \"macExcel\": true\n        },\n        {\n            \"behaviour\": \"Hide unavailable values in other Set Filters when a filter is applied\",\n            \"agGrid\": true,\n            \"windowsExcel\": true,\n            \"macExcel\": true\n        },\n        {\n            \"behaviour\": \"Type into search box to only show values with matching text\",\n            \"agGrid\": true,\n            \"windowsExcel\": true,\n            \"macExcel\": true\n        },\n        {\n            \"behaviour\": \"Combine selected values from different searches before applying\",\n            \"agGrid\": true,\n            \"windowsExcel\": false,\n            \"macExcel\": false\n        },\n        {\n            \"behaviour\": \"Press <kbd>Enter</kbd> in the search box to apply the filter using all visible values\",\n            \"agGrid\": true,\n            \"windowsExcel\": false,\n            \"macExcel\": false\n        },\n        {\n            \"behaviour\": \"Apply the filter immediately using all visible values while typing in the search box\",\n            \"agGrid\": false,\n            \"windowsExcel\": false,\n            \"macExcel\": \"after 500ms delay\"\n        },\n        {\n            \"behaviour\": \"Press <kbd>Enter</kbd> in the search box to select all search text\",\n            \"agGrid\": false,\n            \"windowsExcel\": false,\n            \"macExcel\": true\n        },\n        {\n            \"behaviour\": \"Restore the applied filter state when the search box is cleared\",\n            \"agGrid\": false,\n            \"windowsExcel\": true,\n            \"macExcel\": null\n        },\n        {\n            \"behaviour\": \"Clear the search box when the filter is closed\",\n            \"agGrid\": false,\n            \"windowsExcel\": true,\n            \"macExcel\": true\n        },\n        {\n            \"behaviour\": \"Discard un-applied changes when the filter is closed\",\n            \"agGrid\": false,\n            \"windowsExcel\": true,\n            \"macExcel\": null\n        },\n        {\n            \"behaviour\": \"Discard un-applied changes when the Cancel button is clicked\",\n            \"agGrid\": true,\n            \"windowsExcel\": true,\n            \"macExcel\": null\n        },\n        {\n            \"behaviour\": \"Close the filter when the Cancel button is clicked\",\n            \"agGrid\": false,\n            \"windowsExcel\": true,\n            \"macExcel\": null\n        },\n        {\n            \"behaviour\": \"Allow blank values to be selected\",\n            \"agGrid\": true,\n            \"windowsExcel\": true,\n            \"macExcel\": true\n        },\n        {\n            \"behaviour\": \"Show (Blanks) option at the end of the list of values\",\n            \"agGrid\": [\n                false,\n                \"sorted with other values\"\n            ],\n            \"windowsExcel\": true,\n            \"macExcel\": true\n        },\n        {\n            \"behaviour\": \"The (Blanks) option is shown if the search text matches\",\n            \"agGrid\": false,\n            \"windowsExcel\": true,\n            \"macExcel\": true\n        }\n    ]\n}"}},{"relativePath":"filtering/resources/filtering.json","internal":{"content":"{\n    \"providedFilters\": {\n        \"agNumberColumnFilter\": {\n            \"description\": \"A Number Filter for number comparisons.\"\n        },\n        \"agTextColumnFilter\": {\n            \"description\": \"A Text Filter for string comparisons.\"\n        },\n        \"agDateColumnFilter\": {\n            \"description\": \"A Date Filter for date comparisons.\"\n        },\n        \"agSetColumnFilter\": {\n            \"description\": \"A Set Filter, influenced by how filters work in Microsoft Excel. This is an AG Grid Enterprise feature.\"\n        }\n    }\n}"}},{"relativePath":"integrated-charts-api/resources/chart-api.json","internal":{"content":"{\n    \"params\": {\n        \"meta\": {\n            \"displayName\": \"createRangeChart params\"\n        },\n        \"chartType\": {\n            \"type\": \"ChartType\",\n            \"required\": true,\n            \"options\": [\n                \"groupedColumn\",\n                \"stackedColumn\",\n                \"normalizedColumn\",\n                \"groupedBar\",\n                \"stackedBar\",\n                \"normalizedBar\",\n                \"line\",\n                \"scatter\",\n                \"bubble\",\n                \"pie\",\n                \"doughnut\",\n                \"area\",\n                \"stackedArea\",\n                \"normalizedArea\"\n            ],\n            \"description\": \"The type of chart to create.\"\n        },\n        \"cellRange\": {\n            \"meta\": {\n                \"type\": \"CellRangeParams\",\n                \"required\": true,\n                \"description\": \"Defines the range of cells to be charted. A range is normally defined with start and end rows and a list of columns. If the start and end rows are omitted, the range covers all rows (i.e. entire columns are selected). The columns can either be defined using a start and end column (the range will cover the start and end columns and all columns in between), or columns can be supplied specifically in cases where the required columns are not adjacent to each other. See [Add Cell Range](/range-selection/#api-addcellrange-rangeselection) for more information.\"\n            },\n            \"rowStartIndex\": {\n                \"type\": \"number\",\n                \"description\": \"The index of the first row in the range.\"\n            },\n            \"rowStartPinned\": {\n                \"type\": \"string\",\n                \"description\": \"Sets whether the first row is pinned.\"\n            },\n            \"rowEndIndex\": {\n                \"type\": \"number\",\n                \"description\": \"The index of the last row in the range.\"\n            },\n            \"rowEndPinned\": {\n                \"type\": \"string\",\n                \"description\": \"Sets whether the last row is pinned.\"\n            },\n            \"columnStart\": {\n                \"type\": \"string | Column\",\n                \"description\": \"The first column of the range.\"\n            },\n            \"columnEnd\": {\n                \"type\": \"string | Column\",\n                \"description\": \"The last column of the range.\"\n            },\n            \"columns\": {\n                \"type\": \"(string | Column)[]\",\n                \"description\": \"The columns in the range. Used instead of `columnStart` and `columnEnd`, particularly when you want non-sequential columns.\"\n            }\n        },\n        \"chartThemeName\": {\n            \"type\": \"string\",\n            \"options\": [\n                \"ag-default\",\n                \"ag-default-dark\",\n                \"ag-material\",\n                \"ag-material-dark\",\n                \"ag-pastel\",\n                \"ag-pastel-dark\",\n                \"ag-vivid\",\n                \"ag-vivid-dark\",\n                \"ag-solar\",\n                \"ag-solar-dark\"\n            ],\n            \"description\": \"The default theme to use for the created chart. In addition to the default options you listed, you can also provide your own [custom chart themes](/integrated-charts-customisation/#custom-chart-themes).\"\n        },\n        \"chartContainer\": {\n            \"type\": \"HTMLElement\",\n            \"description\": \"If the chart is to be displayed outside of the grid then a chart container should be provided. If the chart is to be displayed using the grid's popup window mechanism then leave as `undefined`.\"\n        },\n        \"suppressChartRanges\": {\n            \"default\": false,\n            \"description\": \"By default, when a chart is displayed using the grid, the grid will highlight the range the chart is charting when the chart gets focus. To suppress this behaviour, set `suppressChartRanges=true`.\"\n        },\n        \"aggFunc\": {\n            \"description\": \"The aggregation function that should be applied to all series data. The built-in aggregation functions are <code>'sum'</code>, <code>'min'</code>, <code>'max'</code>, <code>'count'</code>, <code>'avg'</code>, <code>'first'</code>, <code>'last'</code>. Alternatively, custom aggregation functions can be provided if they conform to the <code>IAggFunc</code> interface shown here.\",\n            \"type\": {\n                \"parameters\": {\n                    \"values\": \"any[]\",\n                    \"column\": \"Column\",\n                    \"colDef\": \"ColDef\",\n                    \"rowNode\": \"RowNode\",\n                    \"data\": \"any\",\n                    \"api\": \"GridApi\",\n                    \"columnApi\": \"ColumnApi\",\n                    \"context\": \"any\"\n                },\n                \"returnType\": \"any\"\n            }\n        },\n        \"unlinkChart\": {\n            \"default\": false,\n            \"description\": \"When enabled the chart will be unlinked from the grid after creation, any updates to the data will not be reflected in the chart.\",\n            \"more\": {\n                \"name\": \"Unlinking Charts\",\n                \"url\": \"/integrated-charts-toolbar/#unlinking-charts\"\n            }\n        },\n        \"chartThemeOverrides\": {\n            \"type\": \"AgChartThemeOverrides\",\n            \"description\": \"Allows specific chart options in the current theme to be overridden.\",\n            \"more\": {\n                \"name\": \"Overriding Existing Themes\",\n                \"url\": \"/integrated-charts-customisation/#overriding-existing-themes\"\n            }\n        }\n    },\n    \"GetChartImageDataUrlParams\": {\n        \"meta\": {\n            \"displayName\": \"createRangeChartParams\"\n        },\n        \"chartId\": {\n            \"type\": \"string\",\n            \"required\": true,\n            \"description\": \"The id of the created chart.\"\n        },\n        \"fileFormat\": {\n            \"type\": \"string\",\n            \"options\": [\n                \"image/png\",\n                \"image/jpeg\"\n            ],\n            \"description\": \"A string indicating the image format. The default format type is image/png.\"\n        }\n    }\n}"}},{"relativePath":"integrated-charts-cross-filtering/resources/cross-filter-api.json","internal":{"content":"{\n    \"params\": {\n        \"meta\": {\n            \"displayName\": \"createCrossFilterChart params\"\n        },\n        \"chartType\": {\n            \"type\": \"ChartType\",\n            \"required\": true,\n            \"options\": [\n                \"column\",\n                \"bar\",\n                \"line\",\n                \"scatter\",\n                \"bubble\",\n                \"pie\",\n                \"doughnut\",\n                \"area\"\n            ],\n            \"description\": \"The type of cross-filtering chart to create.\"\n        },\n        \"cellRange\": {\n            \"meta\": {\n                \"type\": \"CellRangeParams\",\n                \"required\": true,\n                \"description\": \"Defines the list of columns to be charted. Note that cross-filter charts include all rows in the grid so there is no need to specify the range of rows.\"\n            },\n            \"columnStart\": {\n                \"type\": \"string | Column\",\n                \"description\": \"The first column of the range.\"\n            },\n            \"columnEnd\": {\n                \"type\": \"string | Column\",\n                \"description\": \"The last column of the range.\"\n            },\n            \"columns\": {\n                \"type\": \"(string | Column)[]\",\n                \"description\": \"The columns in the range. Used instead of `columnStart` and `columnEnd`, particularly when you want non-sequential columns.\"\n            }\n        },\n        \"chartThemeName\": {\n            \"type\": \"string\",\n            \"options\": [\n                \"ag-default\",\n                \"ag-default-dark\",\n                \"ag-material\",\n                \"ag-material-dark\",\n                \"ag-pastel\",\n                \"ag-pastel-dark\",\n                \"ag-vivid\",\n                \"ag-vivid-dark\",\n                \"ag-solar\",\n                \"ag-solar-dark\"\n            ],\n            \"description\": \"The default theme to use for the created chart. In addition to the default options you listed, you can also provide your own [custom chart themes](/integrated-charts-customisation/#custom-chart-themes).\"\n        },\n        \"chartContainer\": {\n            \"type\": \"HTMLElement\",\n            \"description\": \"If the chart is to be displayed outside of the grid then a chart container should be provided. If the chart is to be displayed using the grid's popup window mechanism then leave as `undefined`.\"\n        },\n        \"suppressChartRanges\": {\n            \"default\": true,\n            \"description\": \"By default, when a cross-filter chart is displayed using the grid, the grid will not highlight the range the chart is charting when the chart gets focus. To show the chart range set `suppressChartRanges=false`.\"\n        },\n        \"aggFunc\": {\n            \"description\": \"The aggregation function that should be applied to all series data. The built-in aggregation functions are <code>'sum'</code>, <code>'min'</code>, <code>'max'</code>, <code>'count'</code>, <code>'avg'</code>, <code>'first'</code>, <code>'last'</code>. Alternatively, custom aggregation functions can be provided if they conform to the <code>IAggFunc</code> interface shown here.\",\n            \"type\": {\n                \"parameters\": {\n                    \"values\": \"any[]\",\n                    \"column\": \"Column\",\n                    \"colDef\": \"ColDef\",\n                    \"rowNode\": \"RowNode\",\n                    \"data\": \"any\",\n                    \"api\": \"GridApi\",\n                    \"columnApi\": \"ColumnApi\",\n                    \"context\": \"any\"\n                },\n                \"returnType\": \"any\"\n            }\n        },\n        \"unlinkChart\": {\n            \"default\": false,\n            \"description\": \"When enabled the chart will be unlinked from the grid after creation, any updates to the data will not be reflected in the chart.\",\n            \"more\": {\n                \"name\": \"Unlinking Charts\",\n                \"url\": \"/integrated-charts-toolbar/#unlinking-charts\"\n            }\n        },\n        \"chartThemeOverrides\": {\n            \"type\": \"AgChartThemeOverrides\",\n            \"description\": \"Allows specific chart options in the current theme to be overridden.\",\n            \"more\": {\n                \"name\": \"Overriding Existing Themes\",\n                \"url\": \"/integrated-charts-customisation/#overriding-existing-themes\"\n            }\n        }\n    }\n}"}},{"relativePath":"master-detail-grids/resources/properties.json","internal":{"content":"{\n  \"detailCellRenderer\": {\n    \"detailGridOptions\": {\n      \"description\": \"Provide Grid Options to use for the Detail Grid. It should be either an object (for once set of Grid Options for all Detail Grids) or a function (to set different Grid Options for different Detail Grids).\"\n    },\n    \"getDetailRowData\": {\n      \"description\": \"A function that provides what rows to display in the Detail Grid.\"\n    },\n    \"template\": {\n      \"description\": \"Allows changing the template used around the Detail Grid.\"\n    },\n    \"refreshStrategy\": {\n      \"description\": \"Defines how to refresh the Detail Grids as data is changing in the Master Grid.\"\n    }\n  }\n}\n"}},{"relativePath":"row-models/resources/row-models.json","internal":{"content":"{\n    \"features\": [\n        {\n            \"feature\": \"All Data in Client\",\n            \"clientSide\": true,\n            \"infinite\": false,\n            \"serverSide\": false,\n            \"viewport\": false\n        },\n        {\n            \"feature\": \"Fetch Data as User Scrolls\",\n            \"clientSide\": false,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Row Sorting](/row-sorting/)\",\n            \"clientSide\": \"client\",\n            \"infinite\": \"server\",\n            \"serverSide\": \"client OR server\",\n            \"viewport\": \"server\"\n        },\n        {\n            \"feature\": \"[Row Filtering](/filtering/)\",\n            \"clientSide\": \"client\",\n            \"infinite\": \"server\",\n            \"serverSide\": \"client OR server\",\n            \"viewport\": \"server\"\n        },\n        {\n            \"feature\": \"[Quick Filter](/filter-quick/)\",\n            \"clientSide\": true,\n            \"infinite\": false,\n            \"serverSide\": false,\n            \"viewport\": false\n        },\n        {\n            \"feature\": \"[Floating Filters(/floating-filters/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Dynamic Row Height](/row-height/)\",\n            \"clientSide\": true,\n            \"infinite\": false,\n            \"serverSide\": true,\n            \"viewport\": false\n        },\n        {\n            \"feature\": \"[Row Grouping](/grouping/)\",\n            \"clientSide\": \"client\",\n            \"infinite\": false,\n            \"serverSide\": \"server\",\n            \"viewport\": false\n        },\n        {\n            \"feature\": \"[Row Pivoting](/grouping/)\",\n            \"clientSide\": \"client\",\n            \"infinite\": false,\n            \"serverSide\": \"server\",\n            \"viewport\": false\n        },\n        {\n            \"feature\": \"Lazy Loading Row Groups\",\n            \"clientSide\": false,\n            \"infinite\": false,\n            \"serverSide\": true,\n            \"viewport\": false\n        },\n        {\n            \"feature\": \"[Value Aggregation](/aggregation/)\",\n            \"clientSide\": \"client\",\n            \"infinite\": false,\n            \"serverSide\": \"server\",\n            \"viewport\": false\n        },\n        {\n            \"feature\": \"[Row Selection](/row-selection/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Header Checkbox Selection](/row-selection/#header-checkbox-selection)\",\n            \"clientSide\": true,\n            \"infinite\": false,\n            \"serverSide\": false,\n            \"viewport\": false\n        },\n        {\n            \"feature\": \"[Range Selection](/range-selection/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Column Spanning](/column-spanning/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Row Spanning](/row-spanning/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Column Pinning](/column-pinning/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Row Pinning](/row-pinning/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Pagination](/row-pagination/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Custom Filters](/component-filter/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Cell Editors](/component-cell-editor/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Cell Renderers](/component-cell-renderer/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Value Getter](/value-getters/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Value Setter](/value-setters/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Value Formatter](/value-formatters/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Value Parser](/value-parsers/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Full Width Rows](/full-width-rows/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[CSV Export](/csv-export/)\",\n            \"clientSide\": true,\n            \"infinite\": \"data on screen\",\n            \"serverSide\": \"data on screen\",\n            \"viewport\": \"data on screen\"\n        },\n        {\n            \"feature\": \"[Excel Export](/excel-export/)\",\n            \"clientSide\": true,\n            \"infinite\": \"data on screen\",\n            \"serverSide\": \"data on screen\",\n            \"viewport\": \"data on screen\"\n        },\n        {\n            \"feature\": \"[Clipboard Copy & Paste](/clipboard/)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": true\n        },\n        {\n            \"feature\": \"[Update via Transaction](/data-update-transactions/)\",\n            \"clientSide\": true,\n            \"infinite\": false,\n            \"serverSide\": true,\n            \"viewport\": false\n        },\n        {\n            \"feature\": \"[Update via Async Transactions](/data-update-high-frequency/)\",\n            \"clientSide\": true,\n            \"infinite\": false,\n            \"serverSide\": true,\n            \"viewport\": false\n        },\n        {\n            \"feature\": \"[Specify Selectable Rows](/row-selection/#specify-selectable-rows)\",\n            \"clientSide\": true,\n            \"infinite\": true,\n            \"serverSide\": true,\n            \"viewport\": false\n        }\n    ]\n}"}},{"relativePath":"row-object/resources/events.json","internal":{"content":"{\n    \"rowNodeEvents\": {\n        \"meta\": {\n            \"displayName\": \"Events on Row Nodes\",\n            \"description\": \"The following events can be listened to on <code>rowNodes</code>:\"\n        },\n        \"rowSelected\": {\n            \"description\": \"Row was selected or unselected.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"RowNodeEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"mouseEnter\": {\n            \"description\": \"Mouse has entered the row.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"RowNodeEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"mouseLeave\": {\n            \"description\": \"Mouse has left the row.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"RowNodeEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"cellChanged\": {\n            \"description\": \"One cell value has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"CellChangedEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"allChildrenCountChanged\": {\n            \"description\": \"<code>allChildrenCount</code> has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"RowNodeEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"dataChanged\": {\n            \"description\": \"<code>rowData</code> has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"DataChangedEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"heightChanged\": {\n            \"description\": \"<code>rowHeight</code> has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"RowNodeEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"topChanged\": {\n            \"description\": \"<code>rowTop</code> has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"RowNodeEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"firstChildChanged\": {\n            \"description\": \"<code>firstChild</code> has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"RowNodeEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"lastChildChanged\": {\n            \"description\": \"<code>lastChild</code> has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"RowNodeEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"childIndexChanged\": {\n            \"description\": \"<code>childIndex</code> has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"RowNodeEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"rowIndexChanged\": {\n            \"description\": \"<code>rowIndex</code> has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"RowNodeEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"expandedChanged\": {\n            \"description\": \"<code>expanded</code> has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"RowNodeEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        },\n        \"uiLevelChanged\": {\n            \"description\": \"<code>uiLevel</code> has changed.\",\n            \"type\": {\n                \"arguments\": {\n                    \"event\": \"RowNodeEvent\"\n                },\n                \"returnType\": \"void\"\n            }\n        }\n    }\n}"}},{"relativePath":"row-object/resources/methods.json","internal":{"content":"{\n    \"rowNodeMethods\": {\n        \"meta\": {\n            \"displayName\": \"Row Node Methods\"\n        },\n        \"setSelected\": {\n            \"description\": \"Select (or deselect) the node. <code>newValue=true</code> for selection, <code>newValue=false</code> for deselection. If selecting, then passing <code>true</code> for <code>clearSelection</code> will select the node exclusively (i.e. NOT do multi select). If doing deselection, <code>clearSelection</code> has no impact.\"\n        },\n        \"isSelected\": {\n            \"description\": \"Returns <code>true</code> if node is selected, <code>false</code> if the not isn't selected or `undefined` if it's partially selected (group where not all children are selected).\"\n        },\n        \"addEventListener\": {\n            \"description\": \"Add an event listener. Currently only <code>rowSelected</code> event supported.\"\n        },\n        \"removeEventListener\": {\n            \"description\": \"Remove event listener.\"\n        },\n        \"resetQuickFilterAggregateText\": {\n            \"description\": \"The first time <code>quickFilter</code> runs, the grid creates a one-off string representation of the row. This string is then used for the quick filter instead of hitting each column separately. When you edit, using grid editing, this string gets cleared down. However if you edit without using grid editing, you will need to clear this string down for the row to be updated with the new values. Otherwise new values will not work with the <code>quickFilter</code>.\"\n        },\n        \"depthFirstSearch\": {\n            \"description\": \"Perform a depth-first search of this node and its children.\"\n        },\n        \"setRowHeight\": {\n            \"description\": \"Sets the row height. Call if you want to change the height initially assigned to the row. After calling, you must call <code>api.onRowHeightChanged()</code> so the grid knows it needs to work out the placement of the rows.\"\n        },\n        \"setData\": {\n            \"description\": \"Sets the data for this item. Results in the entire row getting refreshed.\"\n        }\n    }\n}"}},{"relativePath":"row-object/resources/reference.json","internal":{"content":"{\n    \"rowNodeAttributes\": {\n        \"meta\": {\n            \"displayName\": \"All Row Node Attributes\"\n        },\n        \"id\": {\n            \"description\": \"Unique ID for the node. Either provided by the application, or generated by the grid if not.\"\n        },\n        \"data\": {\n            \"description\": \"The data as provided by the application.\"\n        },\n        \"displayed\": {\n            \"description\": \"This will be `true` if it has a rowIndex assigned, otherwise `false`.\"\n        },\n        \"parent\": {\n            \"description\": \"The parent node to this node, or empty if top level.\"\n        },\n        \"level\": {\n            \"description\": \"How many levels this node is from the top when grouping.\"\n        },\n        \"uiLevel\": {\n            \"description\": \"How many levels this node is from the top when grouping in the UI (only different to <code>parent</code> when <code>groupRemoveSingleChildren=true</code>).\"\n        },\n        \"group\": {\n            \"description\": \"<code>true</code> if this node is a group node (i.e. has children).\"\n        },\n        \"rowPinned\": {\n            \"description\": \"<code>'top'</code> or <code>'bottom'</code> if pinned row, otherwise <code>null</code> or <code>undefined</code>.\"\n        },\n        \"childIndex\": {\n            \"description\": \"Index of this row with respect to its parent when grouping. Changes when data is sorted.\"\n        },\n        \"firstChild\": {\n            \"description\": \"<code>true</code> if this is the first child in this group. Changes when data is sorted.\"\n        },\n        \"lastChild\": {\n            \"description\": \"<code>true</code> if this is the last child in this group. Changes when data is sorted.\"\n        },\n        \"stub\": {\n            \"description\": \"Used by server-side row model. <code>true</code> if this row node is a stub. A stub is a placeholder row with loading icon while waiting from row to be loaded.\"\n        },\n        \"rowHeight\": {\n            \"description\": \"The row height in pixels.\"\n        },\n        \"rowIndex\": {\n            \"description\": \"The current row index. If the row is filtered out or in a collapsed group, this value will be `null`.\"\n        },\n        \"rowTop\": {\n            \"description\": \"The row top position in pixels.\"\n        },\n        \"quickFilterAggregateText\": {\n            \"description\": \"If using quick filter, stores a string representation of the row for searching against.\"\n        }\n    },\n    \"groupNodeAttributes\": {\n        \"meta\": {\n            \"displayName\": \"Group Node Attributes\"\n        },\n        \"groupData\": {\n            \"description\": \"If using grid grouping, contains the group values for this group.\"\n        },\n        \"aggData\": {\n            \"description\": \"If using grid grouping and aggregation, contains the aggregation data.\"\n        },\n        \"key\": {\n            \"description\": \"The key for the grouping e.g. Ireland, UK, USA.\"\n        },\n        \"field\": {\n            \"description\": \"The field (string) we are grouping on e.g. <code>'country'</code>.\"\n        },\n        \"rowGroupColumn\": {\n            \"description\": \"The row group column used for this group, e.g. the Country column instance.\"\n        },\n        \"rowGroupIndex\": {\n            \"description\": \"If doing in-memory (client-side) grouping, this is the index of the group column this cell is for. This will always be the same as the level, unless we are collapsing groups, i.e. <code>groupRemoveSingleChildren=true</code>.\"\n        },\n        \"expanded\": {\n            \"description\": \"<code>true</code> if group is expanded, otherwise <code>false</code>.\"\n        },\n        \"footer\": {\n            \"description\": \"<code>true</code> if row is a footer. Footers have <code>group = true</code> and <code>footer = true</code>.\"\n        },\n        \"allLeafChildren\": {\n            \"description\": \"All lowest level nodes beneath this node, no groups.\"\n        },\n        \"childrenAfterGroup\": {\n            \"description\": \"Children of this group. If multi levels of grouping, shows only immediate children.\"\n        },\n        \"childrenAfterFilter\": {\n            \"description\": \"Filtered children of this group.\"\n        },\n        \"childrenAfterSort\": {\n            \"description\": \"Sorted children of this group.\"\n        },\n        \"allChildrenCount\": {\n            \"description\": \"Number of children and grandchildren.\"\n        },\n        \"leafGroup\": {\n            \"description\": \"<code>true</code> if this node is a group and the group is the bottom level in the tree.\"\n        },\n        \"sibling\": {\n            \"description\": \"If using footers, reference to the footer node for this group.\"\n        }\n    }\n}"}},{"relativePath":"side-bar/resources/sideBar.json","internal":{"content":"{\n    \"sideBarProperties\": {\n        \"toolPanels\": {\n            \"description\": \"A list of all the panels to place in the side bar. The panels will be displayed in the provided order from top to bottom.\"\n        },\n        \"defaultToolPanel\": {\n            \"description\": \"The panel (identified by ID) to open by default. If none specified, the side bar is initially displayed closed.\"\n        },\n        \"hiddenByDefault\": {\n            \"default\": false,\n            \"description\": \"To hide the side bar by default, set this to <code>true</code>. If left undefined the side bar will be shown.\"\n        },\n        \"position\": {\n            \"default\": \"right\",\n            \"options\": [\n                \"left\",\n                \"right\"\n            ],\n            \"description\": \"Sets the side bar position relative to the grid.\"\n        }\n    },\n    \"toolPanelProperties\": {\n        \"id\": {\n            \"description\": \"The unique ID for this panel. Used in the API and elsewhere to refer to the panel.\"\n        },\n        \"labelKey\": {\n            \"description\": \"The key used for [localisation](/localisation/) for displaying the label. The label is displayed in the tab button.\"\n        },\n        \"labelDefault\": {\n            \"description\": \"The default label if <code>labelKey</code> is missing or does not map to valid text through localisation.\"\n        },\n        \"iconKey\": {\n            \"description\": \"The [key of the icon](/custom-icons/) to be used as a graphical aid beside the label in the side bar.\"\n        },\n        \"minWidth\": {\n            \"default\": 100,\n            \"description\": \"The min width of the tool panel.\"\n        },\n        \"maxWidth\": {\n            \"default\": \"undefined\",\n            \"type\": \"number\",\n            \"description\": \"The max width of the tool panel.\"\n        },\n        \"width\": {\n            \"default\": \"$side-bar-panel-width (theme variable)\",\n            \"type\": \"number\",\n            \"description\": \"The initial width of the tool panel.\"\n        },\n        \"toolPanel<br />toolPanelFramework<br />toolPanelParams\": {\n            \"description\": \"The tool panel component to use as the panel. The provided panels use components <code>agColumnsToolPanel</code> and <code>agFiltersToolPanel</code>. To provide your own custom panel component, you reference it by name here.\"\n        }\n    },\n    \"toolPanelApi\": {\n        \"setSideBarVisible(visible)\": {\n            \"description\": \"Show/hide the entire side bar, including any visible panel and the tab buttons.\"\n        },\n        \"isSideBarVisible()\": {\n            \"description\": \"Returns <code>true</code> if the side bar is visible.\"\n        },\n        \"openToolPanel(id)\": {\n            \"description\": \"Opens a particular tool panel. Provide the ID of the tool panel to open.\"\n        },\n        \"closeToolPanel()\": {\n            \"description\": \"Closes the currently open tool panel (if any).\"\n        },\n        \"getOpenedToolPanel()\": {\n            \"description\": \"Returns the ID of the currently shown tool panel if any, otherwise <code>null</code>.\"\n        },\n        \"setSideBar(config)\": {\n            \"description\": \"Resets the side bar to the provided configuration. The parameter is the same as the sideBar grid property. The side bar is re-created from scratch with the new config.\"\n        },\n        \"getSideBar()\": {\n            \"description\": \"Returns the current side bar configuration. If a shortcut was used, returns the detailed long form.'\"\n        },\n        \"setSideBarPosition(position)\": {\n            \"description\": \"Sets the side bar position relative to the grid. Possible values are <code>'left'</code> or <code>'right'</code>, where <code>'right'</code> is the default option.\"\n        }\n    }\n}"}},{"relativePath":"charts-api/api.json","internal":{"content":"{\n  \"chart\": {\n    \"meta\": {\n      \"displayName\": \"General Configuration\",\n      \"description\": \"Configuration common to all charts.\"\n    },\n    \"data\": {\n      \"type\": \"object[]\",\n      \"isRequired\": true,\n      \"description\": \"The data to render the chart from. If this is not specified, it must be set on individual series instead.\"\n    },\n    \"container\": {\n      \"type\": \"HTMLElement\",\n      \"description\": \"The element to place the rendered chart into.<br/><strong>Important:</strong> make sure to read the <code>autoSize</code> config description for information on how the container element affects the chart size (by default).\"\n    },\n    \"autoSize\": {\n      \"default\": true,\n      \"description\": \"By default, the chart will resize automatically to fill the container element. Set this to <code>false</code> to disable this behaviour. If either the <code>width</code> or <code>height</code> are set, auto-sizing will be disabled unless this is explicitly set to <code>true</code>.<br/><strong>Important:</strong> if this config is set to <code>true</code>, make sure to give the chart's <code>container</code> element an explicit size, otherwise you will run into a chicken and egg situation where the container expects to size itself according to the content and the chart expects to size itself according to the container.\"\n    },\n    \"width\": {\n      \"type\": \"number\",\n      \"description\": \"The width of the chart in pixels. Has no effect if <code>autoSize</code> is set to <code>true</code>.\",\n      \"min\": 1,\n      \"unit\": \"px\"\n    },\n    \"height\": {\n      \"type\": \"number\",\n      \"description\": \"The height of the chart in pixels. Has no effect if <code>autoSize</code> is set to <code>true</code>.\",\n      \"min\": 1,\n      \"unit\": \"px\"\n    },\n    \"tooltip\": {\n      \"meta\": {\n        \"description\": \"Global configuration that applies to all tooltips in the chart.\"\n      },\n      \"enabled\": {\n        \"type\": \"boolean\",\n        \"default\": true,\n        \"description\": \"Set to false to disable tooltips for all series in the chart.\"\n      },\n      \"tracking\": {\n        \"type\": \"boolean\",\n        \"default\": true,\n        \"description\": \"If true, for series with markers the tooltip will be shown to the closest marker.\"\n      },\n      \"class\": {\n        \"type\": \"string\",\n        \"description\": \"A class name to be added to the tooltip element of the chart.\"\n      },\n      \"delay\": {\n        \"default\": 0,\n        \"description\": \"The time interval (in milliseconds) after which the tooltip is shown.\"\n      }\n    },\n    \"padding\": {\n      \"meta\": {\n        \"description\": \"Configuration for the padding shown around the chart.\"\n      },\n      \"top\": {\n        \"default\": 20,\n        \"description\": \"The number of pixels of padding at the top of the chart area.\",\n        \"min\": 0,\n        \"max\": 40\n      },\n      \"right\": {\n        \"default\": 20,\n        \"description\": \"The number of pixels of padding at the right of the chart area.\",\n        \"min\": 0,\n        \"max\": 40\n      },\n      \"bottom\": {\n        \"default\": 20,\n        \"description\": \"The number of pixels of padding at the bottom of the chart area.\",\n        \"min\": 0,\n        \"max\": 40\n      },\n      \"left\": {\n        \"default\": 20,\n        \"description\": \"The number of pixels of padding at the left of the chart area.\",\n        \"min\": 0,\n        \"max\": 40\n      }\n    },\n    \"background\": {\n      \"meta\": {\n        \"description\": \"Configuration for the background shown behind the chart.\"\n      },\n      \"fill\": {\n        \"default\": \"#FFFFFF\",\n        \"description\": \"Colour of the chart background.\"\n      },\n      \"visible\": {\n        \"default\": true,\n        \"description\": \"Whether or not the background should be visible.\"\n      }\n    },\n    \"title\": {\n      \"meta\": {\n        \"description\": \"Configuration for the title shown at the top of the chart.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not the title should be shown.\"\n      },\n      \"text\": {\n        \"type\": \"string\",\n        \"default\": \"Title\",\n        \"description\": \"The text to show in the title.\"\n      },\n      \"color\": {\n        \"default\": \"#000000\",\n        \"description\": \"The colour to use for the title.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the title.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"bold\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the title.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 18,\n        \"description\": \"The font size in pixels to use for the title.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the title.\"\n      }\n    },\n    \"subtitle\": {\n      \"meta\": {\n        \"description\": \"Configuration for the subtitle shown beneath the chart title. Note: a subtitle will only be shown if a title is also present.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not the subtitle should be shown.\"\n      },\n      \"text\": {\n        \"type\": \"string\",\n        \"default\": \"Subtitle\",\n        \"description\": \"The text to show in the subtitle.\"\n      },\n      \"color\": {\n        \"default\": \"#000000\",\n        \"description\": \"The colour to use for the subtitle.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the subtitle.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the subtitle.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 14,\n        \"description\": \"The font size in pixels to use for the subtitle.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the subtitle.\"\n      }\n    },\n    \"legend\": {\n      \"meta\": {\n        \"description\": \"Configuration for the chart legend.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not to show the legend.\"\n      },\n      \"position\": {\n        \"default\": \"right\",\n        \"description\": \"Where the legend should show in relation to the chart.\",\n        \"options\": [\n          \"top\",\n          \"right\",\n          \"bottom\",\n          \"left\"\n        ]\n      },\n      \"spacing\": {\n        \"default\": 20,\n        \"description\": \"The spacing in pixels to use outside the legend.\",\n        \"min\": 0,\n        \"max\": 40,\n        \"unit\": \"px\"\n      },\n      \"item\": {\n        \"meta\": {\n          \"description\": \"Configuration for the legend items that consist of a marker and a label.\"\n        },\n        \"paddingX\": {\n          \"default\": 16,\n          \"description\": \"The horizontal spacing in pixels to use between legend items.\",\n          \"min\": 0,\n          \"max\": 40,\n          \"unit\": \"px\"\n        },\n        \"paddingY\": {\n          \"default\": 8,\n          \"description\": \"The vertical spacing in pixels to use between legend items.\",\n          \"min\": 0,\n          \"max\": 40,\n          \"unit\": \"px\"\n        },\n        \"marker\": {\n          \"meta\": {\n            \"description\": \"Configuration for the legend markers.\"\n          },\n          \"padding\": {\n            \"default\": 8,\n            \"description\": \"The padding in pixels between a legend marker and the corresponding label.\",\n            \"min\": 0,\n            \"max\": 40,\n            \"unit\": \"px\"\n          },\n          \"shape\": {\n            \"type\": \"string\",\n            \"description\": \"If set, overrides the marker shape from the series and the legend will show the specified marker shape instead. If not set, will use a marker shape matching the shape from the series, or fall back to <code>'square'</code> if there is none.\",\n            \"options\": [\n              \"circle\",\n              \"cross\",\n              \"diamond\",\n              \"plus\",\n              \"square\",\n              \"triangle\"\n            ]\n          },\n          \"size\": {\n            \"default\": 15,\n            \"description\": \"The size in pixels of the markers in the legend.\",\n            \"min\": 0,\n            \"max\": 30,\n            \"unit\": \"px\"\n          },\n          \"strokeWidth\": {\n            \"default\": 1,\n            \"description\": \"The width in pixels of the stroke for markers in the legend.\",\n            \"min\": 0,\n            \"max\": 10,\n            \"unit\": \"px\"\n          }\n        },\n        \"label\": {\n          \"meta\": {\n            \"description\": \"Configuration for the legend labels.\"\n          },\n          \"color\": {\n            \"default\": \"black\",\n            \"description\": \"The colour of the text.\"\n          },\n          \"fontStyle\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"italic\",\n              \"oblique\"\n            ],\n            \"description\": \"The font style to use for the legend.\"\n          },\n          \"fontWeight\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"bold\",\n              \"bolder\",\n              \"lighter\",\n              \"100\",\n              \"200\",\n              \"300\",\n              \"400\",\n              \"500\",\n              \"600\",\n              \"700\",\n              \"800\",\n              \"900\"\n            ],\n            \"description\": \"The font weight to use for the legend.\",\n            \"breakIndex\": 4\n          },\n          \"fontSize\": {\n            \"default\": 12,\n            \"description\": \"The font size in pixels to use for the legend.\",\n            \"min\": 1,\n            \"max\": 30,\n            \"unit\": \"px\"\n          },\n          \"fontFamily\": {\n            \"default\": \"Verdana, sans-serif\",\n            \"suggestions\": [\n              \"Verdana, sans-serif\",\n              \"Arial, sans-serif\",\n              \"Times New Roman, serif\"\n            ],\n            \"description\": \"The font family to use for the legend.\"\n          },\n          \"formatter\": {\n            \"type\": {\n              \"parameters\": {\n                \"id\": \"string\",\n                \"itemId\": \"any\",\n                \"value\": \"string\"\n              },\n              \"returnType\": \"string\"\n            },\n            \"description\": \"Function used to render legend labels. Where <code>id</code> is a series ID, <code>itemId</code> is component ID within a series, such as a field name or an item index.\"\n          }\n        }\n      }\n    },\n    \"navigator\": {\n      \"meta\": {\n        \"description\": \"Configuration for the chart navigator. This config is only supported by cartesian charts.\"\n      },\n      \"enabled\": {\n        \"default\": false,\n        \"description\": \"Whether or not to show the navigator.\"\n      },\n      \"height\": {\n        \"default\": 30,\n        \"description\": \"The height of the navigator.\",\n        \"min\": 10,\n        \"max\": 100,\n        \"unit\": \"px\"\n      },\n      \"margin\": {\n        \"default\": 10,\n        \"description\": \"The distance between the navigator and the bottom axis.\",\n        \"min\": 0,\n        \"max\": 100,\n        \"unit\": \"px\"\n      },\n      \"min\": {\n        \"default\": 0,\n        \"description\": \"The start of the visible range in the <code>[0, 1]</code> interval.\",\n        \"min\": 0,\n        \"max\": 1,\n        \"step\": 0.01\n      },\n      \"max\": {\n        \"default\": 1,\n        \"description\": \"The end of the visible range in the <code>[0, 1]</code> interval.\",\n        \"min\": 0,\n        \"max\": 1,\n        \"step\": 0.01\n      },\n      \"mask\": {\n        \"meta\": {\n          \"description\": \"Configuration for the navigator's visible range mask.\"\n        },\n        \"fill\": {\n          \"default\": \"#999999\",\n          \"description\": \"The fill colour used by the mask.\"\n        },\n        \"stroke\": {\n          \"default\": \"#999999\",\n          \"description\": \"The stroke colour used by the mask.\"\n        },\n        \"strokeWidth\": {\n          \"default\": 1,\n          \"description\": \"The stroke width used by the mask.\",\n          \"min\": 0,\n          \"max\": 5,\n          \"unit\": \"px\"\n        },\n        \"fillOpacity\": {\n          \"default\": 0.2,\n          \"description\": \"The opacity of the mask's fill in the <code>[0, 1]</code> interval, where <code>0</code> is effectively no masking.\",\n          \"min\": 0,\n          \"max\": 1,\n          \"step\": 0.05\n        }\n      },\n      \"minHandle\": {\n        \"meta\": {\n          \"description\": \"Configuration for the navigator's left handle.\"\n        },\n        \"fill\": {\n          \"default\": \"#f2f2f2\",\n          \"description\": \"The fill colour used by the handle.\"\n        },\n        \"stroke\": {\n          \"default\": \"#999999\",\n          \"description\": \"The stroke colour used by the handle.\"\n        },\n        \"strokeWidth\": {\n          \"default\": 1,\n          \"description\": \"The stroke width used by the handle.\",\n          \"min\": 0,\n          \"max\": 5,\n          \"unit\": \"px\"\n        },\n        \"width\": {\n          \"default\": 8,\n          \"description\": \"The width of the handle.\",\n          \"min\": 4,\n          \"max\": 20,\n          \"unit\": \"px\"\n        },\n        \"height\": {\n          \"default\": 16,\n          \"description\": \"The height of the handle.\",\n          \"min\": 8,\n          \"max\": 26,\n          \"unit\": \"px\"\n        },\n        \"gripLineLength\": {\n          \"default\": 8,\n          \"description\": \"The length of the handle's grip lines.\",\n          \"min\": 4,\n          \"max\": 16,\n          \"unit\": \"px\"\n        },\n        \"gripLineGap\": {\n          \"default\": 2,\n          \"description\": \"The distance between the handle's grip lines.\",\n          \"min\": 1,\n          \"max\": 8,\n          \"unit\": \"px\"\n        }\n      },\n      \"maxHandle\": {\n        \"meta\": {\n          \"description\": \"Configuration for the navigator's right handle.\"\n        },\n        \"fill\": {\n          \"default\": \"#f2f2f2\",\n          \"description\": \"The fill colour used by the handle.\"\n        },\n        \"stroke\": {\n          \"default\": \"#999999\",\n          \"description\": \"The stroke colour used by the handle.\"\n        },\n        \"strokeWidth\": {\n          \"default\": 1,\n          \"description\": \"The stroke width used by the handle.\",\n          \"min\": 0,\n          \"max\": 5,\n          \"unit\": \"px\"\n        },\n        \"width\": {\n          \"default\": 8,\n          \"description\": \"The width of the handle.\",\n          \"min\": 4,\n          \"max\": 20,\n          \"unit\": \"px\"\n        },\n        \"height\": {\n          \"default\": 16,\n          \"description\": \"The height of the handle.\",\n          \"min\": 8,\n          \"max\": 26,\n          \"unit\": \"px\"\n        },\n        \"gripLineLength\": {\n          \"default\": 8,\n          \"description\": \"The length of the handle's grip lines.\",\n          \"min\": 4,\n          \"max\": 16,\n          \"unit\": \"px\"\n        },\n        \"gripLineGap\": {\n          \"default\": 2,\n          \"description\": \"The distance between the handle's grip lines.\",\n          \"min\": 1,\n          \"max\": 8,\n          \"unit\": \"px\"\n        }\n      }\n    }\n  },\n  \"axis\": {\n    \"meta\": {\n      \"displayName\": \"Axis Configuration\",\n      \"description\": \"Configuration for axes in cartesian charts.\"\n    },\n    \"type\": {\n      \"type\": \"string\",\n      \"description\": \"The type of the axis.\",\n      \"options\": [\n        \"category\",\n        \"number\",\n        \"log\",\n        \"time\"\n      ]\n    },\n    \"position\": {\n      \"type\": \"string\",\n      \"description\": \"The position on the chart where the axis should be rendered.\",\n      \"options\": [\n        \"top\",\n        \"right\",\n        \"bottom\",\n        \"left\"\n      ]\n    },\n    \"thickness\": {\n      \"type\": \"number\",\n      \"description\": \"If set to a non-zero value, the axis will have the specified thickness regardless of label size.\",\n      \"default\": 0\n    },\n    \"nice\": {\n      \"type\": \"boolean\",\n      \"default\": true,\n      \"description\": \"If 'true', the range will be rounded up to ensure nice equal spacing between the ticks. Applies to continuous axes only ('number', 'time').\"\n    },\n    \"base\": {\n      \"type\": \"number\",\n      \"default\": 10,\n      \"description\": \"The base of the logarithm used by the 'log' axis.\"\n    },\n    \"min\": {\n      \"type\": \"number\",\n      \"description\": \"User override for the automatically determinted min value (based on series data). Only applied to \\\"number\\\" axes.\"\n    },\n    \"max\": {\n      \"type\": \"number\",\n      \"description\": \"User override for the automatically determinted max value (based on series data). Only applied to \\\"number\\\" axes.\"\n    },\n    \"title\": {\n      \"meta\": {\n        \"description\": \"Configuration for the title shown next to the axis.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not the axis title should be shown.\"\n      },\n      \"text\": {\n        \"type\": \"string\",\n        \"default\": \"Axis Title\",\n        \"description\": \"The text to show in the axis title.\"\n      },\n      \"color\": {\n        \"default\": \"#000000\",\n        \"description\": \"The colour to use for the axis title.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the axis title.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"bold\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the axis title.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 14,\n        \"description\": \"The font size in pixels to use for the axis title.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the axis title.\"\n      }\n    },\n    \"line\": {\n      \"meta\": {\n        \"description\": \"Configuration for the axis line.\"\n      },\n      \"width\": {\n        \"default\": 1,\n        \"description\": \"The width in pixels of the axis line.\",\n        \"min\": 0,\n        \"max\": 10,\n        \"unit\": \"px\"\n      },\n      \"color\": {\n        \"default\": \"rgba(195, 195, 195, 1)\",\n        \"description\": \"The colour of the axis line.\"\n      }\n    },\n    \"tick\": {\n      \"meta\": {\n        \"description\": \"Configuration for the axis ticks.\"\n      },\n      \"width\": {\n        \"default\": 1,\n        \"description\": \"The width in pixels of the axis ticks (and corresponding grid line).\",\n        \"min\": 0,\n        \"max\": 10,\n        \"unit\": \"px\"\n      },\n      \"size\": {\n        \"default\": 6,\n        \"description\": \"The length in pixels of the axis ticks.\",\n        \"min\": 0,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"color\": {\n        \"default\": \"rgba(195, 195, 195, 1)\",\n        \"description\": \"The colour of the axis ticks.\"\n      },\n      \"count\": {\n        \"default\": 10,\n        \"description\": \"A hint of how many ticks to use across an axis. The axis is not guaranteed to use exactly this number of ticks, but will try to use a number of ticks that is close to the number given.<br/><br/>If the axis is a `time` axis, the following intervals from the `agCharts.time` namespace can be used: `millisecond, second, minute, hour, day, sunday, monday, tuesday, wednesday, thursday, friday, saturday, month, year, utcMinute, utcHour, utcDay, utcMonth, utcYear`. And derived intervals can be created by using the `every` method on the default ones. For example, `agCharts.time.month.every(2)` will return a derived interval that will make the axis place ticks for every other month.<br/><br/>\",\n        \"min\": 0,\n        \"max\": 50\n      }\n    },\n    \"label\": {\n      \"meta\": {\n        \"description\": \"Configuration for the axis labels, shown next to the ticks.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the labels.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the labels.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 12,\n        \"description\": \"The font size in pixels to use for the labels.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the labels.\"\n      },\n      \"color\": {\n        \"default\": \"#000000\",\n        \"description\": \"The colour to use for the labels.\"\n      },\n      \"padding\": {\n        \"default\": 5,\n        \"description\": \"Padding in pixels between the axis label and the tick.\",\n        \"min\": 0,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"rotation\": {\n        \"default\": 0,\n        \"description\": \"The rotation of the axis labels in degrees. Note: for integrated charts the default is 335 degrees, unless the axis shows grouped or default categories (indexes). The first row of labels in a grouped category axis is rotated perpendicular to the axis line.\",\n        \"min\": -359,\n        \"max\": 359,\n        \"unit\": \"&deg;\"\n      },\n      \"format\": {\n        \"type\": \"string\",\n        \"description\": \"Format string used when rendering labels for time axes. For more information on the structure of the string, <a href=\\\"../axes/#time-label-format-string\\\">click here</a>.\"\n      },\n      \"formatter\": {\n        \"type\": {\n          \"parameters\": {\n            \"value\": \"any\",\n            \"index\": \"number\",\n            \"fractionDigits\": \"number\",\n            \"formatter\": \"(x: any) => string\"\n          },\n          \"returnType\": \"string\"\n        },\n        \"description\": \"Function used to render axis labels. If <code>value</code> is a number, <code>fractionDigits</code> will also be provided, which indicates the number of fractional digits used in the step between ticks; for example, a tick step of <code>0.0005</code> would have <code>fractionDigits</code> set to <code>4</code>.\"\n      }\n    },\n    \"gridStyle\": {\n      \"meta\": {\n        \"requiresWholeObject\": true,\n        \"description\": \"Configuration of the lines used to form the grid in the chart area.\"\n      },\n      \"stroke\": {\n        \"default\": \"rgba(195, 195, 195, 1)\",\n        \"description\": \"The colour of the grid line.\"\n      },\n      \"lineDash\": {\n        \"default\": [\n          4,\n          2\n        ],\n        \"type\": \"number[]\",\n        \"description\": \"Defines how the gridlines are rendered. Every number in the array specifies the length in pixels of alternating dashes and gaps. For example, <code>[6, 3]</code> means dashes with a length of <code>6</code> pixels with gaps between of <code>3</code> pixels.\"\n      }\n    }\n  },\n  \"bar\": {\n    \"meta\": {\n      \"displayName\": \"Bar/Column Series Configuration\",\n      \"description\": \"Configuration for bar/column series.\"\n    },\n    \"xKey\": {\n      \"type\": \"string\",\n      \"isRequired\": true,\n      \"description\": \"The key to use to retrieve x-values from the data.\"\n    },\n    \"xName\": {\n      \"type\": \"string\",\n      \"description\": \"A human-readable description of the x-values. If supplied, this will be shown in the default tooltip and passed to the tooltip renderer as one of the parameters.\"\n    },\n    \"yKeys\": {\n      \"type\": \"string[]\",\n      \"isRequired\": true,\n      \"description\": \"The keys to use to retrieve y-values from the data.\"\n    },\n    \"yNames\": {\n      \"type\": \"string[]\",\n      \"description\": \"Human-readable descriptions of the y-values. If supplied, a corresponding `yName` will be shown in the default tooltip and passed to the tooltip renderer as one of the parameters.\"\n    },\n    \"data\": {\n      \"type\": \"object[]\",\n      \"isRequired\": true,\n      \"description\": \"The data to use when rendering the series. If this is not supplied, data must be set on the chart instead.\"\n    },\n    \"visible\": {\n      \"default\": true,\n      \"description\": \"Whether or not to display the series.\"\n    },\n    \"showInLegend\": {\n      \"default\": true,\n      \"description\": \"Whether or not to include the series in the legend.\"\n    },\n    \"cursor\": {\n      \"type\": \"string\",\n      \"default\": \"default\",\n      \"description\": \"The cursor to use for hovered bars/columns. This config is identical to the CSS `cursor` property.\"\n    },\n    \"tooltip\": {\n      \"meta\": {\n        \"description\": \"Series-specific tooltip configuration.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not to show tooltips when the series are hovered over.\"\n      },\n      \"renderer\": {\n        \"type\": {\n          \"parameters\": {\n            \"datum\": \"any\",\n            \"title?\": \"string\",\n            \"color?\": \"string\",\n            \"xKey\": \"string\",\n            \"xValue\": \"any\",\n            \"xName?\": \"string\",\n            \"yKey\": \"string\",\n            \"yValue\": \"any\",\n            \"yName?\": \"string\"\n          },\n          \"returnType\": \"string\"\n        },\n        \"description\": \"Function used to create the content for tooltips.\"\n      }\n    },\n    \"grouped\": {\n      \"default\": false,\n      \"description\": \"Whether to show different y-values as separate bars (grouped) or not (stacked).\"\n    },\n    \"normalizedTo\": {\n      \"type\": \"number\",\n      \"description\": \"The number to normalise the bar stacks to. Has no effect when <code>grouped</code> is <code>true</code>. For example, if <code>normalizedTo</code> is set to <code>100</code>, the bar stacks will all be scaled proportionally so that each of their totals is 100.\",\n      \"min\": 1,\n      \"max\": 100\n    },\n    \"fills\": {\n      \"type\": \"string[]\",\n      \"default\": [\n        \"#f3622d\",\n        \"#fba71b\",\n        \"#57b757\",\n        \"#41a9c9\",\n        \"#4258c9\",\n        \"#9a42c8\",\n        \"#c84164\",\n        \"#888888\"\n      ],\n      \"description\": \"The colours to cycle through for the fills of the bars.\"\n    },\n    \"fillOpacity\": {\n      \"default\": 1,\n      \"description\": \"The opacity of the fill for the bars.\",\n      \"min\": 0,\n      \"max\": 1,\n      \"step\": 0.05\n    },\n    \"strokes\": {\n      \"type\": \"string[]\",\n      \"default\": [\n        \"#aa4520\",\n        \"#b07513\",\n        \"#3d803d\",\n        \"#2d768d\",\n        \"#2e3e8d\",\n        \"#6c2e8c\",\n        \"#8c2d46\",\n        \"#5f5f5f\"\n      ],\n      \"description\": \"The colours to cycle through for the strokes of the bars.\"\n    },\n    \"strokeOpacity\": {\n      \"default\": 1,\n      \"description\": \"The opacity of the stroke for the bars.\",\n      \"min\": 0,\n      \"max\": 1,\n      \"step\": 0.05\n    },\n    \"strokeWidth\": {\n      \"default\": 1,\n      \"description\": \"The width in pixels of the stroke for the bars.\",\n      \"min\": 0,\n      \"max\": 20,\n      \"unit\": \"px\"\n    },\n    \"highlightStyle\": {\n      \"meta\": {\n        \"requiresWholeObject\": true,\n        \"description\": \"Configuration for the highlighting used when the bars are hovered over.\"\n      },\n      \"fill\": {\n        \"default\": \"yellow\",\n        \"description\": \"The fill colour of the bars when hovered over. Use `undefined` for no highlight.\"\n      },\n      \"stroke\": {\n        \"type\": \"string\",\n        \"description\": \"The colour of the stroke around the bars when hovered over. Use `undefined` for no highlight.\"\n      }\n    },\n    \"shadow\": {\n      \"meta\": {\n        \"description\": \"Configuration for the shadow used behind the chart series.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not the shadow is visible.\"\n      },\n      \"color\": {\n        \"default\": \"rgba(0, 0, 0, 0.5)\",\n        \"description\": \"The colour of the shadow.\"\n      },\n      \"xOffset\": {\n        \"default\": 0,\n        \"description\": \"The horizontal offset in pixels for the shadow.\",\n        \"min\": -20,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"yOffset\": {\n        \"default\": 0,\n        \"description\": \"The vertical offset in pixels for the shadow.\",\n        \"min\": -20,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"blur\": {\n        \"default\": 5,\n        \"description\": \"The radius of the shadow's blur, given in pixels.\",\n        \"min\": 0,\n        \"max\": 20,\n        \"unit\": \"px\"\n      }\n    },\n    \"lineDash\": {\n      \"default\": [],\n      \"type\": \"number[]\",\n      \"description\": \"Defines how the bar/column strokes are rendered. Every number in the array specifies the length in pixels of alternating dashes and gaps. For example, <code>[6, 3]</code> means dashes with a length of <code>6</code> pixels with gaps between of <code>3</code> pixels.\"\n    },\n    \"lineDashOffset\": {\n      \"default\": 0,\n      \"type\": \"number\",\n      \"description\": \"The initial offset of the dashed line in pixels.\",\n      \"min\": 0,\n      \"max\": 200,\n      \"unit\": \"px\"\n    },\n    \"label\": {\n      \"meta\": {\n        \"description\": \"Configuration for the labels shown on bars.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not the labels should be shown.\"\n      },\n      \"placement\": {\n        \"default\": \"inside\",\n        \"description\": \"Where to render series labels relative to the segments.\",\n        \"options\": [\n          \"inside\",\n          \"outside\"\n        ]\n      },\n      \"color\": {\n        \"default\": \"rgba(70, 70, 70, 1)\",\n        \"description\": \"The colour to use for the labels.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the labels.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the labels.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 12,\n        \"description\": \"The font size in pixels to use for the labels.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the labels.\"\n      },\n      \"formatter\": {\n        \"type\": {\n          \"parameters\": {\n            \"value\": \"number\"\n          },\n          \"returnType\": \"string\"\n        },\n        \"description\": \"Function used to turn 'yKey' values into text to be displayed by a label. Be default the values are simply stringified.\"\n      }\n    },\n    \"formatter\": {\n      \"type\": {\n        \"parameters\": {\n          \"datum\": \"any\",\n          \"fill\": \"string\",\n          \"stroke\": \"string\",\n          \"strokeWidth\": \"number\",\n          \"highlighted\": \"boolean\",\n          \"xKey\": \"string\",\n          \"yKey\": \"string\"\n        },\n        \"returnType\": {\n          \"fill\": \"string\",\n          \"stroke\": \"string\",\n          \"strokeWidth\": \"number\"\n        }\n      },\n      \"description\": \"Function used to return formatting for individual bars/columns, based on the given parameters. If the current bar/column is highlighted, the <code>highlighted</code> property will be set to <code>true</code>; make sure to check this if you want to differentiate between the highlighted and un-highlighted states.\"\n    },\n    \"listeners\": {\n      \"meta\": {\n        \"description\": \"A map of event names to event listeners.\"\n      },\n      \"nodeClick\": {\n        \"type\": {\n          \"parameters\": {\n            \"type\": \"'nodeClick'\",\n            \"series\": \"BarSeries\",\n            \"datum\": \"any\",\n            \"xKey\": \"string\",\n            \"yKey\": \"string\"\n          },\n          \"returnType\": \"any\"\n        },\n        \"description\": \"The listener to call when a bar/column node is clicked.\"\n      }\n    }\n  },\n  \"line\": {\n    \"meta\": {\n      \"displayName\": \"Line Series Configuration\",\n      \"description\": \"Configuration for line series.\"\n    },\n    \"xKey\": {\n      \"type\": \"string\",\n      \"isRequired\": true,\n      \"description\": \"The key to use to retrieve x-values from the data.\"\n    },\n    \"xName\": {\n      \"type\": \"string\",\n      \"description\": \"A human-readable description of the x-values. If supplied, this will be shown in the default tooltip and passed to the tooltip renderer as one of the parameters.\"\n    },\n    \"yKey\": {\n      \"type\": \"string\",\n      \"isRequired\": true,\n      \"description\": \"The key to use to retrieve y-values from the data.\"\n    },\n    \"yName\": {\n      \"type\": \"string\",\n      \"description\": \"A human-readable description of the y-values. If supplied, this will be shown in the default tooltip and passed to the tooltip renderer as one of the parameters.\"\n    },\n    \"data\": {\n      \"type\": \"object[]\",\n      \"isRequired\": true,\n      \"description\": \"The data to use when rendering the series. If this is not supplied, data must be set on the chart instead.\"\n    },\n    \"visible\": {\n      \"default\": true,\n      \"description\": \"Whether or not to display the series.\"\n    },\n    \"showInLegend\": {\n      \"default\": true,\n      \"description\": \"Whether or not to include the series in the legend.\"\n    },\n    \"cursor\": {\n      \"type\": \"string\",\n      \"default\": \"default\",\n      \"description\": \"The cursor to use for hovered line markers. This config is identical to the CSS `cursor` property.\"\n    },\n    \"tooltip\": {\n      \"meta\": {\n        \"description\": \"Series-specific tooltip configuration.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not to show tooltips when the series are hovered over.\"\n      },\n      \"renderer\": {\n        \"type\": {\n          \"parameters\": {\n            \"datum\": \"any\",\n            \"title?\": \"string\",\n            \"color?\": \"string\",\n            \"xKey\": \"string\",\n            \"xValue\": \"any\",\n            \"xName?\": \"string\",\n            \"yKey\": \"string\",\n            \"yValue\": \"any\",\n            \"yName?\": \"string\"\n          },\n          \"returnType\": \"string\"\n        },\n        \"description\": \"Function used to create the content for tooltips.\"\n      }\n    },\n    \"title\": {\n      \"type\": \"string\",\n      \"description\": \"The title to use for the series. Defaults to <code>yName</code> if it exists, or <code>yKey</code> if not.\"\n    },\n    \"stroke\": {\n      \"default\": \"#aa4520\",\n      \"description\": \"The colour of the stroke for the lines.\"\n    },\n    \"strokeOpacity\": {\n      \"default\": 1,\n      \"description\": \"The opacity of the stroke for the lines.\",\n      \"min\": 0,\n      \"max\": 1,\n      \"step\": 0.05\n    },\n    \"strokeWidth\": {\n      \"default\": 1,\n      \"description\": \"The width in pixels of the stroke for the lines.\",\n      \"min\": 0,\n      \"max\": 20,\n      \"unit\": \"px\"\n    },\n    \"marker\": {\n      \"meta\": {\n        \"description\": \"Configuration for the markers used in the series.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not to show markers.\"\n      },\n      \"shape\": {\n        \"type\": \"string | Marker\",\n        \"default\": \"circle\",\n        \"description\": \"The shape to use for the markers. You can also supply a custom marker by providing a <code>Marker</code> subclass.\",\n        \"options\": [\n          \"circle\",\n          \"cross\",\n          \"diamond\",\n          \"plus\",\n          \"square\",\n          \"triangle\"\n        ]\n      },\n      \"size\": {\n        \"default\": 8,\n        \"description\": \"The size in pixels of the markers.\",\n        \"min\": 1,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"maxSize\": {\n        \"default\": 30,\n        \"description\": \"For series where the size of the marker is determined by the data, this determines the largest size a marker can be in pixels.\",\n        \"min\": 1,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"fill\": {\n        \"type\": \"string\",\n        \"description\": \"The colour to use for marker fills. If this is not specified, the markers will take their fill from the series.\"\n      },\n      \"stroke\": {\n        \"type\": \"string\",\n        \"description\": \"The colour to use for marker strokes. If this is not specified, the markers will take their stroke from the series.\"\n      },\n      \"strokeWidth\": {\n        \"type\": \"number\",\n        \"description\": \"The width in pixels of the marker stroke. If this is not specified, the markers will take their stroke width from the series.\",\n        \"min\": 0,\n        \"max\": 10,\n        \"unit\": \"px\"\n      },\n      \"formatter\": {\n        \"type\": {\n          \"parameters\": {\n            \"datum\": \"any\",\n            \"fill\": \"string\",\n            \"stroke\": \"string\",\n            \"strokeWidth\": \"number\",\n            \"size\": \"number\",\n            \"highlighted\": \"boolean\",\n            \"xKey\": \"string\",\n            \"yKey\": \"string\"\n          },\n          \"returnType\": {\n            \"fill\": \"string\",\n            \"stroke\": \"string\",\n            \"strokeWidth\": \"number\",\n            \"size\": \"number\"\n          }\n        },\n        \"description\": \"Function used to return formatting for individual markers, based on the supplied information. If the current marker is highlighted, the <code>highlighted</code> property will be set to <code>true</code>; make sure to check this if you want to differentiate between the highlighted and un-highlighted states.\"\n      }\n    },\n    \"label\": {\n      \"meta\": {\n        \"description\": \"Configuration for the labels shown on top of data points.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not the labels should be shown.\"\n      },\n      \"color\": {\n        \"default\": \"rgba(70, 70, 70, 1)\",\n        \"description\": \"The colour to use for the labels.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the labels.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the labels.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 12,\n        \"description\": \"The font size in pixels to use for the labels.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the labels.\"\n      },\n      \"formatter\": {\n        \"type\": {\n          \"parameters\": {\n            \"value\": \"any\"\n          },\n          \"returnType\": \"string\"\n        },\n        \"description\": \"Function used to turn 'yKey' values into text to be displayed by a label. Be default the values are simply stringified.\"\n      }\n    },\n    \"highlightStyle\": {\n      \"meta\": {\n        \"requiresWholeObject\": true,\n        \"description\": \"Configuration for the highlighting used when the markers are hovered over.\"\n      },\n      \"fill\": {\n        \"default\": \"yellow\",\n        \"description\": \"The fill colour of the markers when hovered over. Use `undefined` for no highlight.\"\n      },\n      \"stroke\": {\n        \"type\": \"string\",\n        \"description\": \"The colour of the stroke around the markers when hovered over. Use `undefined` for no highlight.\"\n      }\n    },\n    \"lineDash\": {\n      \"default\": [],\n      \"type\": \"number[]\",\n      \"description\": \"Defines how the line stroke is rendered. Every number in the array specifies the length in pixels of alternating dashes and gaps. For example, <code>[6, 3]</code> means dashes with a length of <code>6</code> pixels with gaps between of <code>3</code> pixels.\"\n    },\n    \"lineDashOffset\": {\n      \"default\": 0,\n      \"type\": \"number\",\n      \"description\": \"The initial offset of the dashed line in pixels.\",\n      \"min\": 0,\n      \"max\": 200,\n      \"unit\": \"px\"\n    },\n    \"listeners\": {\n      \"meta\": {\n        \"description\": \"A map of event names to event listeners.\"\n      },\n      \"nodeClick\": {\n        \"type\": {\n          \"parameters\": {\n            \"type\": \"'nodeClick'\",\n            \"series\": \"LineSeries\",\n            \"datum\": \"any\",\n            \"xKey\": \"string\",\n            \"yKey\": \"string\"\n          },\n          \"returnType\": \"any\"\n        },\n        \"description\": \"The listener to call when a line series node (marker) is clicked.\"\n      }\n    }\n  },\n  \"area\": {\n    \"meta\": {\n      \"displayName\": \"Area Series Configuration\",\n      \"description\": \"Configuration for area series.\"\n    },\n    \"xKey\": {\n      \"type\": \"string\",\n      \"isRequired\": true,\n      \"description\": \"The key to use to retrieve x-values from the data.\"\n    },\n    \"xName\": {\n      \"type\": \"string\",\n      \"description\": \"A human-readable description of the x-values. If supplied, this will be shown in the default tooltip and passed to the tooltip renderer as one of the parameters.\"\n    },\n    \"yKeys\": {\n      \"type\": \"string[]\",\n      \"isRequired\": true,\n      \"description\": \"The keys to use to retrieve y-values from the data.\"\n    },\n    \"yNames\": {\n      \"type\": \"string[]\",\n      \"description\": \"Human-readable descriptions of the y-values. If supplied, a corresponding `yName` will be shown in the default tooltip and passed to the tooltip renderer as one of the parameters.\"\n    },\n    \"data\": {\n      \"type\": \"object[]\",\n      \"isRequired\": true,\n      \"description\": \"The data to use when rendering the series. If this is not supplied, data must be set on the chart instead.\"\n    },\n    \"visible\": {\n      \"default\": true,\n      \"description\": \"Whether or not to display the series.\"\n    },\n    \"showInLegend\": {\n      \"default\": true,\n      \"description\": \"Whether or not to include the series in the legend.\"\n    },\n    \"cursor\": {\n      \"type\": \"string\",\n      \"default\": \"default\",\n      \"description\": \"The cursor to use for hovered area markers. This config is identical to the CSS `cursor` property.\"\n    },\n    \"tooltip\": {\n      \"meta\": {\n        \"description\": \"Series-specific tooltip configuration.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not to show tooltips when the series are hovered over.\"\n      },\n      \"renderer\": {\n        \"type\": {\n          \"parameters\": {\n            \"datum\": \"any\",\n            \"title?\": \"string\",\n            \"color?\": \"string\",\n            \"xKey\": \"string\",\n            \"xValue\": \"any\",\n            \"xName?\": \"string\",\n            \"yKey\": \"string\",\n            \"yValue\": \"any\",\n            \"yName?\": \"string\"\n          },\n          \"returnType\": \"string\"\n        },\n        \"description\": \"Function used to create the content for tooltips.\"\n      }\n    },\n    \"normalizedTo\": {\n      \"type\": \"number\",\n      \"description\": \"The number to normalise the area stacks to. For example, if <code>normalizedTo</code> is set to <code>100</code>, the stacks will all be scaled proportionally so that their total height is always 100.\",\n      \"min\": 1,\n      \"max\": 100\n    },\n    \"fills\": {\n      \"type\": \"string[]\",\n      \"default\": [\n        \"#f3622d\",\n        \"#fba71b\",\n        \"#57b757\",\n        \"#41a9c9\",\n        \"#4258c9\",\n        \"#9a42c8\",\n        \"#c84164\",\n        \"#888888\"\n      ],\n      \"description\": \"The colours to cycle through for the fills of the areas.\"\n    },\n    \"fillOpacity\": {\n      \"default\": 1,\n      \"description\": \"The opacity of the fill for the areas.\",\n      \"min\": 0,\n      \"max\": 1,\n      \"step\": 0.05\n    },\n    \"strokes\": {\n      \"type\": \"string[]\",\n      \"default\": [\n        \"#aa4520\",\n        \"#b07513\",\n        \"#3d803d\",\n        \"#2d768d\",\n        \"#2e3e8d\",\n        \"#6c2e8c\",\n        \"#8c2d46\",\n        \"#5f5f5f\"\n      ],\n      \"description\": \"The colours to cycle through for the strokes of the areas.\"\n    },\n    \"strokeOpacity\": {\n      \"default\": 1,\n      \"description\": \"The opacity of the stroke for the areas.\",\n      \"min\": 0,\n      \"max\": 1,\n      \"step\": 0.05\n    },\n    \"strokeWidth\": {\n      \"default\": 1,\n      \"description\": \"The width in pixels of the stroke for the areas.\",\n      \"min\": 0,\n      \"max\": 20,\n      \"unit\": \"px\"\n    },\n    \"marker\": {\n      \"meta\": {\n        \"description\": \"Configuration for the markers used in the series.\"\n      },\n      \"enabled\": {\n        \"default\": false,\n        \"description\": \"Whether or not to show markers.\"\n      },\n      \"shape\": {\n        \"type\": \"string | Marker\",\n        \"default\": \"circle\",\n        \"description\": \"The shape to use for the markers. You can also supply a custom marker by providing a <code>Marker</code> subclass.\",\n        \"options\": [\n          \"circle\",\n          \"cross\",\n          \"diamond\",\n          \"plus\",\n          \"square\",\n          \"triangle\"\n        ]\n      },\n      \"size\": {\n        \"default\": 8,\n        \"description\": \"The size in pixels of the markers.\",\n        \"min\": 1,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"maxSize\": {\n        \"default\": 30,\n        \"description\": \"For series where the size of the marker is determined by the data, this determines the largest size a marker can be in pixels.\",\n        \"min\": 1,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"fill\": {\n        \"type\": \"string\",\n        \"description\": \"The colour to use for marker fills. If this is not specified, the markers will take their fill from the series.\"\n      },\n      \"stroke\": {\n        \"type\": \"string\",\n        \"description\": \"The colour to use for marker strokes. If this is not specified, the markers will take their stroke from the series.\"\n      },\n      \"strokeWidth\": {\n        \"type\": \"number\",\n        \"description\": \"The width in pixels of the marker stroke. If this is not specified, the markers will take their stroke width from the series.\",\n        \"min\": 0,\n        \"max\": 10,\n        \"unit\": \"px\"\n      },\n      \"formatter\": {\n        \"type\": {\n          \"parameters\": {\n            \"datum\": \"any\",\n            \"fill\": \"string\",\n            \"stroke\": \"string\",\n            \"strokeWidth\": \"number\",\n            \"size\": \"number\",\n            \"highlighted\": \"boolean\",\n            \"xKey\": \"string\",\n            \"yKey\": \"string\"\n          },\n          \"returnType\": {\n            \"fill\": \"string\",\n            \"stroke\": \"string\",\n            \"strokeWidth\": \"number\",\n            \"size\": \"number\"\n          }\n        },\n        \"description\": \"Function used to return formatting for individual markers, based on the supplied information. If the current marker is highlighted, the <code>highlighted</code> property will be set to <code>true</code>; make sure to check this if you want to differentiate between the highlighted and un-highlighted states.\"\n      }\n    },\n    \"label\": {\n      \"meta\": {\n        \"description\": \"Configuration for the labels shown on top of data points.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not the labels should be shown.\"\n      },\n      \"color\": {\n        \"default\": \"rgba(70, 70, 70, 1)\",\n        \"description\": \"The colour to use for the labels.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the labels.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the labels.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 12,\n        \"description\": \"The font size in pixels to use for the labels.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the labels.\"\n      },\n      \"formatter\": {\n        \"type\": {\n          \"parameters\": {\n            \"value\": \"any\"\n          },\n          \"returnType\": \"string\"\n        },\n        \"description\": \"Function used to turn 'yKey' values into text to be displayed by a label. Be default the values are simply stringified.\"\n      }\n    },\n    \"highlightStyle\": {\n      \"meta\": {\n        \"requiresWholeObject\": true,\n        \"description\": \"Configuration for the highlighting used when the markers are hovered over.\"\n      },\n      \"fill\": {\n        \"default\": \"yellow\",\n        \"description\": \"The fill colour of the markers when hovered over. Use `undefined` for no highlight.\"\n      },\n      \"stroke\": {\n        \"type\": \"string\",\n        \"description\": \"The colour of the stroke around the markers when hovered over. Use `undefined` for no highlight.\"\n      }\n    },\n    \"lineDash\": {\n      \"default\": [],\n      \"type\": \"number[]\",\n      \"description\": \"Defines how the area strokes are rendered. Every number in the array specifies the length in pixels of alternating dashes and gaps. For example, <code>[6, 3]</code> means dashes with a length of <code>6</code> pixels with gaps between of <code>3</code> pixels.\"\n    },\n    \"lineDashOffset\": {\n      \"default\": 0,\n      \"type\": \"number\",\n      \"description\": \"The initial offset of the dashed line in pixels.\",\n      \"min\": 0,\n      \"max\": 200,\n      \"unit\": \"px\"\n    },\n    \"shadow\": {\n      \"meta\": {\n        \"description\": \"Configuration for the shadow used behind the chart series.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not the shadow is visible.\"\n      },\n      \"color\": {\n        \"default\": \"rgba(0, 0, 0, 0.5)\",\n        \"description\": \"The colour of the shadow.\"\n      },\n      \"xOffset\": {\n        \"default\": 0,\n        \"description\": \"The horizontal offset in pixels for the shadow.\",\n        \"min\": -20,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"yOffset\": {\n        \"default\": 0,\n        \"description\": \"The vertical offset in pixels for the shadow.\",\n        \"min\": -20,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"blur\": {\n        \"default\": 5,\n        \"description\": \"The radius of the shadow's blur, given in pixels.\",\n        \"min\": 0,\n        \"max\": 20,\n        \"unit\": \"px\"\n      }\n    }\n  },\n  \"scatter\": {\n    \"meta\": {\n      \"displayName\": \"Scatter/Bubble Series Configuration\",\n      \"description\": \"Configuration for scatter/bubble series.\"\n    },\n    \"xKey\": {\n      \"type\": \"string\",\n      \"isRequired\": true,\n      \"description\": \"The key to use to retrieve x-values from the data.\"\n    },\n    \"xName\": {\n      \"type\": \"string\",\n      \"description\": \"A human-readable description of the x-values. If supplied, this will be shown in the default tooltip and passed to the tooltip renderer as one of the parameters.\"\n    },\n    \"yKey\": {\n      \"type\": \"string\",\n      \"isRequired\": true,\n      \"description\": \"The key to use to retrieve y-values from the data.\"\n    },\n    \"yName\": {\n      \"type\": \"string\",\n      \"description\": \"A human-readable description of the y-values. If supplied, this will be shown in the default tooltip and passed to the tooltip renderer as one of the parameters.\"\n    },\n    \"sizeKey\": {\n      \"type\": \"string\",\n      \"description\": \"The key to use to retrieve size values from the data, used to control the size of the markers in bubble charts.\"\n    },\n    \"sizeName\": {\n      \"type\": \"string\",\n      \"description\": \"A human-readable description of the size values. If supplied, this will be shown in the default tooltip and passed to the tooltip renderer as one of the parameters.\"\n    },\n    \"labelKey\": {\n      \"type\": \"string\",\n      \"description\": \"The key to use to retrieve values from the data to use as labels for the markers.\"\n    },\n    \"labelName\": {\n      \"type\": \"string\",\n      \"description\": \"A human-readable description of the label values. If supplied, this will be shown in the default tooltip and passed to the tooltip renderer as one of the parameters.\"\n    },\n    \"data\": {\n      \"type\": \"object[]\",\n      \"isRequired\": true,\n      \"description\": \"The data to use when rendering the series. If this is not supplied, data must be set on the chart instead.\"\n    },\n    \"visible\": {\n      \"default\": true,\n      \"description\": \"Whether or not to display the series.\"\n    },\n    \"showInLegend\": {\n      \"default\": true,\n      \"description\": \"Whether or not to include the series in the legend.\"\n    },\n    \"cursor\": {\n      \"type\": \"string\",\n      \"default\": \"default\",\n      \"description\": \"The cursor to use for hovered scatter markers. This config is identical to the CSS `cursor` property.\"\n    },\n    \"tooltip\": {\n      \"meta\": {\n        \"description\": \"Series-specific tooltip configuration.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not to show tooltips when the series are hovered over.\"\n      },\n      \"renderer\": {\n        \"type\": {\n          \"parameters\": {\n            \"datum\": \"any\",\n            \"title?\": \"string\",\n            \"color?\": \"string\",\n            \"xKey\": \"string\",\n            \"xValue\": \"any\",\n            \"xName?\": \"string\",\n            \"yKey\": \"string\",\n            \"yValue\": \"any\",\n            \"yName?\": \"string\",\n            \"sizeKey?\": \"string\",\n            \"sizeName?\": \"string\",\n            \"labelKey?\": \"string\",\n            \"labelName?\": \"string\"\n          },\n          \"returnType\": \"string\"\n        },\n        \"description\": \"Function used to create the content for tooltips.\"\n      }\n    },\n    \"title\": {\n      \"type\": \"string\",\n      \"description\": \"The title to use for the series. Defaults to <code>yName</code> if it exists, or <code>yKey</code> if not.\"\n    },\n    \"fill\": {\n      \"default\": \"#f3622d\",\n      \"description\": \"The colour of the fill for the markers.\"\n    },\n    \"fillOpacity\": {\n      \"default\": 1,\n      \"description\": \"The opacity of the fill for the markers.\",\n      \"min\": 0,\n      \"max\": 1,\n      \"step\": 0.05\n    },\n    \"stroke\": {\n      \"default\": \"#aa4520\",\n      \"description\": \"The colour of the stroke for the markers.\"\n    },\n    \"strokeOpacity\": {\n      \"default\": 1,\n      \"description\": \"The opacity of the stroke for the markers.\",\n      \"min\": 0,\n      \"max\": 1,\n      \"step\": 0.05\n    },\n    \"strokeWidth\": {\n      \"default\": 1,\n      \"description\": \"The width in pixels of the stroke for the markers.\",\n      \"min\": 0,\n      \"max\": 20,\n      \"unit\": \"px\"\n    },\n    \"marker\": {\n      \"meta\": {\n        \"description\": \"Configuration for the markers used in the series.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not to show markers.\"\n      },\n      \"shape\": {\n        \"type\": \"string | Marker\",\n        \"default\": \"circle\",\n        \"description\": \"The shape to use for the markers. You can also supply a custom marker by providing a <code>Marker</code> subclass.\",\n        \"options\": [\n          \"circle\",\n          \"cross\",\n          \"diamond\",\n          \"plus\",\n          \"square\",\n          \"triangle\"\n        ]\n      },\n      \"size\": {\n        \"default\": 8,\n        \"description\": \"The size in pixels of the markers.\",\n        \"min\": 1,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"maxSize\": {\n        \"default\": 30,\n        \"description\": \"For series where the size of the marker is determined by the data, this determines the largest size a marker can be in pixels.\",\n        \"min\": 1,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"fill\": {\n        \"type\": \"string\",\n        \"description\": \"The colour to use for marker fills. If this is not specified, the markers will take their fill from the series.\"\n      },\n      \"stroke\": {\n        \"type\": \"string\",\n        \"description\": \"The colour to use for marker strokes. If this is not specified, the markers will take their stroke from the series.\"\n      },\n      \"strokeWidth\": {\n        \"type\": \"number\",\n        \"description\": \"The width in pixels of the marker stroke. If this is not specified, the markers will take their stroke width from the series.\",\n        \"min\": 0,\n        \"max\": 10,\n        \"unit\": \"px\"\n      },\n      \"formatter\": {\n        \"type\": {\n          \"parameters\": {\n            \"datum\": \"any\",\n            \"fill\": \"string\",\n            \"stroke\": \"string\",\n            \"strokeWidth\": \"number\",\n            \"size\": \"number\",\n            \"highlighted\": \"boolean\",\n            \"xKey\": \"string\",\n            \"yKey\": \"string\"\n          },\n          \"returnType\": {\n            \"fill\": \"string\",\n            \"stroke\": \"string\",\n            \"strokeWidth\": \"number\",\n            \"size\": \"number\"\n          }\n        },\n        \"description\": \"Function used to return formatting for individual markers, based on the supplied information. If the current marker is highlighted, the <code>highlighted</code> property will be set to <code>true</code>; make sure to check this if you want to differentiate between the highlighted and un-highlighted states.\"\n      }\n    },\n    \"label\": {\n      \"meta\": {\n        \"description\": \"Configuration for the labels shown on top of data points.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not the labels should be shown. Note: unlike other series where a label is shown for every data point, a scatter series label is only shown if it satisfies the following constraints: it doesn't overlap any markers, it doesn't overlap other labels.\"\n      },\n      \"color\": {\n        \"default\": \"rgba(70, 70, 70, 1)\",\n        \"description\": \"The colour to use for the labels.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the labels.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the labels.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 12,\n        \"description\": \"The font size in pixels to use for the labels.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the labels.\"\n      }\n    },\n    \"highlightStyle\": {\n      \"meta\": {\n        \"requiresWholeObject\": true,\n        \"description\": \"Configuration for the highlighting used when the markers are hovered over.\"\n      },\n      \"fill\": {\n        \"default\": \"yellow\",\n        \"description\": \"The fill colour of the markers when hovered over. Use `undefined` for no highlight.\"\n      },\n      \"stroke\": {\n        \"type\": \"string\",\n        \"description\": \"The colour of the stroke around the markers when hovered over. Use `undefined` for no highlight.\"\n      }\n    },\n    \"listeners\": {\n      \"meta\": {\n        \"description\": \"A map of event names to event listeners.\"\n      },\n      \"nodeClick\": {\n        \"type\": {\n          \"parameters\": {\n            \"type\": \"'nodeClick'\",\n            \"series\": \"ScatterSeries\",\n            \"datum\": \"any\",\n            \"xKey\": \"string\",\n            \"yKey\": \"string\",\n            \"sizeKey?\": \"string\"\n          },\n          \"returnType\": \"any\"\n        },\n        \"description\": \"The listener to call when a scatter series node (marker) is clicked.\"\n      }\n    }\n  },\n  \"pie\": {\n    \"meta\": {\n      \"displayName\": \"Pie/Doughnut Series Configuration\",\n      \"description\": \"Configuration for pie/doughnut series.\"\n    },\n    \"angleKey\": {\n      \"type\": \"string\",\n      \"isRequired\": true,\n      \"description\": \"The key to use to retrieve angle values from the data.\"\n    },\n    \"angleName\": {\n      \"type\": \"string\",\n      \"description\": \"A human-readable description of the angle values. If supplied, this will be passed to the tooltip renderer as one of the parameters.\"\n    },\n    \"labelKey\": {\n      \"type\": \"string\",\n      \"isRequired\": true,\n      \"description\": \"The key to use to retrieve label values from the data.\"\n    },\n    \"labelName\": {\n      \"type\": \"string\",\n      \"description\": \"A human-readable description of the label values. If supplied, this will be passed to the tooltip renderer as one of the parameters.\"\n    },\n    \"radiusKey\": {\n      \"type\": \"string\",\n      \"description\": \"The key to use to retrieve radius values from the data.\"\n    },\n    \"radiusName\": {\n      \"type\": \"string\",\n      \"description\": \"A human-readable description of the radius values. If supplied, this will be passed to the tooltip renderer as one of the parameters.\"\n    },\n    \"data\": {\n      \"type\": \"object[]\",\n      \"isRequired\": true,\n      \"description\": \"The data to use when rendering the series. If this is not supplied, data must be set on the chart instead.\"\n    },\n    \"visible\": {\n      \"default\": true,\n      \"description\": \"Whether or not to display the series.\"\n    },\n    \"showInLegend\": {\n      \"default\": true,\n      \"description\": \"Whether or not to include the series in the legend.\"\n    },\n    \"cursor\": {\n      \"type\": \"string\",\n      \"default\": \"default\",\n      \"description\": \"The cursor to use for hovered pie slices. This config is identical to the CSS `cursor` property.\"\n    },\n    \"tooltip\": {\n      \"meta\": {\n        \"description\": \"Series-specific tooltip configuration.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not to show tooltips when the series are hovered over.\"\n      },\n      \"renderer\": {\n        \"type\": {\n          \"parameters\": {\n            \"datum\": \"any\",\n            \"title?\": \"string\",\n            \"color?\": \"string\",\n            \"angleKey\": \"string\",\n            \"angleValue\": \"any\",\n            \"angleName?\": \"string\",\n            \"radiusKey?\": \"string\",\n            \"radiusValue?\": \"any\",\n            \"radiusName?\": \"string\",\n            \"labelKey?\": \"string\",\n            \"labelName?\": \"string\"\n          },\n          \"returnType\": \"string\"\n        },\n        \"description\": \"Function used to create the content for tooltips.\"\n      }\n    },\n    \"lineDash\": {\n      \"default\": [],\n      \"type\": \"number[]\",\n      \"description\": \"Defines how the pie sector strokes are rendered. Every number in the array specifies the length in pixels of alternating dashes and gaps. For example, <code>[6, 3]</code> means dashes with a length of <code>6</code> pixels with gaps between of <code>3</code> pixels.\"\n    },\n    \"lineDashOffset\": {\n      \"default\": 0,\n      \"type\": \"number\",\n      \"description\": \"The initial offset of the dashed line in pixels.\",\n      \"min\": 0,\n      \"max\": 200,\n      \"unit\": \"px\"\n    },\n    \"rotation\": {\n      \"default\": 0,\n      \"description\": \"The rotation of the pie series in degrees.\",\n      \"min\": -359,\n      \"max\": 359,\n      \"unit\": \"&deg\"\n    },\n    \"innerRadiusOffset\": {\n      \"default\": 0,\n      \"description\": \"The offset in pixels of the inner radius of the series. Used to construct doughnut charts. If this is not given, or a value of zero is given, a pie chart will be rendered.\",\n      \"min\": -50,\n      \"max\": 50,\n      \"unit\": \"px\"\n    },\n    \"outerRadiusOffset\": {\n      \"default\": 0,\n      \"description\": \"The offset in pixels of the outer radius of the series. Used to construct doughnut charts.\",\n      \"min\": -50,\n      \"max\": 50,\n      \"unit\": \"px\"\n    },\n    \"title\": {\n      \"meta\": {\n        \"description\": \"Configuration for the series title.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not the title should be shown.\"\n      },\n      \"text\": {\n        \"type\": \"string\",\n        \"description\": \"The text to show in the title.\"\n      },\n      \"color\": {\n        \"default\": \"#000000\",\n        \"description\": \"The colour to use for the title.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the title.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the title.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 10,\n        \"description\": \"The font size in pixels to use for the title.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the title.\"\n      }\n    },\n    \"fills\": {\n      \"type\": \"string[]\",\n      \"default\": [\n        \"#f3622d\",\n        \"#fba71b\",\n        \"#57b757\",\n        \"#41a9c9\",\n        \"#4258c9\",\n        \"#9a42c8\",\n        \"#c84164\",\n        \"#888888\"\n      ],\n      \"description\": \"The colours to cycle through for the fills of the segments.\"\n    },\n    \"fillOpacity\": {\n      \"default\": 1,\n      \"description\": \"The opacity of the fill for the segments.\",\n      \"min\": 0,\n      \"max\": 1,\n      \"step\": 0.05\n    },\n    \"strokes\": {\n      \"type\": \"string[]\",\n      \"default\": [\n        \"#aa4520\",\n        \"#b07513\",\n        \"#3d803d\",\n        \"#2d768d\",\n        \"#2e3e8d\",\n        \"#6c2e8c\",\n        \"#8c2d46\",\n        \"#5f5f5f\"\n      ],\n      \"description\": \"The colours to cycle through for the strokes of the segments.\"\n    },\n    \"strokeOpacity\": {\n      \"default\": 1,\n      \"description\": \"The opacity of the stroke for the segments.\",\n      \"min\": 0,\n      \"max\": 1,\n      \"step\": 0.05\n    },\n    \"strokeWidth\": {\n      \"default\": 1,\n      \"description\": \"The width in pixels of the stroke for the segments.\",\n      \"min\": 0,\n      \"max\": 20,\n      \"unit\": \"px\"\n    },\n    \"highlightStyle\": {\n      \"meta\": {\n        \"requiresWholeObject\": true,\n        \"description\": \"Configuration for the highlighting used when the segments are hovered over.\"\n      },\n      \"fill\": {\n        \"default\": \"yellow\",\n        \"description\": \"The fill colour of the segments when hovered over. Use `undefined` for no highlight.\"\n      },\n      \"stroke\": {\n        \"type\": \"string\",\n        \"description\": \"The colour of the stroke around the segments when hovered over. Use `undefined` for no highlight.\"\n      }\n    },\n    \"label\": {\n      \"meta\": {\n        \"description\": \"Configuration for the labels used for the segments.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not the labels should be shown.\"\n      },\n      \"color\": {\n        \"default\": \"#000000\",\n        \"description\": \"The colour to use for the labels.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the labels.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the labels.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 12,\n        \"description\": \"The font size in pixels to use for the labels.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the labels.\"\n      },\n      \"offset\": {\n        \"default\": 3,\n        \"description\": \"Distance in pixels between the callout line and the label text.\",\n        \"min\": 0,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"minAngle\": {\n        \"default\": 20,\n        \"description\": \"Minimum angle in degrees required for a segment to show a label.\",\n        \"min\": 0,\n        \"max\": 360,\n        \"unit\": \"&deg;\"\n      },\n      \"formatter\": {\n        \"type\": {\n          \"parameters\": {\n            \"value\": \"string\"\n          },\n          \"returnType\": \"string\"\n        },\n        \"description\": \"Function used to turn 'labelKey' values into text to be displayed next to each pie sector. Be default the values are simply stringified.\"\n      }\n    },\n    \"callout\": {\n      \"meta\": {\n        \"description\": \"Configuration for the callouts used with the labels for the segments.\"\n      },\n      \"colors\": {\n        \"type\": \"string[]\",\n        \"default\": [\n          \"#aa4520\",\n          \"#b07513\",\n          \"#3d803d\",\n          \"#2d768d\",\n          \"#2e3e8d\",\n          \"#6c2e8c\",\n          \"#8c2d46\",\n          \"#5f5f5f\"\n        ],\n        \"description\": \"The colours to cycle through for the strokes of the callouts.\"\n      },\n      \"strokeWidth\": {\n        \"default\": 1,\n        \"description\": \"The width in pixels of the stroke for callout lines.\",\n        \"min\": 1,\n        \"max\": 10,\n        \"unit\": \"px\"\n      },\n      \"length\": {\n        \"default\": 10,\n        \"description\": \"The length in pixels of the callout lines.\",\n        \"min\": 0,\n        \"max\": 20,\n        \"unit\": \"px\"\n      }\n    },\n    \"shadow\": {\n      \"meta\": {\n        \"description\": \"Configuration for the shadow used behind the chart series.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not the shadow is visible.\"\n      },\n      \"color\": {\n        \"default\": \"rgba(0, 0, 0, 0.5)\",\n        \"description\": \"The colour of the shadow.\"\n      },\n      \"xOffset\": {\n        \"default\": 0,\n        \"description\": \"The horizontal offset in pixels for the shadow.\",\n        \"min\": -20,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"yOffset\": {\n        \"default\": 0,\n        \"description\": \"The vertical offset in pixels for the shadow.\",\n        \"min\": -20,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"blur\": {\n        \"default\": 5,\n        \"description\": \"The radius of the shadow's blur, given in pixels.\",\n        \"min\": 0,\n        \"max\": 20,\n        \"unit\": \"px\"\n      }\n    },\n    \"listeners\": {\n      \"meta\": {\n        \"description\": \"A map of event names to event listeners.\"\n      },\n      \"nodeClick\": {\n        \"type\": {\n          \"parameters\": {\n            \"type\": \"'nodeClick'\",\n            \"series\": \"PieSeries\",\n            \"datum\": \"any\",\n            \"angleKey\": \"string\",\n            \"radiusKey?\": \"string\"\n          },\n          \"returnType\": \"any\"\n        },\n        \"description\": \"The listener to call when a pie slice is clicked.\"\n      }\n    }\n  },\n  \"treemap\": {\n    \"meta\": {\n      \"displayName\": \"Treemap Series Configuration\",\n      \"description\": \"Configuration for the treemap series.\"\n    },\n    \"title\": {\n      \"meta\": {\n        \"description\": \"The label configuration for the top-level parent tiles.\"\n      },\n      \"color\": {\n        \"default\": \"white\",\n        \"description\": \"The colour of the text.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the legend.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"bold\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the legend.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 12,\n        \"description\": \"The font size in pixels to use for the legend.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the legend.\"\n      },\n      \"padding\": {\n        \"default\": 15,\n        \"description\": \"The amount of the tile's vertical space to reserve for the label.\",\n        \"min\": 4,\n        \"max\": 20,\n        \"unit\": \"px\"\n      }\n    },\n    \"subtitle\": {\n      \"meta\": {\n        \"description\": \"The label configuration for the children of the top-level parent tiles.\"\n      },\n      \"color\": {\n        \"default\": \"white\",\n        \"description\": \"The colour of the text.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the legend.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"bold\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the legend.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 9,\n        \"description\": \"The font size in pixels to use for the legend.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the legend.\"\n      },\n      \"padding\": {\n        \"default\": 13,\n        \"description\": \"The amount of the tile's vertical space to reserve for the label.\",\n        \"min\": 4,\n        \"max\": 20,\n        \"unit\": \"px\"\n      }\n    },\n    \"labels\": {\n      \"meta\": {\n        \"description\": \"Configuration for the tile labels.\"\n      },\n      \"large\": {\n        \"meta\": {\n          \"description\": \"The label configuration for the large leaf tiles.\"\n        },\n        \"color\": {\n          \"default\": \"white\",\n          \"description\": \"The colour of the text.\"\n        },\n        \"fontStyle\": {\n          \"default\": \"normal\",\n          \"options\": [\n            \"normal\",\n            \"italic\",\n            \"oblique\"\n          ],\n          \"description\": \"The font style to use for the legend.\"\n        },\n        \"fontWeight\": {\n          \"default\": \"bold\",\n          \"options\": [\n            \"normal\",\n            \"bold\",\n            \"bolder\",\n            \"lighter\",\n            \"100\",\n            \"200\",\n            \"300\",\n            \"400\",\n            \"500\",\n            \"600\",\n            \"700\",\n            \"800\",\n            \"900\"\n          ],\n          \"description\": \"The font weight to use for the legend.\",\n          \"breakIndex\": 4\n        },\n        \"fontSize\": {\n          \"default\": 18,\n          \"description\": \"The font size in pixels to use for the legend.\",\n          \"min\": 1,\n          \"max\": 30,\n          \"unit\": \"px\"\n        },\n        \"fontFamily\": {\n          \"default\": \"Verdana, sans-serif\",\n          \"suggestions\": [\n            \"Verdana, sans-serif\",\n            \"Arial, sans-serif\",\n            \"Times New Roman, serif\"\n          ],\n          \"description\": \"The font family to use for the legend.\"\n        }\n      },\n      \"medium\": {\n        \"meta\": {\n          \"description\": \"The label configuration for the medium-sized leaf tiles.\"\n        },\n        \"color\": {\n          \"default\": \"white\",\n          \"description\": \"The colour of the text.\"\n        },\n        \"fontStyle\": {\n          \"default\": \"normal\",\n          \"options\": [\n            \"normal\",\n            \"italic\",\n            \"oblique\"\n          ],\n          \"description\": \"The font style to use for the legend.\"\n        },\n        \"fontWeight\": {\n          \"default\": \"bold\",\n          \"options\": [\n            \"normal\",\n            \"bold\",\n            \"bolder\",\n            \"lighter\",\n            \"100\",\n            \"200\",\n            \"300\",\n            \"400\",\n            \"500\",\n            \"600\",\n            \"700\",\n            \"800\",\n            \"900\"\n          ],\n          \"description\": \"The font weight to use for the legend.\",\n          \"breakIndex\": 4\n        },\n        \"fontSize\": {\n          \"default\": 14,\n          \"description\": \"The font size in pixels to use for the legend.\",\n          \"min\": 1,\n          \"max\": 30,\n          \"unit\": \"px\"\n        },\n        \"fontFamily\": {\n          \"default\": \"Verdana, sans-serif\",\n          \"suggestions\": [\n            \"Verdana, sans-serif\",\n            \"Arial, sans-serif\",\n            \"Times New Roman, serif\"\n          ],\n          \"description\": \"The font family to use for the legend.\"\n        }\n      },\n      \"small\": {\n        \"meta\": {\n          \"description\": \"The label configuration for the small leaf tiles.\"\n        },\n        \"color\": {\n          \"default\": \"white\",\n          \"description\": \"The colour of the text.\"\n        },\n        \"fontStyle\": {\n          \"default\": \"normal\",\n          \"options\": [\n            \"normal\",\n            \"italic\",\n            \"oblique\"\n          ],\n          \"description\": \"The font style to use for the legend.\"\n        },\n        \"fontWeight\": {\n          \"default\": \"bold\",\n          \"options\": [\n            \"normal\",\n            \"bold\",\n            \"bolder\",\n            \"lighter\",\n            \"100\",\n            \"200\",\n            \"300\",\n            \"400\",\n            \"500\",\n            \"600\",\n            \"700\",\n            \"800\",\n            \"900\"\n          ],\n          \"description\": \"The font weight to use for the legend.\",\n          \"breakIndex\": 4\n        },\n        \"fontSize\": {\n          \"default\": 10,\n          \"description\": \"The font size in pixels to use for the legend.\",\n          \"min\": 1,\n          \"max\": 30,\n          \"unit\": \"px\"\n        },\n        \"fontFamily\": {\n          \"default\": \"Verdana, sans-serif\",\n          \"suggestions\": [\n            \"Verdana, sans-serif\",\n            \"Arial, sans-serif\",\n            \"Times New Roman, serif\"\n          ],\n          \"description\": \"The font family to use for the legend.\"\n        }\n      },\n      \"color\": {\n        \"meta\": {\n          \"description\": \"The configuration for the labels showing the value of the 'colorKey'.\"\n        },\n        \"color\": {\n          \"default\": \"white\",\n          \"description\": \"The colour of the text.\"\n        },\n        \"fontStyle\": {\n          \"default\": \"normal\",\n          \"options\": [\n            \"normal\",\n            \"italic\",\n            \"oblique\"\n          ],\n          \"description\": \"The font style to use for the legend.\"\n        },\n        \"fontWeight\": {\n          \"default\": \"bold\",\n          \"options\": [\n            \"normal\",\n            \"bold\",\n            \"bolder\",\n            \"lighter\",\n            \"100\",\n            \"200\",\n            \"300\",\n            \"400\",\n            \"500\",\n            \"600\",\n            \"700\",\n            \"800\",\n            \"900\"\n          ],\n          \"description\": \"The font weight to use for the legend.\",\n          \"breakIndex\": 4\n        },\n        \"fontSize\": {\n          \"default\": 12,\n          \"description\": \"The font size in pixels to use for the legend.\",\n          \"min\": 1,\n          \"max\": 30,\n          \"unit\": \"px\"\n        },\n        \"fontFamily\": {\n          \"default\": \"Verdana, sans-serif\",\n          \"suggestions\": [\n            \"Verdana, sans-serif\",\n            \"Arial, sans-serif\",\n            \"Times New Roman, serif\"\n          ],\n          \"description\": \"The font family to use for the legend.\"\n        }\n      }\n    },\n    \"labelKey\": {\n      \"type\": \"string\",\n      \"default\": \"label\",\n      \"description\": \"The name of the node key containing the label.\"\n    },\n    \"sizeKey\": {\n      \"type\": \"string\",\n      \"default\": \"size\",\n      \"description\": \"The name of the node key containing the size value.\"\n    },\n    \"colorKey\": {\n      \"type\": \"string\",\n      \"default\": \"color\",\n      \"description\": \"The name of the node key containing the color value. This value (along with `colorDomain` and `colorRange` configs) will be used to determine the tile color.\"\n    },\n    \"colorDomain\": {\n      \"type\": \"number[]\",\n      \"default\": \"[-5, 5]\",\n      \"description\": \"The domain the 'colorKey' values belong to. The domain can contain more than two stops, for example `[-5, 0, -5]`. In that case the 'colorRange' should also use a matching number of colors.\"\n    },\n    \"colorRange\": {\n      \"type\": \"string[]\",\n      \"default\": \"['#cb4b3f', '#6acb64']\",\n      \"description\": \"The color range to interpolate the numeric `colorDomain` into. For example, if the `colorDomain` is `[-5, 5]` and `colorRange` is `['red', 'green']`, a `colorKey` value of `-5` will be assigned the 'red' color, `5` - 'green' color and `0` a blend of 'red' and 'green'.\"\n    },\n    \"colorParents\": {\n      \"type\": \"boolean\",\n      \"default\": false,\n      \"description\": \"Whether or not to assign colors to non-leaf nodes based on 'colorKey'.\"\n    },\n    \"tooltip\": {\n      \"meta\": {\n        \"description\": \"Series-specific tooltip configuration.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not to show tooltips when the series are hovered over.\"\n      },\n      \"renderer\": {\n        \"type\": {\n          \"parameters\": {\n            \"datum\": \"any\",\n            \"labelKey\": \"string\",\n            \"sizeKey?\": \"string\",\n            \"colorKey?\": \"string\"\n          },\n          \"returnType\": \"string\"\n        },\n        \"description\": \"Function used to create the content for tooltips.\"\n      }\n    },\n    \"nodePadding\": {\n      \"type\": \"number\",\n      \"default\": 2,\n      \"description\": \"The amount \"\n    },\n    \"gradient\": {\n      \"type\": \"boolean\",\n      \"default\": true,\n      \"description\": \"Whether or not to use gradients for treemap tiles.\"\n    },\n    \"cursor\": {\n      \"type\": \"string\",\n      \"default\": \"default\",\n      \"description\": \"The cursor to use for hovered treemap tiles. This config is identical to the CSS `cursor` property.\"\n    }\n  },\n  \"histogram\": {\n    \"data\": {\n      \"type\": \"object[]\",\n      \"isRequired\": true,\n      \"description\": \"The data to use when rendering the series. If this is not supplied, data must be set on the chart instead.\"\n    },\n    \"visible\": {\n      \"default\": true,\n      \"description\": \"Whether or not to display the series.\"\n    },\n    \"showInLegend\": {\n      \"default\": true,\n      \"description\": \"Whether or not to include the series in the legend.\"\n    },\n    \"cursor\": {\n      \"type\": \"string\",\n      \"default\": \"default\",\n      \"description\": \"The cursor to use for hovered histogram bars. This config is identical to the CSS `cursor` property.\"\n    },\n    \"tooltip\": {\n      \"meta\": {\n        \"description\": \"Series-specific tooltip configuration.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not to show tooltips when the series are hovered over.\"\n      },\n      \"renderer\": {\n        \"type\": {\n          \"parameters\": {\n            \"datum\": \"any\",\n            \"title?\": \"string\",\n            \"color?\": \"string\",\n            \"xKey\": \"string\",\n            \"xValue\": \"any\",\n            \"xName?\": \"string\",\n            \"yKey\": \"string\",\n            \"yValue\": \"any\",\n            \"yName?\": \"string\",\n            \"sizeKey?\": \"string\",\n            \"sizeName?\": \"string\",\n            \"labelKey?\": \"string\",\n            \"labelName?\": \"string\"\n          },\n          \"returnType\": \"string\"\n        },\n        \"description\": \"Function used to create the content for tooltips.\"\n      }\n    },\n    \"xKey\": {\n      \"type\": \"string\",\n      \"isRequired\": true,\n      \"description\": \"The key to use to retrieve x-values from the data.\"\n    },\n    \"xName\": {\n      \"type\": \"string\",\n      \"description\": \"A human-readable description of the x-values. If supplied, this will be shown in the default tooltip and passed to the tooltip renderer as one of the parameters.\"\n    },\n    \"yKey\": {\n      \"type\": \"string\",\n      \"isRequired\": false,\n      \"description\": \"The key to use to retrieve y-values from the data.\"\n    },\n    \"yName\": {\n      \"type\": \"string\",\n      \"description\": \"A human-readable description of the y-values. If supplied, this will be shown in the default tooltip and passed to the tooltip renderer as one of the parameters.\"\n    },\n    \"meta\": {\n      \"displayName\": \"Histogram Series Configuration\",\n      \"description\": \"Configuration for histogram series.\"\n    },\n    \"binCount\": {\n      \"type\": \"number\",\n      \"description\": \"The number of bins to try to split the x axis into. Clashes with the <code>bins</code> setting.\",\n      \"default\": 10,\n      \"min\": 1,\n      \"max\": 30\n    },\n    \"bins\": {\n      \"type\": \"number[][]\",\n      \"description\": \"Set the bins explicitly. The bins need not be of equal width. Clashes with the <code>binCount</code> setting.\"\n    },\n    \"aggregation\": {\n      \"type\": \"string\",\n      \"description\": \"Dictates how the bins are aggregated. If set to 'sum', the value shown for the bins will be the total of the yKey values. If set to 'mean', it will display the average yKey value of the bin\",\n      \"default\": \"sum\",\n      \"options\": [\n        \"sum\",\n        \"mean\"\n      ]\n    },\n    \"areaPlot\": {\n      \"type\": \"boolean\",\n      \"description\": \"For variable width bins, if true the histogram will represent the aggregated <code>yKey</code> values using the area of the bar. Otherwise, the height of the var represents the value as per a normal bar chart. This is useful for keeping an undistorted curve displayed when using variable-width bins\",\n      \"default\": \"false\"\n    },\n    \"lineDash\": {\n      \"default\": [],\n      \"type\": \"number[]\",\n      \"description\": \"Defines how the column strokes are rendered. Every number in the array specifies the length in pixels of alternating dashes and gaps. For example, <code>[6, 3]</code> means dashes with a length of <code>6</code> pixels with gaps between of <code>3</code> pixels.\"\n    },\n    \"lineDashOffset\": {\n      \"default\": 0,\n      \"type\": \"number\",\n      \"description\": \"The initial offset of the dashed line in pixels.\",\n      \"min\": 0,\n      \"max\": 200,\n      \"unit\": \"px\"\n    },\n    \"highlightStyle\": {\n      \"meta\": {\n        \"requiresWholeObject\": true,\n        \"description\": \"Configuration for the highlighting used when the bars are hovered over.\"\n      },\n      \"fill\": {\n        \"default\": \"yellow\",\n        \"description\": \"The fill colour of the bars when hovered over. Use `undefined` for no highlight.\"\n      },\n      \"stroke\": {\n        \"type\": \"string\",\n        \"description\": \"The colour of the stroke around the bars when hovered over. Use `undefined` for no highlight.\"\n      }\n    },\n    \"fill\": {\n      \"default\": \"#f3622d\",\n      \"description\": \"The colour of the fill for the histogram bars.\"\n    },\n    \"fillOpacity\": {\n      \"default\": 1,\n      \"description\": \"The opacity of the fill for the histogram bars.\",\n      \"min\": 0,\n      \"max\": 1,\n      \"step\": 0.05\n    },\n    \"stroke\": {\n      \"default\": \"#aa4520\",\n      \"description\": \"The colour of the stroke for the histogram bars.\"\n    },\n    \"strokeOpacity\": {\n      \"default\": 1,\n      \"description\": \"The opacity of the stroke for the histogram bars.\",\n      \"min\": 0,\n      \"max\": 1,\n      \"step\": 0.05\n    },\n    \"strokeWidth\": {\n      \"default\": 1,\n      \"description\": \"The width in pixels of the stroke for the histogram bars.\",\n      \"min\": 0,\n      \"max\": 20,\n      \"unit\": \"px\"\n    },\n    \"listeners\": {\n      \"meta\": {\n        \"description\": \"A map of event names to event listeners.\"\n      },\n      \"nodeClick\": {\n        \"type\": {\n          \"parameters\": {\n            \"type\": \"'nodeClick'\",\n            \"series\": \"HistogramSeries\",\n            \"datum\": \"any\",\n            \"xKey\": \"string\"\n          },\n          \"returnType\": \"any\"\n        },\n        \"description\": \"The listener to call when a histogram bar is clicked.\"\n      }\n    }\n  }\n}"}},{"relativePath":"charts-api-themes/themes.json","internal":{"content":"{\n  \"theme\": {\n    \"meta\": {\n      \"displayName\": \"Theme Configuration\",\n      \"description\": \"This object is used to define the configuration for a custom chart theme.\"\n    },\n    \"baseTheme\": {\n      \"options\": [\n        \"default\",\n        \"dark\",\n        \"material\",\n        \"material-dark\",\n        \"pastel\",\n        \"pastel-dark\",\n        \"solar\",\n        \"solar-dark\",\n        \"vivid\",\n        \"vivid-dark\"\n      ],\n      \"default\": \"default\",\n      \"description\": \"The name of the theme to base your theme on. Your custom theme will inherit all of the configuration from the base theme, allowing you to override just the settings you wish to change using the `defaults` config (see below).\"\n    },\n    \"palette\": {\n      \"meta\": {\n        \"description\": \"The palette to use. If specified, this replaces the palette from the base theme.\"\n      },\n      \"fills\": {\n        \"type\": \"string[]\",\n        \"description\": \"The array of fills to be used.\"\n      },\n      \"strokes\": {\n        \"type\": \"string[]\",\n        \"description\": \"The array of strokes to be used.\"\n      }\n    },\n    \"overrides\": {\n      \"meta\": {\n        \"description\": \"Configuration from this object is merged over the defaults specified in the base theme.\"\n      },\n      \"common\": {\n        \"type\": \"IChart\",\n        \"description\": \"Specifies defaults for all chart types. Be careful to only use properties that apply to all chart types here. For example, don't specify `navigator` configuration here as navigators are only available in cartesian charts.\",\n        \"more\": {\n          \"name\": \"Chart Configuration\",\n          \"url\": \"/charts-api-themes/#chart\"\n        }\n      },\n      \"cartesian\": {\n        \"type\": \"IChart\",\n        \"description\": \"Specifies defaults for all cartesian charts (used for bar, column, histogram, line, scatter and area series).\",\n        \"more\": {\n          \"name\": \"Chart Configuration\",\n          \"url\": \"/charts-api-themes/#chart\"\n        }\n      },\n      \"polar\": {\n        \"type\": \"IChart\",\n        \"description\": \"Specifies defaults for all polar charts (used for pie series).\",\n        \"more\": {\n          \"name\": \"Chart Configuration\",\n          \"url\": \"/charts-api-themes/#chart\"\n        }\n      },\n      \"hierarchy\": {\n        \"type\": \"IChart\",\n        \"description\": \"Specifies defaults for all hierarchy charts (used for treemap series).\",\n        \"more\": {\n          \"name\": \"Chart Configuration\",\n          \"url\": \"/charts-api-themes/#chart\"\n        }\n      },\n      \"bar\": {\n        \"type\": \"IChart\",\n        \"description\": \"Specifies defaults for bar/column charts.\",\n        \"more\": {\n          \"name\": \"Chart Configuration\",\n          \"url\": \"/charts-api-themes/#chart\"\n        }\n      },\n      \"histogram\": {\n        \"type\": \"IChart\",\n        \"description\": \"Specifies defaults for histogram charts.\",\n        \"more\": {\n          \"name\": \"Chart Configuration\",\n          \"url\": \"/charts-api-themes/#chart\"\n        }\n      },\n      \"line\": {\n        \"type\": \"IChart\",\n        \"description\": \"Specifies defaults for line charts.\",\n        \"more\": {\n          \"name\": \"Chart Configuration\",\n          \"url\": \"/charts-api-themes/#chart\"\n        }\n      },\n      \"scatter\": {\n        \"type\": \"IChart\",\n        \"description\": \"Specifies defaults for scatter/bubble charts.\",\n        \"more\": {\n          \"name\": \"Chart Configuration\",\n          \"url\": \"/charts-api-themes/#chart\"\n        }\n      },\n      \"area\": {\n        \"type\": \"IChart\",\n        \"description\": \"Specifies defaults for line charts.\",\n        \"more\": {\n          \"name\": \"Chart Configuration\",\n          \"url\": \"/charts-api-themes/#chart\"\n        }\n      },\n      \"pie\": {\n        \"type\": \"IChart\",\n        \"description\": \"Specifies defaults for pie/doughnut charts.\",\n        \"more\": {\n          \"name\": \"Chart Configuration\",\n          \"url\": \"/charts-api-themes/#chart\"\n        }\n      }\n    }\n  },\n  \"chart\": {\n    \"meta\": {\n      \"displayName\": \"Chart Configuration\",\n      \"description\": \"This is the common configuration shared by all types of chart, as used in the [overrides](/charts-api-themes/#reference-theme.overrides) object.\"\n    },\n    \"autoSize\": {\n      \"default\": true,\n      \"description\": \"By default, the chart will resize automatically to fill the container element. Set this to `false` to disable this behaviour. If either the `width` or `height` are set, auto-sizing will be disabled unless this is explicitly set to `true`.\"\n    },\n    \"width\": {\n      \"type\": \"number\",\n      \"description\": \"The width of the chart in pixels. Has no effect if `autoSize` is set to `true`.\",\n      \"min\": 1,\n      \"unit\": \"px\"\n    },\n    \"height\": {\n      \"type\": \"number\",\n      \"description\": \"The height of the chart in pixels. Has no effect if `autoSize` is set to `true`.\",\n      \"min\": 1,\n      \"unit\": \"px\"\n    },\n    \"tooltip\": {\n      \"meta\": {\n        \"description\": \"Global configuration that applies to all tooltips in the chart.\"\n      },\n      \"enabled\": {\n        \"type\": \"boolean\",\n        \"default\": true,\n        \"description\": \"Set to false to disable tooltips for all series in the chart.\"\n      },\n      \"tracking\": {\n        \"type\": \"boolean\",\n        \"default\": true,\n        \"description\": \"If true, for series with markers the tooltip will be shown to the closest marker.\"\n      },\n      \"class\": {\n        \"type\": \"string\",\n        \"description\": \"A class name to be added to the tooltip element of the chart.\"\n      },\n      \"delay\": {\n        \"default\": 0,\n        \"description\": \"The time interval (in milliseconds) after which the tooltip is shown.\"\n      }\n    },\n    \"padding\": {\n      \"meta\": {\n        \"description\": \"Configuration for the padding shown around the chart.\"\n      },\n      \"top\": {\n        \"default\": 20,\n        \"description\": \"The number of pixels of padding at the top of the chart area.\",\n        \"min\": 0,\n        \"max\": 40\n      },\n      \"right\": {\n        \"default\": 20,\n        \"description\": \"The number of pixels of padding at the right of the chart area.\",\n        \"min\": 0,\n        \"max\": 40\n      },\n      \"bottom\": {\n        \"default\": 20,\n        \"description\": \"The number of pixels of padding at the bottom of the chart area.\",\n        \"min\": 0,\n        \"max\": 40\n      },\n      \"left\": {\n        \"default\": 20,\n        \"description\": \"The number of pixels of padding at the left of the chart area.\",\n        \"min\": 0,\n        \"max\": 40\n      }\n    },\n    \"background\": {\n      \"meta\": {\n        \"description\": \"Configuration for the background shown behind the chart.\"\n      },\n      \"fill\": {\n        \"default\": \"#FFFFFF\",\n        \"description\": \"Colour of the chart background.\"\n      },\n      \"visible\": {\n        \"default\": true,\n        \"description\": \"Whether or not the background should be visible.\"\n      }\n    },\n    \"title\": {\n      \"meta\": {\n        \"description\": \"Configuration for the title shown at the top of the chart.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not the title should be shown.\"\n      },\n      \"text\": {\n        \"type\": \"string\",\n        \"default\": \"Title\",\n        \"description\": \"The text to show in the title.\"\n      },\n      \"color\": {\n        \"default\": \"#000000\",\n        \"description\": \"The colour to use for the title.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the title.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"bold\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the title.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 18,\n        \"description\": \"The font size in pixels to use for the title.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the title.\"\n      }\n    },\n    \"subtitle\": {\n      \"meta\": {\n        \"description\": \"Configuration for the subtitle shown beneath the chart title. Note: a subtitle will only be shown if a title is also present.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not the subtitle should be shown.\"\n      },\n      \"text\": {\n        \"type\": \"string\",\n        \"default\": \"Subtitle\",\n        \"description\": \"The text to show in the subtitle.\"\n      },\n      \"color\": {\n        \"default\": \"#000000\",\n        \"description\": \"The colour to use for the subtitle.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the subtitle.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the subtitle.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 14,\n        \"description\": \"The font size in pixels to use for the subtitle.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the subtitle.\"\n      }\n    },\n    \"legend\": {\n      \"meta\": {\n        \"description\": \"Configuration for the chart legend.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not to show the legend.\"\n      },\n      \"position\": {\n        \"default\": \"right\",\n        \"description\": \"Where the legend should show in relation to the chart.\",\n        \"options\": [\n          \"top\",\n          \"right\",\n          \"bottom\",\n          \"left\"\n        ]\n      },\n      \"spacing\": {\n        \"default\": 20,\n        \"description\": \"The spacing in pixels to use outside the legend.\",\n        \"min\": 0,\n        \"max\": 40,\n        \"unit\": \"px\"\n      },\n      \"item\": {\n        \"meta\": {\n          \"description\": \"Configuration for the legend items that consist of a marker and a label.\"\n        },\n        \"paddingX\": {\n          \"default\": 16,\n          \"description\": \"The horizontal spacing in pixels to use between legend items.\",\n          \"min\": 0,\n          \"max\": 40,\n          \"unit\": \"px\"\n        },\n        \"paddingY\": {\n          \"default\": 8,\n          \"description\": \"The vertical spacing in pixels to use between legend items.\",\n          \"min\": 0,\n          \"max\": 40,\n          \"unit\": \"px\"\n        },\n        \"marker\": {\n          \"meta\": {\n            \"description\": \"Configuration for the legend markers.\"\n          },\n          \"padding\": {\n            \"default\": 8,\n            \"description\": \"The padding in pixels between a legend marker and the corresponding label.\",\n            \"min\": 0,\n            \"max\": 40,\n            \"unit\": \"px\"\n          },\n          \"shape\": {\n            \"type\": \"string\",\n            \"description\": \"If set, overrides the marker shape from the series and the legend will show the specified marker shape instead. If not set, will use a marker shape matching the shape from the series, or fall back to <code>'square'</code> if there is none.\",\n            \"options\": [\n              \"circle\",\n              \"cross\",\n              \"diamond\",\n              \"plus\",\n              \"square\",\n              \"triangle\"\n            ]\n          },\n          \"size\": {\n            \"default\": 15,\n            \"description\": \"The size in pixels of the markers in the legend.\",\n            \"min\": 0,\n            \"max\": 30,\n            \"unit\": \"px\"\n          },\n          \"strokeWidth\": {\n            \"default\": 1,\n            \"description\": \"The width in pixels of the stroke for markers in the legend.\",\n            \"min\": 0,\n            \"max\": 10,\n            \"unit\": \"px\"\n          }\n        },\n        \"label\": {\n          \"meta\": {\n            \"description\": \"Configuration for the legend labels.\"\n          },\n          \"color\": {\n            \"default\": \"black\",\n            \"description\": \"The colour of the text.\"\n          },\n          \"fontStyle\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"italic\",\n              \"oblique\"\n            ],\n            \"description\": \"The font style to use for the legend.\"\n          },\n          \"fontWeight\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"bold\",\n              \"bolder\",\n              \"lighter\",\n              \"100\",\n              \"200\",\n              \"300\",\n              \"400\",\n              \"500\",\n              \"600\",\n              \"700\",\n              \"800\",\n              \"900\"\n            ],\n            \"description\": \"The font weight to use for the legend.\",\n            \"breakIndex\": 4\n          },\n          \"fontSize\": {\n            \"default\": 12,\n            \"description\": \"The font size in pixels to use for the legend.\",\n            \"min\": 1,\n            \"max\": 30,\n            \"unit\": \"px\"\n          },\n          \"fontFamily\": {\n            \"default\": \"Verdana, sans-serif\",\n            \"suggestions\": [\n              \"Verdana, sans-serif\",\n              \"Arial, sans-serif\",\n              \"Times New Roman, serif\"\n            ],\n            \"description\": \"The font family to use for the legend.\"\n          },\n          \"formatter\": {\n            \"type\": {\n              \"parameters\": {\n                \"id\": \"string\",\n                \"itemId\": \"any\",\n                \"label\": \"{ text: string }\"\n              },\n              \"returnType\": \"string\"\n            },\n            \"description\": \"Function used to render legend labels. Where <code>id</code> is a series ID, <code>itemId</code> is component ID within a series, such as a field name or an item index.\"\n          }\n        }\n      }\n    },\n    \"navigator\": {\n      \"meta\": {\n        \"description\": \"Configuration for the chart navigator. This config is only supported by cartesian charts.\"\n      },\n      \"enabled\": {\n        \"default\": false,\n        \"description\": \"Whether or not to show the navigator.\"\n      },\n      \"height\": {\n        \"default\": 30,\n        \"description\": \"The height of the navigator.\",\n        \"min\": 10,\n        \"max\": 100,\n        \"unit\": \"px\"\n      },\n      \"min\": {\n        \"default\": 0,\n        \"description\": \"The start of the visible range in the [0, 1] interval.\",\n        \"min\": 0,\n        \"max\": 1,\n        \"step\": 0.01\n      },\n      \"max\": {\n        \"default\": 1,\n        \"description\": \"The end of the visible range in the [0, 1] interval.\",\n        \"min\": 0,\n        \"max\": 1,\n        \"step\": 0.01\n      },\n      \"mask\": {\n        \"meta\": {\n          \"description\": \"Configuration for the navigator's visible range mask.\"\n        },\n        \"fill\": {\n          \"default\": \"#999999\",\n          \"description\": \"The fill colour used by the mask.\"\n        },\n        \"stroke\": {\n          \"default\": \"#999999\",\n          \"description\": \"The stroke colour used by the mask.\"\n        },\n        \"strokeWidth\": {\n          \"default\": 1,\n          \"description\": \"The stroke width used by the mask.\",\n          \"min\": 0,\n          \"max\": 5,\n          \"unit\": \"px\"\n        },\n        \"fillOpacity\": {\n          \"default\": 0.2,\n          \"description\": \"The opacity of the mask's fill in the [0, 1] interval, where 0 is effectively no masking.\",\n          \"min\": 0,\n          \"max\": 1,\n          \"step\": 0.05\n        }\n      },\n      \"minHandle\": {\n        \"meta\": {\n          \"description\": \"Configuration for the navigator's left handle.\"\n        },\n        \"fill\": {\n          \"default\": \"#f2f2f2\",\n          \"description\": \"The fill colour used by the handle.\"\n        },\n        \"stroke\": {\n          \"default\": \"#999999\",\n          \"description\": \"The stroke colour used by the handle.\"\n        },\n        \"strokeWidth\": {\n          \"default\": 1,\n          \"description\": \"The stroke width used by the handle.\",\n          \"min\": 0,\n          \"max\": 5,\n          \"unit\": \"px\"\n        },\n        \"width\": {\n          \"default\": 8,\n          \"description\": \"The width of the handle.\",\n          \"min\": 4,\n          \"max\": 20,\n          \"unit\": \"px\"\n        },\n        \"height\": {\n          \"default\": 16,\n          \"description\": \"The height of the handle.\",\n          \"min\": 8,\n          \"max\": 26,\n          \"unit\": \"px\"\n        },\n        \"gripLineLength\": {\n          \"default\": 8,\n          \"description\": \"The length of the handle's grip lines.\",\n          \"min\": 4,\n          \"max\": 16,\n          \"unit\": \"px\"\n        },\n        \"gripLineGap\": {\n          \"default\": 2,\n          \"description\": \"The distance between the handle's grip lines.\",\n          \"min\": 1,\n          \"max\": 8,\n          \"unit\": \"px\"\n        }\n      },\n      \"maxHandle\": {\n        \"meta\": {\n          \"description\": \"Configuration for the navigator's right handle.\"\n        },\n        \"fill\": {\n          \"default\": \"#f2f2f2\",\n          \"description\": \"The fill colour used by the handle.\"\n        },\n        \"stroke\": {\n          \"default\": \"#999999\",\n          \"description\": \"The stroke colour used by the handle.\"\n        },\n        \"strokeWidth\": {\n          \"default\": 1,\n          \"description\": \"The stroke width used by the handle.\",\n          \"min\": 0,\n          \"max\": 5,\n          \"unit\": \"px\"\n        },\n        \"width\": {\n          \"default\": 8,\n          \"description\": \"The width of the handle.\",\n          \"min\": 4,\n          \"max\": 20,\n          \"unit\": \"px\"\n        },\n        \"height\": {\n          \"default\": 16,\n          \"description\": \"The height of the handle.\",\n          \"min\": 8,\n          \"max\": 26,\n          \"unit\": \"px\"\n        },\n        \"gripLineLength\": {\n          \"default\": 8,\n          \"description\": \"The length of the handle's grip lines.\",\n          \"min\": 4,\n          \"max\": 16,\n          \"unit\": \"px\"\n        },\n        \"gripLineGap\": {\n          \"default\": 2,\n          \"description\": \"The distance between the handle's grip lines.\",\n          \"min\": 1,\n          \"max\": 8,\n          \"unit\": \"px\"\n        }\n      }\n    },\n    \"axes\": {\n      \"number\": {\n        \"meta\": {\n          \"type\": \"INumberAxis\",\n          \"description\": \"This extends the [common axis configuration](/charts-api-themes/#reference-axis) with options specific to number axes.\"\n        },\n        \"nice\": {\n          \"default\": true,\n          \"description\": \"If `true`, the axis will adjust to align the left and right edge of the chart with a tick. Otherwise, the axis will be the minimum required width to show all the data.\"\n        },\n        \"min\": {\n          \"type\": \"number\",\n          \"description\": \"The minimum value for the axis.\"\n        },\n        \"max\": {\n          \"type\": \"number\",\n          \"description\": \"The maximum value for the axis.\"\n        }\n      },\n      \"log\": {\n        \"meta\": {\n          \"type\": \"ILogAxis\",\n          \"description\": \"This extends the [common axis configuration](/charts-api-themes/#reference-axis) with options specific to number axes.\"\n        },\n        \"nice\": {\n          \"default\": true,\n          \"description\": \"If `true`, the axis will adjust to align the left and right edge of the chart with a tick. Otherwise, the axis will be the minimum required width to show all the data.\"\n        },\n        \"min\": {\n          \"type\": \"number\",\n          \"description\": \"The minimum value for the axis.\"\n        },\n        \"max\": {\n          \"type\": \"number\",\n          \"description\": \"The maximum value for the axis.\"\n        },\n        \"base\": {\n          \"type\": \"number\",\n          \"default\": 10,\n          \"description\": \"The logarithm base. For example, 10 for the common logarithm, Math.E for the natural logarithm, and so on.\"\n        }\n      },\n      \"category\": {\n        \"meta\": {\n          \"type\": \"ICategoryAxis\",\n          \"description\": \"This extends the [common axis configuration](/charts-api-themes/#reference-axes) with options specific to category axes.\"\n        },\n        \"paddingInner\": {\n          \"type\": \"number\",\n          \"description\": \"The padding between the category label and the line.\"\n        },\n        \"paddingOuter\": {\n          \"type\": \"number\",\n          \"description\": \"The padding between lines for neighbouring categories.\"\n        }\n      },\n      \"groupedCategory\": {\n        \"meta\": {\n          \"type\": \"IGroupedCategoryAxis\",\n          \"description\": \"This extends the [common axis configuration](/charts-api-themes/#reference-axis) with options specific to grouped category axes. Currently there are no additional options beyond the common configuration.\"\n        }\n      },\n      \"time\": {\n        \"meta\": {\n          \"type\": \"ITimeCategoryAxis\",\n          \"description\": \"This extends the [common axis configuration](/charts-api-themes/#reference-axis) with options specific to time axes.\"\n        },\n        \"nice\": {\n          \"default\": true,\n          \"description\": \"If `true`, the axis will adjust to align the left and right edge of the chart with a tick. Otherwise, the axis will be the minimum required width to show all the data.\"\n        }\n      }\n    },\n    \"series\": {\n      \"meta\": {\n        \"description\": \"This object contains configuration for the different series that might be rendered into the chart.<br /><br />For cartesian charts, the following series are supported: `'bar'`, `'column'`, `'histogram'`, `'line'`, `'scatter'`, `'area'`<br />For polar charts, the following series are supported: `'pie'`<br /><br />If the `series` property is being set inside configuration for a specific type of chart (e.g. `line`), instead of supplying the whole series object as specified here, for convenience you can put the relevant series configuration object directly into the `series` property, since all series for a specific chart will be of the same type (e.g. `line`).\"\n      },\n      \"bar\": {\n        \"meta\": {\n          \"type\": \"IBarColumnSeries\",\n          \"description\": \"Configuration for bar series.\"\n        },\n        \"tooltip\": {\n          \"meta\": {\n            \"description\": \"Series-specific tooltip configuration.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not to show tooltips when the series are hovered over.\"\n          },\n          \"renderer\": {\n            \"type\": {\n              \"parameters\": {\n                \"datum\": \"any\",\n                \"title?\": \"string\",\n                \"color?\": \"string\",\n                \"xKey\": \"string\",\n                \"xValue\": \"any\",\n                \"xName?\": \"string\",\n                \"yKey\": \"string\",\n                \"yValue\": \"any\",\n                \"yName?\": \"string\"\n              },\n              \"returnType\": \"string\"\n            },\n            \"description\": \"Function used to create the content for tooltips.\"\n          }\n        },\n        \"grouped\": {\n          \"default\": false,\n          \"description\": \"Whether to show different y-values as separate bars (grouped) or not (stacked).\"\n        },\n        \"normalizedTo\": {\n          \"type\": \"number\",\n          \"description\": \"The number to normalise the bar stacks to. Has no effect when `grouped` is `true`. For example, if `normalizedTo` is set to `100`, the bar stacks will all be scaled proportionally so that each of their totals is 100.\",\n          \"min\": 1,\n          \"max\": 100\n        },\n        \"fills\": {\n          \"type\": \"string[]\",\n          \"default\": [\n            \"#f3622d\",\n            \"#fba71b\",\n            \"#57b757\",\n            \"#41a9c9\",\n            \"#4258c9\",\n            \"#9a42c8\",\n            \"#c84164\",\n            \"#888888\"\n          ],\n          \"description\": \"The colours to cycle through for the fills of the bars.\"\n        },\n        \"fillOpacity\": {\n          \"default\": 1,\n          \"description\": \"The opacity of the fill for the bars.\",\n          \"min\": 0,\n          \"max\": 1,\n          \"step\": 0.05\n        },\n        \"strokes\": {\n          \"type\": \"string[]\",\n          \"default\": [\n            \"#aa4520\",\n            \"#b07513\",\n            \"#3d803d\",\n            \"#2d768d\",\n            \"#2e3e8d\",\n            \"#6c2e8c\",\n            \"#8c2d46\",\n            \"#5f5f5f\"\n          ],\n          \"description\": \"The colours to cycle through for the strokes of the bars.\"\n        },\n        \"strokeOpacity\": {\n          \"default\": 1,\n          \"description\": \"The opacity of the stroke for the bars.\",\n          \"min\": 0,\n          \"max\": 1,\n          \"step\": 0.05\n        },\n        \"strokeWidth\": {\n          \"default\": 1,\n          \"description\": \"The width in pixels of the stroke for the bars.\",\n          \"min\": 0,\n          \"max\": 20,\n          \"unit\": \"px\"\n        },\n        \"lineDash\": {\n          \"default\": [],\n          \"type\": \"number[]\",\n          \"description\": \"Defines how the bar strokes are rendered. Every number in the array specifies the length in pixels of alternating dashes and gaps. For example, `[6, 3]` means dashes with a length of `6` pixels with gaps between of `3` pixels.\"\n        },\n        \"lineDashOffset\": {\n          \"default\": 0,\n          \"type\": \"number\",\n          \"description\": \"The initial offset of the dashed lines in pixels.\"\n        },\n        \"highlightStyle\": {\n          \"meta\": {\n            \"requiresWholeObject\": true,\n            \"description\": \"Configuration for the highlighting used when the bars are hovered over.\"\n          },\n          \"fill\": {\n            \"default\": \"yellow\",\n            \"description\": \"The fill colour of the bars when hovered over.  Use `undefined` for no highlight.\"\n          },\n          \"stroke\": {\n            \"type\": \"string\",\n            \"description\": \"The colour of the stroke around the bars when hovered over.  Use `undefined` for no highlight.\"\n          }\n        },\n        \"shadow\": {\n          \"meta\": {\n            \"description\": \"Configuration for the shadow used behind the chart series.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not the shadow is visible.\"\n          },\n          \"color\": {\n            \"default\": \"rgba(0, 0, 0, 0.5)\",\n            \"description\": \"The colour of the shadow.\"\n          },\n          \"xOffset\": {\n            \"default\": 0,\n            \"description\": \"The horizontal offset in pixels for the shadow.\",\n            \"min\": -20,\n            \"max\": 20,\n            \"unit\": \"px\"\n          },\n          \"yOffset\": {\n            \"default\": 0,\n            \"description\": \"The vertical offset in pixels for the shadow.\",\n            \"min\": -20,\n            \"max\": 20,\n            \"unit\": \"px\"\n          },\n          \"blur\": {\n            \"default\": 5,\n            \"description\": \"The radius of the shadow's blur, given in pixels.\",\n            \"min\": 0,\n            \"max\": 20,\n            \"unit\": \"px\"\n          }\n        },\n        \"label\": {\n          \"meta\": {\n            \"description\": \"Configuration for the labels shown on bars.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not the labels should be shown.\"\n          },\n          \"placement\": {\n            \"default\": \"inside\",\n            \"description\": \"Where to render series labels relative to the segments.\",\n            \"options\": [\n              \"inside\",\n              \"outside\"\n            ]\n          },\n          \"color\": {\n            \"default\": \"rgba(70, 70, 70, 1)\",\n            \"description\": \"The colour to use for the labels.\"\n          },\n          \"fontStyle\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"italic\",\n              \"oblique\"\n            ],\n            \"description\": \"The font style to use for the labels.\"\n          },\n          \"fontWeight\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"bold\",\n              \"bolder\",\n              \"lighter\",\n              \"100\",\n              \"200\",\n              \"300\",\n              \"400\",\n              \"500\",\n              \"600\",\n              \"700\",\n              \"800\",\n              \"900\"\n            ],\n            \"description\": \"The font weight to use for the labels.\",\n            \"breakIndex\": 4\n          },\n          \"fontSize\": {\n            \"default\": 12,\n            \"description\": \"The font size in pixels to use for the labels.\",\n            \"min\": 1,\n            \"max\": 30,\n            \"unit\": \"px\"\n          },\n          \"fontFamily\": {\n            \"default\": \"Verdana, sans-serif\",\n            \"suggestions\": [\n              \"Verdana, sans-serif\",\n              \"Arial, sans-serif\",\n              \"Times New Roman, serif\"\n            ],\n            \"description\": \"The font family to use for the labels.\"\n          }\n        }\n      },\n      \"column\": {\n        \"type\": \"IBarColumnSeries\",\n        \"description\": \"Configuration for column series. The configuration is the same shape as for bar series.\",\n        \"more\": {\n          \"name\": \"Bar/Column Series Configuration\",\n          \"url\": \"#chart.series.bar\"\n        }\n      },\n      \"histogram\": {\n        \"meta\": {\n          \"type\": \"IHistogramSeries\",\n          \"description\": \"Configuration for histogram series.\"\n        },\n        \"tooltip\": {\n          \"meta\": {\n            \"description\": \"Series-specific tooltip configuration.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not to show tooltips when the series are hovered over.\"\n          },\n          \"renderer\": {\n            \"type\": {\n              \"parameters\": {\n                \"datum\": \"any\",\n                \"title?\": \"string\",\n                \"color?\": \"string\",\n                \"xKey\": \"string\",\n                \"xValue\": \"any\",\n                \"xName?\": \"string\",\n                \"yKey\": \"string\",\n                \"yValue\": \"any\",\n                \"yName?\": \"string\",\n                \"sizeKey?\": \"string\",\n                \"sizeName?\": \"string\",\n                \"labelKey?\": \"string\",\n                \"labelName?\": \"string\"\n              },\n              \"returnType\": \"string\"\n            },\n            \"description\": \"Function used to create the content for tooltips.\"\n          }\n        },\n        \"binCount\": {\n          \"type\": \"number\",\n          \"description\": \"The number of bins to try to split the x axis into. Clashes with the `bins` setting.\"\n        },\n        \"bins\": {\n          \"type\": \"number[][]\",\n          \"description\": \"Set the bins explicitly. The bins need not be of equal width. Clashes with the `binCount` setting.\"\n        },\n        \"aggregation\": {\n          \"type\": \"string\",\n          \"description\": \"Dictates how the bins are aggregated. If set to 'sum', the value shown for the bins will be the total of the yKey values. If set to 'mean', it will display the average yKey value of the bin\",\n          \"default\": \"sum\",\n          \"options\": [\n            \"sum\",\n            \"mean\"\n          ]\n        },\n        \"areaPlot\": {\n          \"type\": \"boolean\",\n          \"description\": \"For variable width bins, if true the histogram will represent the aggregated `yKey` values using the area of the bar. Otherwise, the height of the var represents the value as per a normal bar chart. This is useful for keeping an undistorted curve displayed when using variable-width bins\",\n          \"default\": \"false\"\n        },\n        \"lineDash\": {\n          \"default\": [],\n          \"type\": \"number[]\",\n          \"description\": \"Defines how the histogram strokes are rendered. Every number in the array specifies the length in pixels of alternating dashes and gaps. For example, `[6, 3]` means dashes with a length of `6` pixels with gaps between of `3` pixels.\"\n        },\n        \"lineDashOffset\": {\n          \"default\": 0,\n          \"type\": \"number\",\n          \"description\": \"The initial offset of the dashed lines in pixels.\"\n        },\n        \"highlightStyle\": {\n          \"meta\": {\n            \"requiresWholeObject\": true,\n            \"description\": \"Configuration for the highlighting used when the bars are hovered over.\"\n          },\n          \"fill\": {\n            \"default\": \"yellow\",\n            \"description\": \"The fill colour of the bars when hovered over. Use `undefined` for no highlight.\"\n          },\n          \"stroke\": {\n            \"type\": \"string\",\n            \"description\": \"The colour of the stroke around the bars when hovered over. Use `undefined` for no highlight.\"\n          }\n        },\n        \"fill\": {\n          \"default\": \"#f3622d\",\n          \"description\": \"The colour of the fill for the histogram bars.\"\n        },\n        \"fillOpacity\": {\n          \"default\": 1,\n          \"description\": \"The opacity of the fill for the histogram bars.\",\n          \"min\": 0,\n          \"max\": 1,\n          \"step\": 0.05\n        },\n        \"stroke\": {\n          \"default\": \"#aa4520\",\n          \"description\": \"The colour of the stroke for the histogram bars.\"\n        },\n        \"strokeOpacity\": {\n          \"default\": 1,\n          \"description\": \"The opacity of the stroke for the histogram bars.\",\n          \"min\": 0,\n          \"max\": 1,\n          \"step\": 0.05\n        },\n        \"strokeWidth\": {\n          \"default\": 1,\n          \"description\": \"The width in pixels of the stroke for the histogram bars.\",\n          \"min\": 0,\n          \"max\": 20,\n          \"unit\": \"px\"\n        }\n      },\n      \"line\": {\n        \"meta\": {\n          \"type\": \"ILineSeries\",\n          \"description\": \"Configuration for line series.\"\n        },\n        \"tooltip\": {\n          \"meta\": {\n            \"description\": \"Series-specific tooltip configuration.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not to show tooltips when the series are hovered over.\"\n          },\n          \"renderer\": {\n            \"type\": {\n              \"parameters\": {\n                \"datum\": \"any\",\n                \"title?\": \"string\",\n                \"color?\": \"string\",\n                \"xKey\": \"string\",\n                \"xValue\": \"any\",\n                \"xName?\": \"string\",\n                \"yKey\": \"string\",\n                \"yValue\": \"any\",\n                \"yName?\": \"string\"\n              },\n              \"returnType\": \"string\"\n            },\n            \"description\": \"Function used to create the content for tooltips.\"\n          }\n        },\n        \"title\": {\n          \"type\": \"string\",\n          \"description\": \"The title to use for the series. Defaults to `yName` if it exists, or `yKey` if not.\"\n        },\n        \"stroke\": {\n          \"default\": \"#aa4520\",\n          \"description\": \"The colour of the stroke for the lines.\"\n        },\n        \"strokeOpacity\": {\n          \"default\": 1,\n          \"description\": \"The opacity of the stroke for the lines.\",\n          \"min\": 0,\n          \"max\": 1,\n          \"step\": 0.05\n        },\n        \"strokeWidth\": {\n          \"default\": 1,\n          \"description\": \"The width in pixels of the stroke for the lines.\",\n          \"min\": 0,\n          \"max\": 20,\n          \"unit\": \"px\"\n        },\n        \"marker\": {\n          \"meta\": {\n            \"description\": \"Configuration for the markers used in the series.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not to show markers.\"\n          },\n          \"shape\": {\n            \"type\": \"string | Marker\",\n            \"default\": \"circle\",\n            \"description\": \"The shape to use for the markers. You can also supply a custom marker by providing a `Marker` subclass.\",\n            \"options\": [\n              \"circle\",\n              \"cross\",\n              \"diamond\",\n              \"plus\",\n              \"square\",\n              \"triangle\"\n            ]\n          },\n          \"size\": {\n            \"default\": 8,\n            \"description\": \"The size in pixels of the markers.\",\n            \"min\": 1,\n            \"max\": 20,\n            \"unit\": \"px\"\n          },\n          \"minSize\": {\n            \"default\": 12,\n            \"description\": \"For series where the size of the marker is determined by the data, this determines the smallest size a marker can be in pixels.\",\n            \"min\": 1,\n            \"max\": 20,\n            \"unit\": \"px\"\n          },\n          \"fill\": {\n            \"type\": \"string\",\n            \"description\": \"The colour to use for marker fills. If this is not specified, the markers will take their fill from the series.\"\n          },\n          \"stroke\": {\n            \"type\": \"string\",\n            \"description\": \"The colour to use for marker strokes. If this is not specified, the markers will take their stroke from the series.\"\n          },\n          \"strokeWidth\": {\n            \"type\": \"number\",\n            \"description\": \"The width in pixels of the marker stroke. If this is not specified, the markers will take their stroke width from the series.\",\n            \"min\": 0,\n            \"max\": 10,\n            \"unit\": \"px\"\n          },\n          \"formatter\": {\n            \"type\": {\n              \"parameters\": {\n                \"datum\": \"any\",\n                \"fill\": \"string\",\n                \"stroke\": \"string\",\n                \"strokeWidth\": \"number\",\n                \"size\": \"number\",\n                \"highlighted\": \"boolean\",\n                \"xKey\": \"string\",\n                \"yKey\": \"string\"\n              },\n              \"returnType\": {\n                \"fill\": \"string\",\n                \"stroke\": \"string\",\n                \"strokeWidth\": \"number\",\n                \"size\": \"number\"\n              }\n            },\n            \"description\": \"Function used to return formatting for individual markers, based on the supplied information. If the current marker is highlighted, the `highlighted` property will be set to `true`; make sure to check this if you want to differentiate between the highlighted and un-highlighted states.\"\n          }\n        },\n        \"label\": {\n          \"meta\": {\n            \"description\": \"Configuration for the labels shown on top of data points.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not the labels should be shown.\"\n          },\n          \"color\": {\n            \"default\": \"rgba(70, 70, 70, 1)\",\n            \"description\": \"The colour to use for the labels.\"\n          },\n          \"fontStyle\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"italic\",\n              \"oblique\"\n            ],\n            \"description\": \"The font style to use for the labels.\"\n          },\n          \"fontWeight\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"bold\",\n              \"bolder\",\n              \"lighter\",\n              \"100\",\n              \"200\",\n              \"300\",\n              \"400\",\n              \"500\",\n              \"600\",\n              \"700\",\n              \"800\",\n              \"900\"\n            ],\n            \"description\": \"The font weight to use for the labels.\",\n            \"breakIndex\": 4\n          },\n          \"fontSize\": {\n            \"default\": 12,\n            \"description\": \"The font size in pixels to use for the labels.\",\n            \"min\": 1,\n            \"max\": 30,\n            \"unit\": \"px\"\n          },\n          \"fontFamily\": {\n            \"default\": \"Verdana, sans-serif\",\n            \"suggestions\": [\n              \"Verdana, sans-serif\",\n              \"Arial, sans-serif\",\n              \"Times New Roman, serif\"\n            ],\n            \"description\": \"The font family to use for the labels.\"\n          },\n          \"formatter\": {\n            \"type\": {\n              \"parameters\": {\n                \"value\": \"any\"\n              },\n              \"returnType\": \"string\"\n            },\n            \"description\": \"Function used to turn 'yKey' values into text to be displayed by a label. Be default the values are simply stringified.\"\n          }\n        },\n        \"lineDash\": {\n          \"default\": [],\n          \"type\": \"number[]\",\n          \"description\": \"Defines how the line strokes are rendered. Every number in the array specifies the length in pixels of alternating dashes and gaps. For example, `[6, 3]` means dashes with a length of `6` pixels with gaps between of `3` pixels.\"\n        },\n        \"lineDashOffset\": {\n          \"default\": 0,\n          \"type\": \"number\",\n          \"description\": \"The initial offset of the dashed lines in pixels.\"\n        },\n        \"highlightStyle\": {\n          \"meta\": {\n            \"requiresWholeObject\": true,\n            \"description\": \"Configuration for the highlighting used when the markers are hovered over.\"\n          },\n          \"fill\": {\n            \"default\": \"yellow\",\n            \"description\": \"The fill colour of the markers when hovered over. Use `undefined` for no highlight.\"\n          },\n          \"stroke\": {\n            \"type\": \"string\",\n            \"description\": \"The colour of the stroke around the markers when hovered over. Use `undefined` for no highlight.\"\n          }\n        }\n      },\n      \"area\": {\n        \"meta\": {\n          \"type\": \"IAreaSeries\",\n          \"description\": \"Configuration for area series.\"\n        },\n        \"tooltip\": {\n          \"meta\": {\n            \"description\": \"Series-specific tooltip configuration.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not to show tooltips when the series are hovered over.\"\n          },\n          \"renderer\": {\n            \"type\": {\n              \"parameters\": {\n                \"datum\": \"any\",\n                \"title?\": \"string\",\n                \"color?\": \"string\",\n                \"xKey\": \"string\",\n                \"xValue\": \"any\",\n                \"xName?\": \"string\",\n                \"yKey\": \"string\",\n                \"yValue\": \"any\",\n                \"yName?\": \"string\"\n              },\n              \"returnType\": \"string\"\n            },\n            \"description\": \"Function used to create the content for tooltips.\"\n          }\n        },\n        \"normalizedTo\": {\n          \"type\": \"number\",\n          \"description\": \"The number to normalise the area stacks to. For example, if `normalizedTo` is set to `100`, the stacks will all be scaled proportionally so that their total height is always 100.\",\n          \"min\": 1,\n          \"max\": 100\n        },\n        \"fills\": {\n          \"type\": \"string[]\",\n          \"default\": [\n            \"#f3622d\",\n            \"#fba71b\",\n            \"#57b757\",\n            \"#41a9c9\",\n            \"#4258c9\",\n            \"#9a42c8\",\n            \"#c84164\",\n            \"#888888\"\n          ],\n          \"description\": \"The colours to cycle through for the fills of the areas.\"\n        },\n        \"fillOpacity\": {\n          \"default\": 1,\n          \"description\": \"The opacity of the fill for the areas.\",\n          \"min\": 0,\n          \"max\": 1,\n          \"step\": 0.05\n        },\n        \"strokes\": {\n          \"type\": \"string[]\",\n          \"default\": [\n            \"#aa4520\",\n            \"#b07513\",\n            \"#3d803d\",\n            \"#2d768d\",\n            \"#2e3e8d\",\n            \"#6c2e8c\",\n            \"#8c2d46\",\n            \"#5f5f5f\"\n          ],\n          \"description\": \"The colours to cycle through for the strokes of the areas.\"\n        },\n        \"strokeOpacity\": {\n          \"default\": 1,\n          \"description\": \"The opacity of the stroke for the areas.\",\n          \"min\": 0,\n          \"max\": 1,\n          \"step\": 0.05\n        },\n        \"strokeWidth\": {\n          \"default\": 1,\n          \"description\": \"The width in pixels of the stroke for the areas.\",\n          \"min\": 0,\n          \"max\": 20,\n          \"unit\": \"px\"\n        },\n        \"lineDash\": {\n          \"default\": [],\n          \"type\": \"number[]\",\n          \"description\": \"Defines how the area strokes are rendered. Every number in the array specifies the length in pixels of alternating dashes and gaps. For example, `[6, 3]` means dashes with a length of `6` pixels with gaps between of `3` pixels.\"\n        },\n        \"lineDashOffset\": {\n          \"default\": 0,\n          \"type\": \"number\",\n          \"description\": \"The initial offset of the dashed lines in pixels.\"\n        },\n        \"marker\": {\n          \"meta\": {\n            \"description\": \"Configuration for the markers used in the series.\"\n          },\n          \"enabled\": {\n            \"default\": false,\n            \"description\": \"Whether or not to show markers.\"\n          },\n          \"shape\": {\n            \"type\": \"string | Marker\",\n            \"default\": \"circle\",\n            \"description\": \"The shape to use for the markers. You can also supply a custom marker by providing a `Marker` subclass.\",\n            \"options\": [\n              \"circle\",\n              \"cross\",\n              \"diamond\",\n              \"plus\",\n              \"square\",\n              \"triangle\"\n            ]\n          },\n          \"size\": {\n            \"default\": 8,\n            \"description\": \"The size in pixels of the markers.\",\n            \"min\": 1,\n            \"max\": 20,\n            \"unit\": \"px\"\n          },\n          \"minSize\": {\n            \"default\": 12,\n            \"description\": \"For series where the size of the marker is determined by the data, this determines the smallest size a marker can be in pixels.\",\n            \"min\": 1,\n            \"max\": 20,\n            \"unit\": \"px\"\n          },\n          \"fill\": {\n            \"type\": \"string\",\n            \"description\": \"The colour to use for marker fills. If this is not specified, the markers will take their fill from the series.\"\n          },\n          \"stroke\": {\n            \"type\": \"string\",\n            \"description\": \"The colour to use for marker strokes. If this is not specified, the markers will take their stroke from the series.\"\n          },\n          \"strokeWidth\": {\n            \"type\": \"number\",\n            \"description\": \"The width in pixels of the marker stroke. If this is not specified, the markers will take their stroke width from the series.\",\n            \"min\": 0,\n            \"max\": 10,\n            \"unit\": \"px\"\n          },\n          \"formatter\": {\n            \"type\": {\n              \"parameters\": {\n                \"datum\": \"any\",\n                \"fill\": \"string\",\n                \"stroke\": \"string\",\n                \"strokeWidth\": \"number\",\n                \"size\": \"number\",\n                \"highlighted\": \"boolean\",\n                \"xKey\": \"string\",\n                \"yKey\": \"string\"\n              },\n              \"returnType\": {\n                \"fill\": \"string\",\n                \"stroke\": \"string\",\n                \"strokeWidth\": \"number\",\n                \"size\": \"number\"\n              }\n            },\n            \"description\": \"Function used to return formatting for individual markers, based on the supplied information. If the current marker is highlighted, the `highlighted` property will be set to `true`; make sure to check this if you want to differentiate between the highlighted and un-highlighted states.\"\n          }\n        },\n        \"label\": {\n          \"meta\": {\n            \"description\": \"Configuration for the labels shown on top of data points.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not the labels should be shown.\"\n          },\n          \"color\": {\n            \"default\": \"rgba(70, 70, 70, 1)\",\n            \"description\": \"The colour to use for the labels.\"\n          },\n          \"fontStyle\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"italic\",\n              \"oblique\"\n            ],\n            \"description\": \"The font style to use for the labels.\"\n          },\n          \"fontWeight\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"bold\",\n              \"bolder\",\n              \"lighter\",\n              \"100\",\n              \"200\",\n              \"300\",\n              \"400\",\n              \"500\",\n              \"600\",\n              \"700\",\n              \"800\",\n              \"900\"\n            ],\n            \"description\": \"The font weight to use for the labels.\",\n            \"breakIndex\": 4\n          },\n          \"fontSize\": {\n            \"default\": 12,\n            \"description\": \"The font size in pixels to use for the labels.\",\n            \"min\": 1,\n            \"max\": 30,\n            \"unit\": \"px\"\n          },\n          \"fontFamily\": {\n            \"default\": \"Verdana, sans-serif\",\n            \"suggestions\": [\n              \"Verdana, sans-serif\",\n              \"Arial, sans-serif\",\n              \"Times New Roman, serif\"\n            ],\n            \"description\": \"The font family to use for the labels.\"\n          },\n          \"formatter\": {\n            \"type\": {\n              \"parameters\": {\n                \"value\": \"any\"\n              },\n              \"returnType\": \"string\"\n            },\n            \"description\": \"Function used to turn 'yKey' values into text to be displayed by a label. Be default the values are simply stringified.\"\n          }\n        },\n        \"highlightStyle\": {\n          \"meta\": {\n            \"requiresWholeObject\": true,\n            \"description\": \"Configuration for the highlighting used when the markers are hovered over.\"\n          },\n          \"fill\": {\n            \"default\": \"yellow\",\n            \"description\": \"The fill colour of the markers when hovered over. Use `undefined` for no highlight.\"\n          },\n          \"stroke\": {\n            \"type\": \"string\",\n            \"description\": \"The colour of the stroke around the markers when hovered over. Use `undefined` for no highlight.\"\n          }\n        },\n        \"shadow\": {\n          \"meta\": {\n            \"description\": \"Configuration for the shadow used behind the chart series.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not the shadow is visible.\"\n          },\n          \"color\": {\n            \"default\": \"rgba(0, 0, 0, 0.5)\",\n            \"description\": \"The colour of the shadow.\"\n          },\n          \"xOffset\": {\n            \"default\": 0,\n            \"description\": \"The horizontal offset in pixels for the shadow.\",\n            \"min\": -20,\n            \"max\": 20,\n            \"unit\": \"px\"\n          },\n          \"yOffset\": {\n            \"default\": 0,\n            \"description\": \"The vertical offset in pixels for the shadow.\",\n            \"min\": -20,\n            \"max\": 20,\n            \"unit\": \"px\"\n          },\n          \"blur\": {\n            \"default\": 5,\n            \"description\": \"The radius of the shadow's blur, given in pixels.\",\n            \"min\": 0,\n            \"max\": 20,\n            \"unit\": \"px\"\n          }\n        }\n      },\n      \"scatter\": {\n        \"meta\": {\n          \"type\": \"IScatterSeries\",\n          \"description\": \"Configuration for scatter/bubble series.\"\n        },\n        \"tooltip\": {\n          \"meta\": {\n            \"description\": \"Series-specific tooltip configuration.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not to show tooltips when the series are hovered over.\"\n          },\n          \"renderer\": {\n            \"type\": {\n              \"parameters\": {\n                \"datum\": \"any\",\n                \"title?\": \"string\",\n                \"color?\": \"string\",\n                \"xKey\": \"string\",\n                \"xValue\": \"any\",\n                \"xName?\": \"string\",\n                \"yKey\": \"string\",\n                \"yValue\": \"any\",\n                \"yName?\": \"string\",\n                \"sizeKey?\": \"string\",\n                \"sizeName?\": \"string\",\n                \"labelKey?\": \"string\",\n                \"labelName?\": \"string\"\n              },\n              \"returnType\": \"string\"\n            },\n            \"description\": \"Function used to create the content for tooltips.\"\n          }\n        },\n        \"title\": {\n          \"type\": \"string\",\n          \"description\": \"The title to use for the series. Defaults to `yName` if it exists, or `yKey` if not.\"\n        },\n        \"fill\": {\n          \"default\": \"#f3622d\",\n          \"description\": \"The colour of the fill for the markers.\"\n        },\n        \"fillOpacity\": {\n          \"default\": 1,\n          \"description\": \"The opacity of the fill for the markers.\",\n          \"min\": 0,\n          \"max\": 1,\n          \"step\": 0.05\n        },\n        \"stroke\": {\n          \"default\": \"#aa4520\",\n          \"description\": \"The colour of the stroke for the markers.\"\n        },\n        \"strokeOpacity\": {\n          \"default\": 1,\n          \"description\": \"The opacity of the stroke for the markers.\",\n          \"min\": 0,\n          \"max\": 1,\n          \"step\": 0.05\n        },\n        \"strokeWidth\": {\n          \"default\": 1,\n          \"description\": \"The width in pixels of the stroke for the markers.\",\n          \"min\": 0,\n          \"max\": 20,\n          \"unit\": \"px\"\n        },\n        \"marker\": {\n          \"meta\": {\n            \"description\": \"Configuration for the markers used in the series.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not to show markers.\"\n          },\n          \"shape\": {\n            \"type\": \"string | Marker\",\n            \"default\": \"circle\",\n            \"description\": \"The shape to use for the markers. You can also supply a custom marker by providing a `Marker` subclass.\",\n            \"options\": [\n              \"circle\",\n              \"cross\",\n              \"diamond\",\n              \"plus\",\n              \"square\",\n              \"triangle\"\n            ]\n          },\n          \"size\": {\n            \"default\": 8,\n            \"description\": \"The size in pixels of the markers.\",\n            \"min\": 1,\n            \"max\": 20,\n            \"unit\": \"px\"\n          },\n          \"minSize\": {\n            \"default\": 12,\n            \"description\": \"For series where the size of the marker is determined by the data, this determines the smallest size a marker can be in pixels.\",\n            \"min\": 1,\n            \"max\": 20,\n            \"unit\": \"px\"\n          },\n          \"fill\": {\n            \"type\": \"string\",\n            \"description\": \"The colour to use for marker fills. If this is not specified, the markers will take their fill from the series.\"\n          },\n          \"stroke\": {\n            \"type\": \"string\",\n            \"description\": \"The colour to use for marker strokes. If this is not specified, the markers will take their stroke from the series.\"\n          },\n          \"strokeWidth\": {\n            \"type\": \"number\",\n            \"description\": \"The width in pixels of the marker stroke. If this is not specified, the markers will take their stroke width from the series.\",\n            \"min\": 0,\n            \"max\": 10,\n            \"unit\": \"px\"\n          },\n          \"formatter\": {\n            \"type\": {\n              \"parameters\": {\n                \"datum\": \"any\",\n                \"fill\": \"string\",\n                \"stroke\": \"string\",\n                \"strokeWidth\": \"number\",\n                \"size\": \"number\",\n                \"highlighted\": \"boolean\",\n                \"xKey\": \"string\",\n                \"yKey\": \"string\"\n              },\n              \"returnType\": {\n                \"fill\": \"string\",\n                \"stroke\": \"string\",\n                \"strokeWidth\": \"number\",\n                \"size\": \"number\"\n              }\n            },\n            \"description\": \"Function used to return formatting for individual markers, based on the supplied information. If the current marker is highlighted, the `highlighted` property will be set to `true`; make sure to check this if you want to differentiate between the highlighted and un-highlighted states.\"\n          }\n        },\n        \"label\": {\n          \"meta\": {\n            \"description\": \"Configuration for the labels shown on top of data points.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not the labels should be shown. Note: unlike other series where a label is shown for every data point, a scatter series label is only shown if it satisfies the following constraints: it doesn't overlap any markers, it doesn't overlap other labels.\"\n          },\n          \"color\": {\n            \"default\": \"rgba(70, 70, 70, 1)\",\n            \"description\": \"The colour to use for the labels.\"\n          },\n          \"fontStyle\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"italic\",\n              \"oblique\"\n            ],\n            \"description\": \"The font style to use for the labels.\"\n          },\n          \"fontWeight\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"bold\",\n              \"bolder\",\n              \"lighter\",\n              \"100\",\n              \"200\",\n              \"300\",\n              \"400\",\n              \"500\",\n              \"600\",\n              \"700\",\n              \"800\",\n              \"900\"\n            ],\n            \"description\": \"The font weight to use for the labels.\",\n            \"breakIndex\": 4\n          },\n          \"fontSize\": {\n            \"default\": 12,\n            \"description\": \"The font size in pixels to use for the labels.\",\n            \"min\": 1,\n            \"max\": 30,\n            \"unit\": \"px\"\n          },\n          \"fontFamily\": {\n            \"default\": \"Verdana, sans-serif\",\n            \"suggestions\": [\n              \"Verdana, sans-serif\",\n              \"Arial, sans-serif\",\n              \"Times New Roman, serif\"\n            ],\n            \"description\": \"The font family to use for the labels.\"\n          }\n        },\n        \"highlightStyle\": {\n          \"meta\": {\n            \"requiresWholeObject\": true,\n            \"description\": \"Configuration for the highlighting used when the markers are hovered over.\"\n          },\n          \"fill\": {\n            \"default\": \"yellow\",\n            \"description\": \"The fill colour of the markers when hovered over. Use `undefined` for no highlight.\"\n          },\n          \"stroke\": {\n            \"type\": \"string\",\n            \"description\": \"The colour of the stroke around the markers when hovered over. Use `undefined` for no highlight.\"\n          }\n        }\n      },\n      \"pie\": {\n        \"meta\": {\n          \"type\": \"IPieSeries\",\n          \"description\": \"Configuration for pie/doughnut series.\"\n        },\n        \"tooltip\": {\n          \"meta\": {\n            \"description\": \"Series-specific tooltip configuration.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not to show tooltips when the series are hovered over.\"\n          },\n          \"renderer\": {\n            \"type\": {\n              \"parameters\": {\n                \"datum\": \"any\",\n                \"title?\": \"string\",\n                \"color?\": \"string\",\n                \"angleKey\": \"string\",\n                \"angleValue\": \"any\",\n                \"angleName?\": \"string\",\n                \"radiusKey?\": \"string\",\n                \"radiusValue?\": \"any\",\n                \"radiusName?\": \"string\",\n                \"labelKey?\": \"string\",\n                \"labelName?\": \"string\"\n              },\n              \"returnType\": \"string\"\n            },\n            \"description\": \"Function used to create the content for tooltips.\"\n          }\n        },\n        \"rotation\": {\n          \"default\": 0,\n          \"description\": \"The rotation of the pie series in degrees.\",\n          \"min\": -359,\n          \"max\": 359,\n          \"unit\": \"&deg\"\n        },\n        \"innerRadiusOffset\": {\n          \"default\": 0,\n          \"description\": \"The offset in pixels of the inner radius of the series. Used to construct doughnut charts. If this is not given, or a value of zero is given, a pie chart will be rendered.\",\n          \"min\": -50,\n          \"max\": 50,\n          \"unit\": \"px\"\n        },\n        \"outerRadiusOffset\": {\n          \"default\": 0,\n          \"description\": \"The offset in pixels of the outer radius of the series. Used to construct doughnut charts.\",\n          \"min\": -50,\n          \"max\": 50,\n          \"unit\": \"px\"\n        },\n        \"title\": {\n          \"meta\": {\n            \"description\": \"Configuration for the series title.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not the title should be shown.\"\n          },\n          \"text\": {\n            \"type\": \"string\",\n            \"description\": \"The text to show in the title.\"\n          },\n          \"color\": {\n            \"default\": \"#000000\",\n            \"description\": \"The colour to use for the title.\"\n          },\n          \"fontStyle\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"italic\",\n              \"oblique\"\n            ],\n            \"description\": \"The font style to use for the title.\"\n          },\n          \"fontWeight\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"bold\",\n              \"bolder\",\n              \"lighter\",\n              \"100\",\n              \"200\",\n              \"300\",\n              \"400\",\n              \"500\",\n              \"600\",\n              \"700\",\n              \"800\",\n              \"900\"\n            ],\n            \"description\": \"The font weight to use for the title.\",\n            \"breakIndex\": 4\n          },\n          \"fontSize\": {\n            \"default\": 10,\n            \"description\": \"The font size in pixels to use for the title.\",\n            \"min\": 1,\n            \"max\": 30,\n            \"unit\": \"px\"\n          },\n          \"fontFamily\": {\n            \"default\": \"Verdana, sans-serif\",\n            \"suggestions\": [\n              \"Verdana, sans-serif\",\n              \"Arial, sans-serif\",\n              \"Times New Roman, serif\"\n            ],\n            \"description\": \"The font family to use for the title.\"\n          }\n        },\n        \"fills\": {\n          \"type\": \"string[]\",\n          \"default\": [\n            \"#f3622d\",\n            \"#fba71b\",\n            \"#57b757\",\n            \"#41a9c9\",\n            \"#4258c9\",\n            \"#9a42c8\",\n            \"#c84164\",\n            \"#888888\"\n          ],\n          \"description\": \"The colours to cycle through for the fills of the segments.\"\n        },\n        \"fillOpacity\": {\n          \"default\": 1,\n          \"description\": \"The opacity of the fill for the segments.\",\n          \"min\": 0,\n          \"max\": 1,\n          \"step\": 0.05\n        },\n        \"strokes\": {\n          \"type\": \"string[]\",\n          \"default\": [\n            \"#aa4520\",\n            \"#b07513\",\n            \"#3d803d\",\n            \"#2d768d\",\n            \"#2e3e8d\",\n            \"#6c2e8c\",\n            \"#8c2d46\",\n            \"#5f5f5f\"\n          ],\n          \"description\": \"The colours to cycle through for the strokes of the segments.\"\n        },\n        \"strokeOpacity\": {\n          \"default\": 1,\n          \"description\": \"The opacity of the stroke for the segments.\",\n          \"min\": 0,\n          \"max\": 1,\n          \"step\": 0.05\n        },\n        \"strokeWidth\": {\n          \"default\": 1,\n          \"description\": \"The width in pixels of the stroke for the segments.\",\n          \"min\": 0,\n          \"max\": 20,\n          \"unit\": \"px\"\n        },\n        \"lineDash\": {\n          \"default\": [],\n          \"type\": \"number[]\",\n          \"description\": \"Defines how the pie strokes are rendered. Every number in the array specifies the length in pixels of alternating dashes and gaps. For example, `[6, 3]` means dashes with a length of `6` pixels with gaps between of `3` pixels.\"\n        },\n        \"lineDashOffset\": {\n          \"default\": 0,\n          \"type\": \"number\",\n          \"description\": \"The initial offset of the dashed lines in pixels.\"\n        },\n        \"highlightStyle\": {\n          \"meta\": {\n            \"requiresWholeObject\": true,\n            \"description\": \"Configuration for the highlighting used when the segments are hovered over.\"\n          },\n          \"fill\": {\n            \"default\": \"yellow\",\n            \"description\": \"The fill colour of the segments when hovered over. Use `undefined` for no highlight.\"\n          },\n          \"stroke\": {\n            \"type\": \"string\",\n            \"description\": \"The colour of the stroke around the segments when hovered over. Use `undefined` for no highlight.\"\n          }\n        },\n        \"label\": {\n          \"meta\": {\n            \"description\": \"Configuration for the labels used for the segments.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not the labels should be shown.\"\n          },\n          \"color\": {\n            \"default\": \"#000000\",\n            \"description\": \"The colour to use for the labels.\"\n          },\n          \"fontStyle\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"italic\",\n              \"oblique\"\n            ],\n            \"description\": \"The font style to use for the labels.\"\n          },\n          \"fontWeight\": {\n            \"default\": \"normal\",\n            \"options\": [\n              \"normal\",\n              \"bold\",\n              \"bolder\",\n              \"lighter\",\n              \"100\",\n              \"200\",\n              \"300\",\n              \"400\",\n              \"500\",\n              \"600\",\n              \"700\",\n              \"800\",\n              \"900\"\n            ],\n            \"description\": \"The font weight to use for the labels.\",\n            \"breakIndex\": 4\n          },\n          \"fontSize\": {\n            \"default\": 12,\n            \"description\": \"The font size in pixels to use for the labels.\",\n            \"min\": 1,\n            \"max\": 30,\n            \"unit\": \"px\"\n          },\n          \"fontFamily\": {\n            \"default\": \"Verdana, sans-serif\",\n            \"suggestions\": [\n              \"Verdana, sans-serif\",\n              \"Arial, sans-serif\",\n              \"Times New Roman, serif\"\n            ],\n            \"description\": \"The font family to use for the labels.\"\n          },\n          \"offset\": {\n            \"default\": 3,\n            \"description\": \"Distance in pixels between the callout line and the label text.\",\n            \"min\": 0,\n            \"max\": 20,\n            \"unit\": \"px\"\n          },\n          \"minAngle\": {\n            \"default\": 20,\n            \"description\": \"Minimum angle in degrees required for a segment to show a label.\",\n            \"min\": 0,\n            \"max\": 360,\n            \"unit\": \"&deg;\"\n          },\n          \"formatter\": {\n            \"type\": {\n              \"parameters\": {\n                \"value\": \"string\"\n              },\n              \"returnType\": \"string\"\n            },\n            \"description\": \"Function used to turn 'labelKey' values into text to be displayed next to each pie sector. Be default the values are simply stringified.\"\n          }\n        },\n        \"callout\": {\n          \"meta\": {\n            \"description\": \"Configuration for the callouts used with the labels for the segments.\"\n          },\n          \"colors\": {\n            \"type\": \"string[]\",\n            \"default\": [\n              \"#aa4520\",\n              \"#b07513\",\n              \"#3d803d\",\n              \"#2d768d\",\n              \"#2e3e8d\",\n              \"#6c2e8c\",\n              \"#8c2d46\",\n              \"#5f5f5f\"\n            ],\n            \"description\": \"The colours to cycle through for the strokes of the callouts.\"\n          },\n          \"strokeWidth\": {\n            \"default\": 1,\n            \"description\": \"The width in pixels of the stroke for callout lines.\",\n            \"min\": 1,\n            \"max\": 10,\n            \"unit\": \"px\"\n          },\n          \"length\": {\n            \"default\": 10,\n            \"description\": \"The length in pixels of the callout lines.\",\n            \"min\": 0,\n            \"max\": 20,\n            \"unit\": \"px\"\n          }\n        },\n        \"shadow\": {\n          \"meta\": {\n            \"description\": \"Configuration for the shadow used behind the chart series.\"\n          },\n          \"enabled\": {\n            \"default\": true,\n            \"description\": \"Whether or not the shadow is visible.\"\n          },\n          \"color\": {\n            \"default\": \"rgba(0, 0, 0, 0.5)\",\n            \"description\": \"The colour of the shadow.\"\n          },\n          \"xOffset\": {\n            \"default\": 0,\n            \"description\": \"The horizontal offset in pixels for the shadow.\",\n            \"min\": -20,\n            \"max\": 20,\n            \"unit\": \"px\"\n          },\n          \"yOffset\": {\n            \"default\": 0,\n            \"description\": \"The vertical offset in pixels for the shadow.\",\n            \"min\": -20,\n            \"max\": 20,\n            \"unit\": \"px\"\n          },\n          \"blur\": {\n            \"default\": 5,\n            \"description\": \"The radius of the shadow's blur, given in pixels.\",\n            \"min\": 0,\n            \"max\": 20,\n            \"unit\": \"px\"\n          }\n        }\n      }\n    }\n  },\n  \"axis\": {\n    \"meta\": {\n      \"displayName\": \"Common Axis Configuration\",\n      \"description\": \"This is the configuration shared by all types of axis.\"\n    },\n    \"top\": {\n      \"meta\": {\n        \"description\": \"An object with axis theme overrides for the `top` positioned axes. Same configs apply here as one level above. For example, to rotate labels by 45 degrees in 'top' positioned axes one can use `top: { label: { rotation: 45 } } }`.\"\n      }\n    },\n    \"right\": {\n      \"meta\": {\n        \"description\": \"An object with axis theme overrides for the `right` positioned axes. Same configs apply here as one level above.\"\n      }\n    },\n    \"bottom\": {\n      \"meta\": {\n        \"description\": \"An object with axis theme overrides for the `bottom` positioned axes. Same configs apply here as one level above.\"\n      }\n    },\n    \"left\": {\n      \"meta\": {\n        \"description\": \"An object with axis theme overrides for the `left` positioned axes. Same configs apply here as one level above.\"\n      }\n    },\n    \"thickness\": {\n      \"type\": \"number\",\n      \"description\": \"If set to a non-zero value, the axis will have the specified thickness regardless of label size.\",\n      \"default\": 0\n    },\n    \"nice\": {\n      \"type\": \"boolean\",\n      \"default\": true,\n      \"description\": \"If 'true', the range will be rounded up to ensure nice equal spacing between the ticks. Applies to continuous axes only ('number', 'time').\"\n    },\n    \"min\": {\n      \"type\": \"number\",\n      \"description\": \"User override for the automatically determinted min value (based on series data). Only applied to \\\"number\\\" axes.\"\n    },\n    \"max\": {\n      \"type\": \"number\",\n      \"description\": \"User override for the automatically determinted max value (based on series data). Only applied to \\\"number\\\" axes.\"\n    },\n    \"title\": {\n      \"meta\": {\n        \"description\": \"Configuration for the title shown next to the axis.\"\n      },\n      \"enabled\": {\n        \"default\": true,\n        \"description\": \"Whether or not the axis title should be shown.\"\n      },\n      \"text\": {\n        \"type\": \"string\",\n        \"default\": \"Axis Title\",\n        \"description\": \"The text to show in the axis title.\"\n      },\n      \"color\": {\n        \"default\": \"#000000\",\n        \"description\": \"The colour to use for the axis title.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the axis title.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"bold\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the axis title.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 14,\n        \"description\": \"The font size in pixels to use for the axis title.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the axis title.\"\n      }\n    },\n    \"line\": {\n      \"meta\": {\n        \"description\": \"Configuration for the axis line.\"\n      },\n      \"width\": {\n        \"default\": 1,\n        \"description\": \"The width in pixels of the axis line.\",\n        \"min\": 0,\n        \"max\": 10,\n        \"unit\": \"px\"\n      },\n      \"color\": {\n        \"default\": \"rgba(195, 195, 195, 1)\",\n        \"description\": \"The colour of the axis line.\"\n      }\n    },\n    \"tick\": {\n      \"meta\": {\n        \"description\": \"Configuration for the axis ticks.\"\n      },\n      \"width\": {\n        \"default\": 1,\n        \"description\": \"The width in pixels of the axis ticks (and corresponding grid line).\",\n        \"min\": 0,\n        \"max\": 10,\n        \"unit\": \"px\"\n      },\n      \"size\": {\n        \"default\": 6,\n        \"description\": \"The length in pixels of the axis ticks.\",\n        \"min\": 0,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"color\": {\n        \"default\": \"rgba(195, 195, 195, 1)\",\n        \"description\": \"The colour of the axis ticks.\"\n      },\n      \"count\": {\n        \"default\": 10,\n        \"description\": \"A hint of how many ticks to use across an axis. The axis is not guaranteed to use exactly this number of ticks, but will try to use a number of ticks that is close to the number given.\",\n        \"min\": 0,\n        \"max\": 50\n      }\n    },\n    \"label\": {\n      \"meta\": {\n        \"description\": \"Configuration for the axis labels, shown next to the ticks.\"\n      },\n      \"fontStyle\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"italic\",\n          \"oblique\"\n        ],\n        \"description\": \"The font style to use for the labels.\"\n      },\n      \"fontWeight\": {\n        \"default\": \"normal\",\n        \"options\": [\n          \"normal\",\n          \"bold\",\n          \"bolder\",\n          \"lighter\",\n          \"100\",\n          \"200\",\n          \"300\",\n          \"400\",\n          \"500\",\n          \"600\",\n          \"700\",\n          \"800\",\n          \"900\"\n        ],\n        \"description\": \"The font weight to use for the labels.\",\n        \"breakIndex\": 4\n      },\n      \"fontSize\": {\n        \"default\": 12,\n        \"description\": \"The font size in pixels to use for the labels.\",\n        \"min\": 1,\n        \"max\": 30,\n        \"unit\": \"px\"\n      },\n      \"fontFamily\": {\n        \"default\": \"Verdana, sans-serif\",\n        \"suggestions\": [\n          \"Verdana, sans-serif\",\n          \"Arial, sans-serif\",\n          \"Times New Roman, serif\"\n        ],\n        \"description\": \"The font family to use for the labels.\"\n      },\n      \"color\": {\n        \"default\": \"#000000\",\n        \"description\": \"The colour to use for the labels.\"\n      },\n      \"padding\": {\n        \"default\": 5,\n        \"description\": \"Padding in pixels between the axis label and the tick.\",\n        \"min\": 0,\n        \"max\": 20,\n        \"unit\": \"px\"\n      },\n      \"rotation\": {\n        \"default\": 0,\n        \"description\": \"The rotation of the axis labels in degrees.\",\n        \"min\": -359,\n        \"max\": 359,\n        \"unit\": \"&deg;\"\n      },\n      \"format\": {\n        \"type\": \"string\",\n        \"description\": \"Format string used when rendering labels for time axes. For more information on the structure of the string, [click here](/charts-axes/#time-label-format-string).\"\n      },\n      \"formatter\": {\n        \"type\": {\n          \"parameters\": {\n            \"value\": \"any\",\n            \"index\": \"number\",\n            \"fractionDigits\": \"number\",\n            \"formatter\": \"(x: any) => string\"\n          },\n          \"returnType\": \"string\"\n        },\n        \"description\": \"Function used to render axis labels. If `value` is a number, `fractionDigits` will also be provided, which indicates the number of fractional digits used in the step between ticks; for example, a tick step of `0.0005` would have `fractionDigits` set to `4`.\"\n      }\n    },\n    \"gridStyle\": {\n      \"meta\": {\n        \"requiresWholeObject\": true,\n        \"description\": \"Configuration of the lines used to form the grid in the chart area.\"\n      },\n      \"stroke\": {\n        \"default\": \"rgba(195, 195, 195, 1)\",\n        \"description\": \"The colour of the grid line.\"\n      },\n      \"lineDash\": {\n        \"default\": [\n          4,\n          2\n        ],\n        \"type\": \"number[]\",\n        \"description\": \"Defines how the gridlines are rendered. Every number in the array specifies the length in pixels of alternating dashes and gaps. For example, `[6, 3]` means dashes with a length of `6` pixels with gaps between of `3` pixels.\"\n      }\n    }\n  },\n  \"series\": {\n    \"meta\": {\n      \"displayName\": \"Common Series Configuration\",\n      \"description\": \"This is the common configuration shared by all types of series.\"\n    },\n    \"visible\": {\n      \"default\": true,\n      \"description\": \"Whether or not to display the series.\"\n    },\n    \"showInLegend\": {\n      \"default\": true,\n      \"description\": \"Whether or not to include the series in the legend.\"\n    },\n    \"cursor\": {\n      \"type\": \"string\",\n      \"default\": \"default\",\n      \"description\": \"The cursor to use for hovered series items (such as bar segments or line markers). This config is identical to the CSS `cursor` property.\"\n    },\n    \"listeners\": {\n      \"type\": \"Object\",\n      \"description\": \"A map of event names to event listener functions. The keys can be one of the following: `nodeClick`\"\n    }\n  }\n}"}},{"relativePath":"grid-api/interfaces.AUTO.json","internal":{"content":"{\n  \"ApplyColumnStateParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"state?\": \"ColumnState[]\",\n      \"applyOrder?\": \"boolean\",\n      \"defaultState?\": \"ColumnState\"\n    },\n    \"docs\": {\n      \"state?\": \"/** The state from `getColumnState` */\",\n      \"applyOrder?\": \"/** Whether column order should be applied */\",\n      \"defaultState?\": \"/** State to apply to columns where state is missing for those columns */\"\n    }\n  },\n  \"ColumnResizeSet\": {\n    \"meta\": {},\n    \"type\": { \"columns\": \"Column[]\", \"ratios\": \"number[]\", \"width\": \"number\" }\n  },\n  \"ColumnState\": {\n    \"meta\": {},\n    \"type\": {\n      \"colId?\": \"string\",\n      \"hide?\": \"boolean | null\",\n      \"width?\": \"number\",\n      \"flex?\": \"number | null\",\n      \"sort?\": \"string | null\",\n      \"sortIndex?\": \"number | null\",\n      \"aggFunc?\": \"string | IAggFunc | null\",\n      \"pivot?\": \"boolean | null\",\n      \"pivotIndex?\": \"number | null\",\n      \"pinned?\": \"boolean | string | 'left' | 'right' | null\",\n      \"rowGroup?\": \"boolean | null\",\n      \"rowGroupIndex?\": \"number | null\"\n    },\n    \"docs\": {\n      \"colId?\": \"/** ID of the column */\",\n      \"hide?\": \"/** True if the column is hidden */\",\n      \"width?\": \"/** Width of the column in pixels */\",\n      \"flex?\": \"/** Column's flex if flex is set */\",\n      \"sort?\": \"/** Sort applied to the column */\",\n      \"sortIndex?\": \"/** The order of the sort, if sorting by many columns */\",\n      \"aggFunc?\": \"/** The aggregation function applied */\",\n      \"pivot?\": \"/** True if pivot active */\",\n      \"pivotIndex?\": \"/** The order of the pivot, if pivoting by many columns */\",\n      \"pinned?\": \"/** Set if column is pinned */\",\n      \"rowGroup?\": \"/** True if row group active */\",\n      \"rowGroupIndex?\": \"/** The order of the row group, if grouping by many columns */\"\n    }\n  },\n  \"ComponentMetadata\": {\n    \"meta\": {},\n    \"type\": {\n      \"mandatoryMethodList\": \"string[]\",\n      \"optionalMethodList\": \"string[]\",\n      \"functionAdapter?\": \"(callback: any) => { new (): IComponent<any>; }\"\n    }\n  },\n  \"ComponentType\": {\n    \"meta\": {},\n    \"type\": { \"propertyName\": \"string\", \"isCellRenderer()\": \"boolean\" }\n  },\n  \"FrameworkComponentWrapper\": {\n    \"meta\": {\n      \"doc\": \"/** B the business interface (ie IHeader)\\n * A the agGridComponent interface (ie IHeaderComp). The final object acceptable by ag-grid */\"\n    },\n    \"type\": {\n      \"wrap(frameworkComponent: { new (): any; } | null, methodList: string[], optionalMethodList: string[], componentType: ComponentType, componentName?: string | null)\": \"A\"\n    }\n  },\n  \"WrappableInterface\": {\n    \"meta\": {},\n    \"type\": {\n      \"hasMethod(name: string)\": \"boolean\",\n      \"callMethod(name: string, args: IArguments)\": \"void\",\n      \"addMethod(name: string, callback: Function)\": \"void\"\n    }\n  },\n  \"DefinitionObject\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"GridOptions | ColDef | ColGroupDef | IFilterDef | ISetFilterParams | IRichCellEditorParams | ToolPanelDef | StatusPanelDef\"\n  },\n  \"UserCompDetails\": {\n    \"meta\": {},\n    \"type\": {\n      \"componentClass\": \"any\",\n      \"componentFromFramework\": \"boolean\",\n      \"params\": \"any\"\n    }\n  },\n  \"RegisteredComponent\": {\n    \"meta\": {\n      \"doc\": \"/** B the business interface (ie IHeader)\\n * A the agGridComponent interface (ie IHeaderComp). The final object acceptable by ag-grid */\"\n    },\n    \"type\": { \"component\": \"any\", \"componentFromFramework\": \"boolean\" }\n  },\n  \"DeprecatedComponentName\": {\n    \"meta\": {},\n    \"type\": { \"propertyHolder\": \"string\", \"newComponentName\": \"string\" }\n  },\n  \"ContextParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"providedBeanInstances\": \"any\",\n      \"beanClasses\": \"any[]\",\n      \"debug\": \"boolean\"\n    }\n  },\n  \"ComponentMeta\": {\n    \"meta\": {},\n    \"type\": { \"componentClass\": \"new () => Object\", \"componentName\": \"string\" }\n  },\n  \"ControllerMeta\": {\n    \"meta\": {},\n    \"type\": {\n      \"controllerClass\": \"new () => Object\",\n      \"controllerName\": \"string\"\n    }\n  },\n  \"BeanWrapper\": {\n    \"meta\": {},\n    \"type\": { \"bean\": \"any\", \"beanInstance\": \"any\", \"beanName\": \"any\" }\n  },\n  \"ReadyParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"gridCtrl\": \"GridCtrl\",\n      \"gridBodyCtrl\": \"GridBodyCtrl\",\n      \"centerRowContainerCtrl\": \"RowContainerCtrl\",\n      \"leftRowContainerCtrl\": \"RowContainerCtrl\",\n      \"rightRowContainerCtrl\": \"RowContainerCtrl\",\n      \"bottomCenterRowContainerCtrl\": \"RowContainerCtrl\",\n      \"bottomLeftRowContainerCtrl\": \"RowContainerCtrl\",\n      \"bottomRightRowContainerCtrl\": \"RowContainerCtrl\",\n      \"topCenterRowContainerCtrl\": \"RowContainerCtrl\",\n      \"topLeftRowContainerCtrl\": \"RowContainerCtrl\",\n      \"topRightRowContainerCtrl\": \"RowContainerCtrl\",\n      \"fakeHScrollCtrl\": \"FakeHScrollCtrl\",\n      \"headerRootComp\": \"HeaderRootComp\"\n    }\n  },\n  \"DragItem\": {\n    \"meta\": {},\n    \"type\": {\n      \"rowNode?\": \"RowNode\",\n      \"rowNodes?\": \"RowNode[]\",\n      \"columns?\": \"Column[]\",\n      \"visibleState?\": \"{ [key: string]: boolean; }\"\n    },\n    \"docs\": {\n      \"rowNode?\": \"/** When dragging a row, this contains the row node being dragged\\n * When dragging multiple rows, this contains the row that started the drag. */\",\n      \"rowNodes?\": \"/** When dragging multiple rows, this contains all rows being dragged */\",\n      \"columns?\": \"/** When dragging columns, this contains the columns being dragged */\",\n      \"visibleState?\": \"/** When dragging columns, this contains the visible state of the columns */\"\n    }\n  },\n  \"DragSourceType\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\"ToolPanel\", \"HeaderCell\", \"RowDrag\", \"ChartPanel\"]\n  },\n  \"DragSource\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"DragSourceType\",\n      \"eElement\": \"HTMLElement\",\n      \"getDragItem\": \"() => DragItem\",\n      \"dragItemName\": \"string | (() => string) | null\",\n      \"defaultIconName?\": \"string\",\n      \"dragSourceDropTarget?\": \"DropTarget\",\n      \"dragSourceDomDataKey?\": \"string\",\n      \"dragStartPixels?\": \"number\",\n      \"onDragStarted?\": \"() => void\",\n      \"onDragStopped?\": \"() => void\"\n    },\n    \"docs\": {\n      \"type\": \"/** The type of the drag source, used by the drop target to know where the\\n * drag originated from. */\",\n      \"eElement\": \"/** Element which, when dragged, will kick off the DnD process */\",\n      \"getDragItem\": \"/** If eElement is dragged, then the dragItem is the object that gets passed around. */\",\n      \"dragItemName\": \"/** This name appears in the ghost icon when dragging. */\",\n      \"defaultIconName?\": \"/** Icon to show when not over a drop zone */\",\n      \"dragSourceDropTarget?\": \"/** The drop target associated with this dragSource. When dragging starts, this\\n * target does not get an onDragEnter event. */\",\n      \"dragSourceDomDataKey?\": \"/** The drag source DOM Data Key, this is useful to detect if the origin grid is the same\\n * as the target grid. */\",\n      \"dragStartPixels?\": \"/** After how many pixels of dragging should the drag operation start. Default is 4. */\",\n      \"onDragStarted?\": \"/** Callback for drag started */\",\n      \"onDragStopped?\": \"/** Callback for drag stopped */\"\n    }\n  },\n  \"DropTarget\": {\n    \"meta\": {},\n    \"type\": {\n      \"getContainer()\": \"HTMLElement\",\n      \"getSecondaryContainers?()\": \"HTMLElement[][]\",\n      \"getIconName?()\": \"string | null\",\n      \"isInterestedIn(type: DragSourceType)\": \"boolean\",\n      \"onDragEnter?(params: DraggingEvent)\": \"void\",\n      \"onDragLeave?(params: DraggingEvent)\": \"void\",\n      \"onDragging?(params: DraggingEvent)\": \"void\",\n      \"onDragStop?(params: DraggingEvent)\": \"void\",\n      \"external?\": \"boolean\"\n    },\n    \"docs\": {\n      \"getContainer()\": \"/** The main container that will get the drop. */\",\n      \"getSecondaryContainers?()\": \"/** If any secondary containers. For example when moving columns in AG Grid, we listen for drops\\n * in the header as well as the body (main rows and pinned rows) of the grid. */\",\n      \"getIconName?()\": \"/** Icon to show when drag is over */\",\n      \"onDragEnter?(params: DraggingEvent)\": \"/** Callback for when drag enters */\",\n      \"onDragLeave?(params: DraggingEvent)\": \"/** Callback for when drag leaves */\",\n      \"onDragging?(params: DraggingEvent)\": \"/** Callback for when dragging */\",\n      \"onDragStop?(params: DraggingEvent)\": \"/** Callback for when drag stops */\"\n    }\n  },\n  \"VerticalDirection\": { \"meta\": { \"isEnum\": true }, \"type\": [\"Up\", \"Down\"] },\n  \"HorizontalDirection\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\"Left\", \"Right\"]\n  },\n  \"DraggingEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"event\": \"MouseEvent\",\n      \"x\": \"number\",\n      \"y\": \"number\",\n      \"vDirection\": \"VerticalDirection | null\",\n      \"hDirection\": \"HorizontalDirection | null\",\n      \"dragSource\": \"DragSource\",\n      \"dragItem\": \"DragItem\",\n      \"fromNudge\": \"boolean\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"dropZoneTarget\": \"HTMLElement\"\n    }\n  },\n  \"DragSourceAndListener\": {\n    \"meta\": {},\n    \"type\": {\n      \"dragSource\": \"DragListenerParams\",\n      \"mouseDownListener\": \"(mouseEvent: MouseEvent) => void\",\n      \"touchEnabled\": \"boolean\",\n      \"touchStartListener\": \"((touchEvent: TouchEvent) => void) | null\"\n    }\n  },\n  \"DragListenerParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"dragStartPixels?\": \"number\",\n      \"eElement\": \"HTMLElement\",\n      \"skipMouseEvent?\": \"(mouseEvent: MouseEvent) => boolean\",\n      \"onDragStart\": \"(mouseEvent: MouseEvent | Touch) => void\",\n      \"onDragStop\": \"(mouseEvent: MouseEvent | Touch) => void\",\n      \"onDragging\": \"(mouseEvent: MouseEvent | Touch) => void\"\n    },\n    \"docs\": {\n      \"dragStartPixels?\": \"/** After how many pixels of dragging should the drag operation start. Default is 4px. */\",\n      \"eElement\": \"/** Dom element to add the drag handling to */\",\n      \"skipMouseEvent?\": \"/** Some places may wish to ignore certain events, eg range selection ignores shift clicks */\",\n      \"onDragStart\": \"/** Callback for drag starting */\",\n      \"onDragStop\": \"/** Callback for drag stopping */\",\n      \"onDragging\": \"/** Callback for mouse move while dragging */\"\n    }\n  },\n  \"CellPosition\": {\n    \"meta\": {},\n    \"type\": {\n      \"rowIndex\": \"number\",\n      \"rowPinned\": \"string | null\",\n      \"column\": \"Column\"\n    },\n    \"docs\": {\n      \"rowIndex\": \"/** A positive number from 0 to n, where n is the last row the grid is rendering\\n * or -1 if you want to navigate to the grid header */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or undefined/null (for not pinned) */\",\n      \"column\": \"/** The grid column */\"\n    }\n  },\n  \"AbstractColDef\": {\n    \"meta\": {\n      \"doc\": \"/** *********************************************************************\\n * Don't forget to update ColDefUtil if changing this class. PLEASE! *\\n * ********************************************************************* */\\n/** AbstractColDef can be a group or a column definition */\"\n    },\n    \"type\": {\n      \"headerName?\": \"string\",\n      \"columnGroupShow?\": \"string\",\n      \"headerClass?\": \"HeaderClass\",\n      \"toolPanelClass?\": \"ToolPanelClass\",\n      \"headerValueGetter?\": \"string | Function\",\n      \"pivotKeys?\": \"string[]\",\n      \"suppressColumnsToolPanel?\": \"boolean\",\n      \"suppressFiltersToolPanel?\": \"boolean\",\n      \"headerTooltip?\": \"string\",\n      \"tooltipComponent?\": \"{ new (): ITooltipComp; } | string\",\n      \"tooltipComponentFramework?\": \"any\",\n      \"tooltipComponentParams?\": \"any\",\n      \"suppressHeaderKeyboardEvent?\": \"(params: SuppressHeaderKeyboardEventParams) => boolean\"\n    },\n    \"docs\": {\n      \"headerName?\": \"/** The name to render in the column header */\",\n      \"columnGroupShow?\": \"/** Whether to show the column when the group is open / closed. */\",\n      \"headerClass?\": \"/** CSS class for the header */\",\n      \"toolPanelClass?\": \"/** CSS class for the toolPanel */\",\n      \"headerValueGetter?\": \"/** Expression or function to get the cells value. */\",\n      \"pivotKeys?\": \"/** Never set this, it is used internally by grid when doing in-grid pivoting */\",\n      \"suppressColumnsToolPanel?\": \"/** Set to true to not include this column in the Columns Tool Panel */\",\n      \"suppressFiltersToolPanel?\": \"/** Set to true to not include this column / filter in the Filters Tool Panel */\",\n      \"headerTooltip?\": \"/** Tooltip for the column header */\",\n      \"suppressHeaderKeyboardEvent?\": \"/** Allows the user to suppress certain keyboard events in the grid header */\"\n    }\n  },\n  \"ColGroupDef\": {\n    \"meta\": {},\n    \"type\": {\n      \"headerName?\": \"string\",\n      \"columnGroupShow?\": \"string\",\n      \"headerClass?\": \"HeaderClass\",\n      \"toolPanelClass?\": \"ToolPanelClass\",\n      \"headerValueGetter?\": \"string | Function\",\n      \"pivotKeys?\": \"string[]\",\n      \"suppressColumnsToolPanel?\": \"boolean\",\n      \"suppressFiltersToolPanel?\": \"boolean\",\n      \"headerTooltip?\": \"string\",\n      \"tooltipComponent?\": \"{ new (): ITooltipComp; } | string\",\n      \"tooltipComponentFramework?\": \"any\",\n      \"tooltipComponentParams?\": \"any\",\n      \"suppressHeaderKeyboardEvent?\": \"(params: SuppressHeaderKeyboardEventParams) => boolean\",\n      \"children\": \"(ColDef | ColGroupDef)[]\",\n      \"groupId?\": \"string\",\n      \"openByDefault?\": \"boolean\",\n      \"marryChildren?\": \"boolean\",\n      \"headerGroupComponent?\": \"string | { new (): IHeaderGroupComp; }\",\n      \"headerGroupComponentFramework?\": \"any\",\n      \"headerGroupComponentParams?\": \"any\"\n    },\n    \"docs\": {\n      \"headerName?\": \"/** The name to render in the column header */\",\n      \"columnGroupShow?\": \"/** Whether to show the column when the group is open / closed. */\",\n      \"headerClass?\": \"/** CSS class for the header */\",\n      \"toolPanelClass?\": \"/** CSS class for the toolPanel */\",\n      \"headerValueGetter?\": \"/** Expression or function to get the cells value. */\",\n      \"pivotKeys?\": \"/** Never set this, it is used internally by grid when doing in-grid pivoting */\",\n      \"suppressColumnsToolPanel?\": \"/** Set to true to not include this column in the Columns Tool Panel */\",\n      \"suppressFiltersToolPanel?\": \"/** Set to true to not include this column / filter in the Filters Tool Panel */\",\n      \"headerTooltip?\": \"/** Tooltip for the column header */\",\n      \"suppressHeaderKeyboardEvent?\": \"/** Allows the user to suppress certain keyboard events in the grid header */\",\n      \"children\": \"/** Columns in this group */\",\n      \"groupId?\": \"/** Group ID */\",\n      \"openByDefault?\": \"/** Open by Default */\",\n      \"marryChildren?\": \"/** If true, group cannot be broken up by column moving, child columns will always appear side by side, however you can rearrange child columns within the group */\",\n      \"headerGroupComponent?\": \"/** The custom header group component to be used for rendering the component header. If none specified the default AG Grid is used* */\",\n      \"headerGroupComponentFramework?\": \"/** The custom header group component to be used for rendering the component header in the hosting framework (ie: React/Angular). If none specified the default AG Grid is used* */\",\n      \"headerGroupComponentParams?\": \"/** The custom header group component to be used for rendering the component header. If none specified the default AG Grid is used* */\"\n    }\n  },\n  \"IAggFunc\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": { \"arguments\": { \"params\": \"IAggFuncParams\" }, \"returnType\": \"any\" }\n  },\n  \"IAggFuncParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"values\": \"any[]\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"rowNode\": \"RowNode\",\n      \"data\": \"any\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"values\": \"/** Values to aggregate */\",\n      \"column\": \"/** Column the aggregation function is working on */\",\n      \"colDef\": \"/** ColDef of the aggregation column */\",\n      \"rowNode\": \"/** The parent RowNode, where the aggregation result will be shown */\",\n      \"data\": \"/** data (if any) of the parent RowNode */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"HeaderClassParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"api\": \"GridApi\",\n      \"colDef\": \"AbstractColDef\",\n      \"column?\": \"Column | null\",\n      \"columnGroup?\": \"ColumnGroup | OriginalColumnGroup | null\",\n      \"context?\": \"any\"\n    }\n  },\n  \"HeaderClass\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"string | string[] | ((params: HeaderClassParams) => string | string[])\"\n  },\n  \"ToolPanelClassParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"api\": \"GridApi\",\n      \"colDef\": \"AbstractColDef\",\n      \"column?\": \"Column | null\",\n      \"columnGroup?\": \"ColumnGroup | OriginalColumnGroup | null\",\n      \"context?\": \"any\"\n    }\n  },\n  \"ToolPanelClass\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"string | string[] | ((params: ToolPanelClassParams) => string | string[])\"\n  },\n  \"ColDef\": {\n    \"meta\": {\n      \"doc\": \"/** *********************************************************************\\n * Don't forget to update ColDefUtil if changing this class. PLEASE! *\\n * ********************************************************************* */\"\n    },\n    \"type\": {\n      \"filter?\": \"IFilterType\",\n      \"filterFramework?\": \"any\",\n      \"filterParams?\": \"any\",\n      \"floatingFilterComponent?\": \"IFloatingFilterType\",\n      \"floatingFilterComponentParams?\": \"any\",\n      \"floatingFilterComponentFramework?\": \"any\",\n      \"headerName?\": \"string\",\n      \"columnGroupShow?\": \"string\",\n      \"headerClass?\": \"HeaderClass\",\n      \"toolPanelClass?\": \"ToolPanelClass\",\n      \"headerValueGetter?\": \"string | Function\",\n      \"pivotKeys?\": \"string[]\",\n      \"suppressColumnsToolPanel?\": \"boolean\",\n      \"suppressFiltersToolPanel?\": \"boolean\",\n      \"headerTooltip?\": \"string\",\n      \"tooltipComponent?\": \"{ new (): ITooltipComp; } | string\",\n      \"tooltipComponentFramework?\": \"any\",\n      \"tooltipComponentParams?\": \"any\",\n      \"suppressHeaderKeyboardEvent?\": \"(params: SuppressHeaderKeyboardEventParams) => boolean\",\n      \"colId?\": \"string\",\n      \"sort?\": \"string | null\",\n      \"initialSort?\": \"string\",\n      \"sortIndex?\": \"number | null\",\n      \"initialSortIndex?\": \"number\",\n      \"sortedAt?\": \"number\",\n      \"sortingOrder?\": \"(string | null)[]\",\n      \"field?\": \"string\",\n      \"type?\": \"string | string[]\",\n      \"hide?\": \"boolean\",\n      \"initialHide?\": \"boolean\",\n      \"pinned?\": \"boolean | string | null\",\n      \"initialPinned?\": \"boolean | string\",\n      \"tooltipField?\": \"string\",\n      \"tooltipValueGetter?\": \"(params: ITooltipParams) => string\",\n      \"valueGetter?\": \"string | ValueGetterFunc\",\n      \"filterValueGetter?\": \"string | ValueGetterFunc\",\n      \"valueSetter?\": \"string | ValueSetterFunc\",\n      \"keyCreator?\": \"(value: any) => string\",\n      \"width?\": \"number\",\n      \"initialWidth?\": \"number\",\n      \"minWidth?\": \"number\",\n      \"maxWidth?\": \"number\",\n      \"flex?\": \"number\",\n      \"initialFlex?\": \"number\",\n      \"autoHeight?\": \"boolean\",\n      \"wrapText?\": \"boolean\",\n      \"cellClass?\": \"string | string[] | CellClassFunc\",\n      \"cellStyle?\": \"{ [cssProperty: string]: string; } | CellStyleFunc\",\n      \"cellRenderer?\": \"{ new (): ICellRendererComp; } | ICellRendererFunc | string\",\n      \"cellRendererFramework?\": \"any\",\n      \"cellRendererParams?\": \"any\",\n      \"cellRendererSelector?\": \"CellRendererSelectorFunc\",\n      \"cellEditor?\": \"string | { new (): ICellEditorComp; }\",\n      \"cellEditorFramework?\": \"any\",\n      \"cellEditorParams?\": \"any\",\n      \"cellEditorSelector?\": \"CellEditorSelectorFunc\",\n      \"cellEditorPopup?\": \"boolean\",\n      \"cellEditorPopupPosition?\": \"string\",\n      \"pinnedRowCellRenderer?\": \"{ new (): ICellRendererComp; } | ICellRendererFunc | string\",\n      \"pinnedRowCellRendererFramework?\": \"any\",\n      \"pinnedRowCellRendererParams?\": \"any\",\n      \"valueFormatter?\": \"string | ValueFormatterFunc\",\n      \"pinnedRowValueFormatter?\": \"string | ValueFormatterFunc\",\n      \"valueParser?\": \"string | ValueParserFunc\",\n      \"aggFunc?\": \"string | IAggFunc | null\",\n      \"initialAggFunc?\": \"string | IAggFunc\",\n      \"allowedAggFuncs?\": \"string[]\",\n      \"rowGroupIndex?\": \"number | null\",\n      \"rowGroup?\": \"boolean\",\n      \"initialRowGroupIndex?\": \"number\",\n      \"initialRowGroup?\": \"boolean\",\n      \"showRowGroup?\": \"string | boolean\",\n      \"pivotIndex?\": \"number | null\",\n      \"pivot?\": \"boolean\",\n      \"initialPivotIndex?\": \"number\",\n      \"initialPivot?\": \"boolean\",\n      \"comparator?\": \"(valueA: any, valueB: any, nodeA: RowNode, nodeB: RowNode, isInverted: boolean) => number\",\n      \"equals?\": \"(valueA: any, valueB: any) => boolean\",\n      \"pivotComparator?\": \"(valueA: string, valueB: string) => number\",\n      \"checkboxSelection?\": \"boolean | CheckboxSelectionCallback\",\n      \"headerCheckboxSelection?\": \"boolean | HeaderCheckboxSelectionCallback\",\n      \"headerCheckboxSelectionFilteredOnly?\": \"boolean\",\n      \"rowDrag?\": \"boolean | RowDragCallback\",\n      \"rowDragText?\": \"(params: IRowDragItem, dragItemCount: number) => string\",\n      \"dndSource?\": \"boolean | DndSourceCallback\",\n      \"dndSourceOnRowDrag?\": \"(params: { rowNode: RowNode; dragEvent: DragEvent; }) => void\",\n      \"suppressMenu?\": \"boolean\",\n      \"menuTabs?\": \"string[]\",\n      \"sortable?\": \"boolean\",\n      \"suppressMovable?\": \"boolean\",\n      \"suppressCellFlash?\": \"boolean\",\n      \"lockPosition?\": \"boolean\",\n      \"lockVisible?\": \"boolean\",\n      \"lockPinned?\": \"boolean\",\n      \"unSortIcon?\": \"boolean\",\n      \"suppressSizeToFit?\": \"boolean\",\n      \"resizable?\": \"boolean\",\n      \"suppressAutoSize?\": \"boolean\",\n      \"suppressKeyboardEvent?\": \"(params: SuppressKeyboardEventParams) => boolean\",\n      \"enableRowGroup?\": \"boolean\",\n      \"enablePivot?\": \"boolean\",\n      \"enableValue?\": \"boolean\",\n      \"editable?\": \"boolean | EditableCallback\",\n      \"colSpan?\": \"(params: ColSpanParams) => number\",\n      \"rowSpan?\": \"(params: RowSpanParams) => number\",\n      \"suppressPaste?\": \"boolean | SuppressPasteCallback\",\n      \"suppressNavigable?\": \"boolean | SuppressNavigableCallback\",\n      \"getQuickFilterText?\": \"(params: GetQuickFilterTextParams) => string\",\n      \"newValueHandler?\": \"(params: NewValueParams) => boolean\",\n      \"singleClickEdit?\": \"boolean\",\n      \"template?\": \"string\",\n      \"templateUrl?\": \"string\",\n      \"cellClassRules?\": \"CellClassRules\",\n      \"onCellValueChanged?\": \"(event: NewValueParams) => void\",\n      \"onCellClicked?\": \"(event: CellClickedEvent) => void\",\n      \"onCellDoubleClicked?\": \"(event: CellDoubleClickedEvent) => void\",\n      \"onCellContextMenu?\": \"(event: CellContextMenuEvent) => void\",\n      \"icons?\": \"{ [key: string]: Function | string; }\",\n      \"enableCellChangeFlash?\": \"boolean\",\n      \"pivotValueColumn?\": \"Column | null\",\n      \"pivotTotalColumnIds?\": \"string[]\",\n      \"headerComponent?\": \"string | { new (): any; }\",\n      \"headerComponentFramework?\": \"any\",\n      \"headerComponentParams?\": \"any\",\n      \"floatingFilter?\": \"boolean\",\n      \"refData?\": \"{ [key: string]: string; }\",\n      \"chartDataType?\": \"'category' | 'series' | 'time' | 'excluded'\",\n      \"columnsMenuParams?\": \"ColumnsMenuParams\"\n    },\n    \"docs\": {\n      \"filter?\": \"/** One of the built in filter names: [set, number, text, date], or a filter function */\",\n      \"filterParams?\": \"/** The filter params are specific to each filter! */\",\n      \"floatingFilterComponent?\": \"/** The custom component to be used for rendering the floating filter. If none is specified the default AG Grid is used. * */\",\n      \"headerName?\": \"/** The name to render in the column header */\",\n      \"columnGroupShow?\": \"/** Whether to show the column when the group is open / closed. */\",\n      \"headerClass?\": \"/** CSS class for the header */\",\n      \"toolPanelClass?\": \"/** CSS class for the toolPanel */\",\n      \"headerValueGetter?\": \"/** Expression or function to get the cells value. */\",\n      \"pivotKeys?\": \"/** Never set this, it is used internally by grid when doing in-grid pivoting */\",\n      \"suppressColumnsToolPanel?\": \"/** Set to true to not include this column in the Columns Tool Panel */\",\n      \"suppressFiltersToolPanel?\": \"/** Set to true to not include this column / filter in the Filters Tool Panel */\",\n      \"headerTooltip?\": \"/** Tooltip for the column header */\",\n      \"suppressHeaderKeyboardEvent?\": \"/** Allows the user to suppress certain keyboard events in the grid header */\",\n      \"colId?\": \"/** The unique ID to give the column. This is optional. If missing, the ID will default to the field.\\n * If both field and colId are missing, a unique ID will be generated.\\n * This ID is used to identify the column in the API for sorting, filtering etc. */\",\n      \"sort?\": \"/** If sorting by default, set it here. Set to 'asc' or 'desc' */\",\n      \"sortIndex?\": \"/** If sorting more than one column by default, specifies order in which the sorting should be applied. */\",\n      \"sortedAt?\": \"/** @deprecated since v24 - use sortIndex instead\\n */\",\n      \"sortingOrder?\": \"/** The sort order, provide an array with any of the following in any order ['asc','desc',null] */\",\n      \"field?\": \"/** The field of the row to get the cells data from */\",\n      \"type?\": \"/** A comma separated string or array of strings containing ColumnType keys which can be used as a template for a column.\\n * This helps to reduce duplication of properties when you have a lot of common column properties. */\",\n      \"hide?\": \"/** Set to true for this column to be hidden. Naturally you might think, it would make more sense to call this field 'visible' and mark it false to hide,\\n * however we want all default values to be false and we want columns to be visible by default. */\",\n      \"pinned?\": \"/** Whether this column is pinned or not. */\",\n      \"tooltipField?\": \"/** The field where we get the tooltip on the object */\",\n      \"tooltipValueGetter?\": \"/** The function used to calculate the tooltip of the object, tooltipField takes precedence */\",\n      \"valueGetter?\": \"/** Expression or function to get the cells value. */\",\n      \"filterValueGetter?\": \"/** Expression or function to get the cells value for filtering. */\",\n      \"valueSetter?\": \"/** If not using a field, then this puts the value into the cell */\",\n      \"keyCreator?\": \"/** Function to return the key for a value - use this if the value is an object (not a primitive type) and you\\n * want to a) group by this field or b) use set filter on this field. */\",\n      \"width?\": \"/** Actual width, in pixels, of the cell */\",\n      \"initialWidth?\": \"/** Default width, in pixels, of the cell */\",\n      \"minWidth?\": \"/** Min width, in pixels, of the cell */\",\n      \"maxWidth?\": \"/** Max width, in pixels, of the cell */\",\n      \"flex?\": \"/** Sets the grow factor of a column. It specifies how much of the remaining\\n * space should be assigned to the column. */\",\n      \"autoHeight?\": \"/** True if this column should stretch rows height to fit contents */\",\n      \"wrapText?\": \"/** True if this column should wrap cell contents - typically used with autoHeight */\",\n      \"cellClass?\": \"/** Class to use for the cell. Can be string, array of strings, or function. */\",\n      \"cellStyle?\": \"/** An object of css values. Or a function returning an object of css values. */\",\n      \"cellRenderer?\": \"/** A function for rendering a cell. */\",\n      \"cellEditor?\": \"/** Cell editor */\",\n      \"pinnedRowCellRenderer?\": \"/** @deprecated Use cellRendererSelector if you want a different Cell Renderer for pinned rows. Check params.node.rowPinned.\\n */\",\n      \"pinnedRowCellRendererFramework?\": \"/** @deprecated Use cellRendererSelector if you want a different Cell Renderer for pinned rows. Check params.node.rowPinned.\\n */\",\n      \"pinnedRowCellRendererParams?\": \"/** @deprecated Use cellRendererSelector if you want a different Cell Renderer for pinned rows. Check params.node.rowPinned.\\n */\",\n      \"valueFormatter?\": \"/** A function to format a value, should return a string. Not used for CSV export or copy to clipboard, only for UI cell rendering. */\",\n      \"pinnedRowValueFormatter?\": \"/** @deprecated Use valueFormatter for pinned rows, and check params.node.rowPinned.\\n */\",\n      \"valueParser?\": \"/** Gets called after editing, converts the value in the cell. */\",\n      \"aggFunc?\": \"/** Name of function to use for aggregation. One of [sum,min,max,first,last] or a function. */\",\n      \"allowedAggFuncs?\": \"/** Agg funcs allowed on this column. If missing, all installed agg funcs are allowed.\\n * Can be eg ['sum','avg']. This will restrict what the GUI allows to select only. */\",\n      \"rowGroupIndex?\": \"/** To group by this column by default, either provide an index (eg rowGroupIndex=1), or set rowGroup=true. */\",\n      \"showRowGroup?\": \"/** Set to true to have the grid place the values for the group into the cell, or put the name of a grouped column to just show that group. */\",\n      \"pivotIndex?\": \"/** To pivot by this column by default, either provide an index (eg pivotIndex=1), or set pivot=true. */\",\n      \"comparator?\": \"/** Comparator function for custom sorting. */\",\n      \"equals?\": \"/** Comparator for values, used by renderer to know if values have changed. Cells who's values have not changed don't get refreshed. */\",\n      \"pivotComparator?\": \"/** Comparator for ordering the pivot columns */\",\n      \"checkboxSelection?\": \"/** Set to true to render a selection checkbox in the column. */\",\n      \"headerCheckboxSelection?\": \"/** If true, a 'select all' checkbox will be put into the header */\",\n      \"headerCheckboxSelectionFilteredOnly?\": \"/** If true, the header checkbox selection will work on filtered items */\",\n      \"rowDrag?\": \"/** For grid row dragging, set to true to enable row dragging within the grid */\",\n      \"rowDragText?\": \"/** To configure the text to be displayed in the floating div while dragging a row when rowDrag is true */\",\n      \"dndSource?\": \"/** For native drag and drop, set to true to enable drag source */\",\n      \"dndSourceOnRowDrag?\": \"/** For native drag and drop, set to true to allow custom onRowDrag processing */\",\n      \"suppressMenu?\": \"/** Set to true if no menu should be shown for this column header. */\",\n      \"menuTabs?\": \"/** The menu tabs to show, and in which order, the valid values for this property are:\\n * filterMenuTab, generalMenuTab, columnsMenuTab * */\",\n      \"sortable?\": \"/** Set to true if sorting allowed for this column. */\",\n      \"suppressMovable?\": \"/** Set to true to not allow moving this column via dragging it's header */\",\n      \"suppressCellFlash?\": \"/** Set to true to not flash this column for value changes */\",\n      \"lockPosition?\": \"/** Set to true to make sure this column is always first. Other columns, if movable, cannot move before this column. */\",\n      \"lockVisible?\": \"/** Set to true to block the user showing / hiding the column, the column can only be shown / hidden via definitions or API */\",\n      \"lockPinned?\": \"/** Set to true to block the user pinning the column, the column can only be pinned via definitions or API */\",\n      \"unSortIcon?\": \"/** Set to true if you want the unsorted icon to be shown when no sort is applied to this column. */\",\n      \"suppressSizeToFit?\": \"/** Set to true if you want this columns width to be fixed during 'size to fit' operation. */\",\n      \"resizable?\": \"/** Set to true if this column should be resizable */\",\n      \"suppressAutoSize?\": \"/** Set to true if you do not want this column to be auto-resizable by double clicking it's edge. */\",\n      \"suppressKeyboardEvent?\": \"/** Allows the user to suppress certain keyboard events in the grid cell */\",\n      \"enableRowGroup?\": \"/** If true, GUI will allow adding this columns as a row group */\",\n      \"enablePivot?\": \"/** If true, GUI will allow adding this columns as a pivot */\",\n      \"enableValue?\": \"/** If true, GUI will allow adding this columns as a value */\",\n      \"editable?\": \"/** Set to true if this col is editable, otherwise false. Can also be a function to have different rows editable. */\",\n      \"suppressPaste?\": \"/** Set to true if this col should not be allowed take new values from the clipboard . */\",\n      \"suppressNavigable?\": \"/** Set to true if this col should not be navigable with the tab key. Can also be a function to have different rows editable. */\",\n      \"getQuickFilterText?\": \"/** To create the quick filter text for this column, if toString is not good enough on the value. */\",\n      \"newValueHandler?\": \"/** Callbacks for editing. See editing section for further details.\\n * Return true if the update was successful, or false if not.\\n * If false, then skips the UI refresh and no events are emitted.\\n * Return false if the values are the same (ie no update). */\",\n      \"singleClickEdit?\": \"/** If true, this cell will be in editing mode after first click. */\",\n      \"template?\": \"/** Cell template to use for cell. Useful for AngularJS cells. */\",\n      \"templateUrl?\": \"/** Cell template URL to load template from to use for cell. Useful for AngularJS cells. */\",\n      \"cellClassRules?\": \"/** Rules for applying css classes */\",\n      \"onCellValueChanged?\": \"/** Callbacks for editing.See editing section for further details. */\",\n      \"onCellClicked?\": \"/** Function callback, gets called when a cell is clicked. */\",\n      \"onCellDoubleClicked?\": \"/** Function callback, gets called when a cell is double clicked. */\",\n      \"onCellContextMenu?\": \"/** Function callback, gets called when a cell is right clicked. */\",\n      \"icons?\": \"/** Icons for this column. Leave blank to use default. */\",\n      \"enableCellChangeFlash?\": \"/** If true, grid will flash cell after cell is refreshed */\",\n      \"pivotValueColumn?\": \"/** Never set this, it is used internally by grid when doing in-grid pivoting */\",\n      \"pivotTotalColumnIds?\": \"/** Never set this, it is used internally by grid when doing in-grid pivoting */\",\n      \"headerComponent?\": \"/** The custom header component to be used for rendering the component header. If none specified the default AG Grid is used* */\",\n      \"headerComponentFramework?\": \"/** The custom header component to be used for rendering the component header in the hosting framework (ie: React/Angular). If none specified the default AG Grid is used* */\",\n      \"headerComponentParams?\": \"/** The custom header component parameters* */\",\n      \"floatingFilter?\": \"/** Whether to display a floating filter for this column. */\",\n      \"chartDataType?\": \"/** Defines the column data type used when charting */\",\n      \"columnsMenuParams?\": \"/** Params to customise the columns menu behaviour and appearance */\"\n    }\n  },\n  \"ColumnFunctionCallbackParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"CheckboxSelectionCallbackParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"CheckboxSelectionCallback\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"CheckboxSelectionCallbackParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"RowDragCallbackParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"RowDragCallback\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"RowDragCallbackParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"DndSourceCallbackParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"DndSourceCallback\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"DndSourceCallbackParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"EditableCallbackParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"EditableCallback\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"EditableCallbackParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"SuppressPasteCallbackParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"SuppressPasteCallback\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"SuppressPasteCallbackParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"SuppressNavigableCallbackParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"SuppressNavigableCallback\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"SuppressNavigableCallbackParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"HeaderCheckboxSelectionCallbackParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\"\n    }\n  },\n  \"HeaderCheckboxSelectionCallback\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"HeaderCheckboxSelectionCallbackParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"IsColumnFunc\": {\n    \"meta\": {\n      \"isCallSignature\": true,\n      \"doc\": \"/** @deprecated No longer in use. Replaced with (params: ColumnFunctionCallbackParams) => boolean.\\n */\"\n    },\n    \"type\": {\n      \"arguments\": { \"params\": \"IsColumnFuncParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"IsColumnFuncParams\": {\n    \"meta\": {\n      \"doc\": \"/** @deprecated Replaced with ColumnFunctionCallbackParams\\n */\"\n    },\n    \"type\": {\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"GetQuickFilterTextParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"value\": \"any\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"ColumnsMenuParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"suppressSyncLayoutWithGrid?\": \"boolean\",\n      \"suppressColumnFilter?\": \"boolean\",\n      \"suppressColumnSelectAll?\": \"boolean\",\n      \"suppressColumnExpandAll?\": \"boolean\",\n      \"contractColumnSelection?\": \"boolean\"\n    },\n    \"docs\": {\n      \"suppressSyncLayoutWithGrid?\": \"/** To suppress updating the layout of columns\\n * as they are rearranged in the grid */\",\n      \"suppressColumnFilter?\": \"/** To suppress Column Filter section */\",\n      \"suppressColumnSelectAll?\": \"/** To suppress Select / Un-select all widget */\",\n      \"suppressColumnExpandAll?\": \"/** To suppress Expand / Collapse all widget */\",\n      \"contractColumnSelection?\": \"/** By default, column groups start expanded.\\n * Pass true to default to contracted groups */\"\n    }\n  },\n  \"BaseColDefParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode | null\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"BaseWithValueColDefParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode | null\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\",\n      \"value\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"ValueGetterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode | null\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\",\n      \"getValue\": \"(field: string) => any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"ValueGetterFunc\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"ValueGetterParams\" },\n      \"returnType\": \"any\"\n    }\n  },\n  \"NewValueParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode | null\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\",\n      \"oldValue\": \"any\",\n      \"newValue\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"ValueSetterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode | null\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\",\n      \"oldValue\": \"any\",\n      \"newValue\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"ValueSetterFunc\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"ValueSetterParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"ValueParserParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode | null\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\",\n      \"oldValue\": \"any\",\n      \"newValue\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"ValueParserFunc\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"ValueParserParams\" },\n      \"returnType\": \"any\"\n    }\n  },\n  \"ValueFormatterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode | null\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\",\n      \"value\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"ValueFormatterFunc\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"ValueFormatterParams\" },\n      \"returnType\": \"string\"\n    }\n  },\n  \"ColSpanParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode | null\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"RowSpanParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode | null\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"SuppressKeyboardEventParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\",\n      \"event\": \"KeyboardEvent\",\n      \"editing\": \"boolean\"\n    },\n    \"docs\": {\n      \"node\": \"/** Row node for the given row */\",\n      \"data\": \"/** Data associated with the node */\",\n      \"column\": \"/** Column for this callback */\",\n      \"colDef\": \"/** ColDef provided for this column */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event\": \"/** The keyboard event the grid received */\",\n      \"editing\": \"/** Whether the cell is editing or not */\"\n    }\n  },\n  \"SuppressHeaderKeyboardEventParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"column\": \"Column | ColumnGroup\",\n      \"colDef\": \"ColDef | ColGroupDef | null\",\n      \"headerRowIndex\": \"number\",\n      \"event\": \"KeyboardEvent\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"CellClassParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"data\": \"any\",\n      \"node\": \"RowNode\",\n      \"rowIndex\": \"number\",\n      \"$scope\": \"any\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\",\n      \"colDef\": \"ColDef\",\n      \"value\": \"any\"\n    },\n    \"docs\": {\n      \"data\": \"/** The data associated with this row from rowData */\",\n      \"node\": \"/** The RowNode associated with this row */\",\n      \"rowIndex\": \"/** The index of the row */\",\n      \"$scope\": \"/** If using AngularJs, is the row's child scope, otherwise null */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"colDef\": \"/** The colDef associated with the column for this cell */\",\n      \"value\": \"/** The value to be rendered */\"\n    }\n  },\n  \"CellClassFunc\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"cellClassParams\": \"CellClassParams\" },\n      \"returnType\": \"string | string[]\"\n    }\n  },\n  \"CellStyleFunc\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"cellClassParams\": \"CellClassParams\" },\n      \"returnType\": \"{}\"\n    }\n  },\n  \"CellClassRules\": {\n    \"meta\": {},\n    \"type\": {\n      \"[cssClassName: string]\": \"(((params: CellClassParams) => boolean) | string)\"\n    }\n  },\n  \"SelectorFunc\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"ICellRendererParams | ICellEditorParams\" },\n      \"returnType\": \"CellRendererSelectorResult | CellEditorSelectorResult\"\n    }\n  },\n  \"CellRendererSelectorFunc\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"ICellRendererParams\" },\n      \"returnType\": \"CellRendererSelectorResult\"\n    }\n  },\n  \"CellEditorSelectorFunc\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"ICellEditorParams\" },\n      \"returnType\": \"CellEditorSelectorResult\"\n    }\n  },\n  \"CellRendererSelectorResult\": {\n    \"meta\": {},\n    \"type\": {\n      \"component?\": \"{ new (): ICellRendererComp; } | ICellRendererFunc | string\",\n      \"frameworkComponent?\": \"any\",\n      \"params?\": \"any\"\n    }\n  },\n  \"CellEditorSelectorResult\": {\n    \"meta\": {},\n    \"type\": {\n      \"component?\": \"{ new (): ICellEditorComp; } | string\",\n      \"frameworkComponent?\": \"any\",\n      \"params?\": \"any\"\n    }\n  },\n  \"ColumnGroupChild\": {\n    \"meta\": {},\n    \"type\": {\n      \"addEventListener(eventType: string, listener: EventListener, async?: boolean, options?: AddEventListenerOptions)\": \"void\",\n      \"removeEventListener(eventType: string, listener: EventListener, async?: boolean, options?: AddEventListenerOptions)\": \"void\",\n      \"getUniqueId()\": \"string\",\n      \"getActualWidth()\": \"number\",\n      \"getMinWidth()\": \"number | null | undefined\",\n      \"getLeft()\": \"number | null\",\n      \"getOldLeft()\": \"number | null\",\n      \"getDefinition()\": \"AbstractColDef | null\",\n      \"getColumnGroupShow()\": \"string | undefined\",\n      \"getParent()\": \"ColumnGroupChild\",\n      \"isResizable()\": \"boolean\",\n      \"setParent(parent: ColumnGroup | null)\": \"void\",\n      \"isEmptyGroup()\": \"boolean\",\n      \"isMoving()\": \"boolean\",\n      \"getPinned()\": \"string | null | undefined\"\n    }\n  },\n  \"GridOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"suppressBrowserResizeObserver?\": \"boolean\",\n      \"rowDragManaged?\": \"boolean\",\n      \"suppressRowDrag?\": \"boolean\",\n      \"suppressMoveWhenRowDragging?\": \"boolean\",\n      \"enableMultiRowDragging?\": \"boolean\",\n      \"ensureDomOrder?\": \"boolean\",\n      \"suppressAggFilteredOnly?\": \"boolean\",\n      \"showOpenedGroup?\": \"boolean\",\n      \"deltaRowDataMode?\": \"boolean\",\n      \"deltaColumnMode?\": \"boolean\",\n      \"applyColumnDefOrder?\": \"boolean\",\n      \"maintainColumnOrder?\": \"boolean\",\n      \"immutableData?\": \"boolean\",\n      \"immutableColumns?\": \"boolean\",\n      \"scrollbarWidth?\": \"number\",\n      \"suppressRowClickSelection?\": \"boolean\",\n      \"suppressRowHoverHighlight?\": \"boolean\",\n      \"columnHoverHighlight?\": \"boolean\",\n      \"suppressCellSelection?\": \"boolean\",\n      \"suppressClearOnFillReduction?\": \"boolean\",\n      \"suppressMaintainUnsortedOrder?\": \"boolean\",\n      \"sortingOrder?\": \"(string | null)[]\",\n      \"suppressMultiSort?\": \"boolean\",\n      \"multiSortKey?\": \"string\",\n      \"accentedSort?\": \"boolean\",\n      \"deltaSort?\": \"boolean\",\n      \"suppressHorizontalScroll?\": \"boolean\",\n      \"alwaysShowHorizontalScroll?\": \"boolean\",\n      \"alwaysShowVerticalScroll?\": \"boolean\",\n      \"debounceVerticalScrollbar?\": \"boolean\",\n      \"unSortIcon?\": \"boolean\",\n      \"rowBuffer?\": \"number\",\n      \"tooltipShowDelay?\": \"number\",\n      \"tooltipMouseTrack?\": \"boolean\",\n      \"enableRtl?\": \"boolean\",\n      \"enableBrowserTooltips?\": \"boolean\",\n      \"colResizeDefault?\": \"string\",\n      \"enableCellExpressions?\": \"boolean\",\n      \"enableCellTextSelection?\": \"boolean\",\n      \"enableGroupEdit?\": \"boolean\",\n      \"enterMovesDownAfterEdit?\": \"boolean\",\n      \"enterMovesDown?\": \"boolean\",\n      \"suppressMiddleClickScrolls?\": \"boolean\",\n      \"preventDefaultOnContextMenu?\": \"boolean\",\n      \"suppressPreventDefaultOnMouseWheel?\": \"boolean\",\n      \"suppressScrollOnNewData?\": \"boolean\",\n      \"suppressMenuHide?\": \"boolean\",\n      \"singleClickEdit?\": \"boolean\",\n      \"suppressClickEdit?\": \"boolean\",\n      \"tabIndex?\": \"number\",\n      \"suppressKeyboardEvent?\": \"(params: SuppressKeyboardEventParams) => boolean\",\n      \"stopEditingWhenGridLosesFocus?\": \"boolean\",\n      \"stopEditingWhenCellsLoseFocus?\": \"boolean\",\n      \"debug?\": \"boolean\",\n      \"icons?\": \"{ [key: string]: Function | string; }\",\n      \"angularCompileRows?\": \"boolean\",\n      \"angularCompileFilters?\": \"boolean\",\n      \"suppressLoadingOverlay?\": \"boolean\",\n      \"suppressNoRowsOverlay?\": \"boolean\",\n      \"suppressAutoSize?\": \"boolean\",\n      \"autoSizePadding?\": \"number\",\n      \"skipHeaderOnAutoSize?\": \"boolean\",\n      \"animateRows?\": \"boolean\",\n      \"suppressColumnMoveAnimation?\": \"boolean\",\n      \"suppressMovableColumns?\": \"boolean\",\n      \"suppressDragLeaveHidesColumns?\": \"boolean\",\n      \"suppressMakeColumnVisibleAfterUnGroup?\": \"boolean\",\n      \"suppressParentsInRowNodes?\": \"boolean\",\n      \"suppressFieldDotNotation?\": \"boolean\",\n      \"suppressCopyRowsToClipboard?\": \"boolean\",\n      \"copyHeadersToClipboard?\": \"boolean\",\n      \"clipboardDeliminator?\": \"string\",\n      \"suppressClipboardPaste?\": \"boolean\",\n      \"suppressClipboardApi?\": \"boolean\",\n      \"suppressLastEmptyLineOnPaste?\": \"boolean\",\n      \"suppressAggFuncInHeader?\": \"boolean\",\n      \"suppressAggAtRootLevel?\": \"boolean\",\n      \"suppressFocusAfterRefresh?\": \"boolean\",\n      \"rowModelType?\": \"string\",\n      \"pivotMode?\": \"boolean\",\n      \"pivotColumnGroupTotals?\": \"string\",\n      \"pivotRowTotals?\": \"string\",\n      \"suppressExpandablePivotGroups?\": \"boolean\",\n      \"suppressEnterpriseResetOnNewColumns?\": \"boolean\",\n      \"enableRangeSelection?\": \"boolean\",\n      \"enableRangeHandle?\": \"boolean\",\n      \"enableFillHandle?\": \"boolean\",\n      \"fillHandleDirection?\": \"string\",\n      \"suppressMultiRangeSelection?\": \"boolean\",\n      \"rowGroupPanelShow?\": \"string\",\n      \"pivotPanelShow?\": \"string\",\n      \"suppressContextMenu?\": \"boolean\",\n      \"allowContextMenuWithControlKey?\": \"boolean\",\n      \"rememberGroupStateWhenNewData?\": \"boolean\",\n      \"suppressModelUpdateAfterUpdateTransaction?\": \"boolean\",\n      \"viewportRowModelPageSize?\": \"number\",\n      \"viewportRowModelBufferSize?\": \"number\",\n      \"enableCellChangeFlash?\": \"boolean\",\n      \"cellFlashDelay?\": \"number\",\n      \"cellFadeDelay?\": \"number\",\n      \"allowShowChangeAfterFilter?\": \"boolean\",\n      \"quickFilterText?\": \"string\",\n      \"cacheQuickFilter?\": \"boolean\",\n      \"aggFuncs?\": \"{ [key: string]: IAggFunc; }\",\n      \"suppressColumnVirtualisation?\": \"boolean\",\n      \"functionsReadOnly?\": \"boolean\",\n      \"functionsPassive?\": \"boolean\",\n      \"maxConcurrentDatasourceRequests?\": \"number\",\n      \"maxBlocksInCache?\": \"number\",\n      \"purgeClosedRowNodes?\": \"boolean\",\n      \"domLayout?\": \"string\",\n      \"suppressChangeDetection?\": \"boolean\",\n      \"aggregateOnlyChangedColumns?\": \"boolean\",\n      \"valueCache?\": \"boolean\",\n      \"valueCacheNeverExpires?\": \"boolean\",\n      \"batchUpdateWaitMillis?\": \"number\",\n      \"asyncTransactionWaitMillis?\": \"number\",\n      \"suppressRowTransform?\": \"boolean\",\n      \"suppressSetColumnStateEvents?\": \"boolean\",\n      \"suppressColumnStateEvents?\": \"boolean\",\n      \"allowDragFromColumnsToolPanel?\": \"boolean\",\n      \"suppressMaxRenderedRowRestriction?\": \"boolean\",\n      \"excludeChildrenWhenTreeDataFiltering?\": \"boolean\",\n      \"undoRedoCellEditing?\": \"boolean\",\n      \"undoRedoCellEditingLimit?\": \"number\",\n      \"cacheOverflowSize?\": \"number\",\n      \"infiniteInitialRowCount?\": \"number\",\n      \"paginationPageSize?\": \"number\",\n      \"cacheBlockSize?\": \"number\",\n      \"blockLoadDebounceMillis?\": \"number\",\n      \"paginationAutoPageSize?\": \"boolean\",\n      \"suppressPaginationPanel?\": \"boolean\",\n      \"pagination?\": \"boolean\",\n      \"paginateChildRows?\": \"boolean\",\n      \"editType?\": \"string\",\n      \"suppressTouch?\": \"boolean\",\n      \"suppressAsyncEvents?\": \"boolean\",\n      \"embedFullWidthRows?\": \"boolean\",\n      \"deprecatedEmbedFullWidthRows?\": \"boolean\",\n      \"excelStyles?\": \"ExcelStyle[]\",\n      \"floatingFilter?\": \"boolean\",\n      \"suppressExcelExport?\": \"boolean\",\n      \"suppressCsvExport?\": \"boolean\",\n      \"colWidth?\": \"number\",\n      \"minColWidth?\": \"number\",\n      \"maxColWidth?\": \"number\",\n      \"suppressPropertyNamesCheck?\": \"boolean\",\n      \"serverSideSortingAlwaysResets?\": \"boolean\",\n      \"serverSideFilteringAlwaysResets?\": \"boolean\",\n      \"serverSideStoreType?\": \"ServerSideStoreType\",\n      \"getServerSideStoreParams?\": \"(params: GetServerSideStoreParamsParams) => ServerSideStoreParams\",\n      \"isServerSideGroupOpenByDefault?\": \"(params: IsServerSideGroupOpenByDefaultParams) => boolean\",\n      \"isGroupOpenByDefault?\": \"(params: IsGroupOpenByDefaultParams) => boolean\",\n      \"statusBar?\": \"{ statusPanels: StatusPanelDef[]; }\",\n      \"localeText?\": \"{ [key: string]: string; }\",\n      \"localeTextFunc?\": \"(key: string, defaultValue: string) => string\",\n      \"suppressAnimationFrame?\": \"boolean\",\n      \"defaultColGroupDef?\": \"Partial<ColGroupDef>\",\n      \"defaultColDef?\": \"ColDef\",\n      \"defaultExportParams?\": \"CsvExportParams | ExcelExportParams\",\n      \"defaultCsvExportParams?\": \"CsvExportParams\",\n      \"defaultExcelExportParams?\": \"ExcelExportParams\",\n      \"pivotSuppressAutoColumn?\": \"boolean\",\n      \"autoGroupColumnDef?\": \"ColDef\",\n      \"groupSelectsChildren?\": \"boolean\",\n      \"groupSelectsFiltered?\": \"boolean\",\n      \"groupIncludeFooter?\": \"boolean\",\n      \"groupIncludeTotalFooter?\": \"boolean\",\n      \"groupRemoveSingleChildren?\": \"boolean\",\n      \"groupRemoveLowestSingleChildren?\": \"boolean\",\n      \"groupHideOpenParents?\": \"boolean\",\n      \"groupSuppressBlankHeader?\": \"boolean\",\n      \"groupMaintainOrder?\": \"boolean\",\n      \"groupDisplayType?\": \"RowGroupingDisplayType\",\n      \"groupMultiAutoColumn?\": \"boolean\",\n      \"groupUseEntireRow?\": \"boolean\",\n      \"groupSuppressAutoColumn?\": \"boolean\",\n      \"enableOldSetFilterModel?\": \"boolean\",\n      \"enableCharts?\": \"boolean\",\n      \"context?\": \"any\",\n      \"rowStyle?\": \"{ [cssProperty: string]: string; }\",\n      \"rowClass?\": \"string | string[]\",\n      \"groupDefaultExpanded?\": \"number\",\n      \"alignedGrids?\": \"GridOptions[]\",\n      \"rowSelection?\": \"string\",\n      \"suppressRowDeselection?\": \"boolean\",\n      \"rowDeselection?\": \"boolean\",\n      \"rowMultiSelectWithClick?\": \"boolean\",\n      \"isRowSelectable?\": \"IsRowSelectable\",\n      \"overlayLoadingTemplate?\": \"string\",\n      \"overlayNoRowsTemplate?\": \"string\",\n      \"rowHeight?\": \"number\",\n      \"detailRowHeight?\": \"number\",\n      \"popupParent?\": \"HTMLElement\",\n      \"masterDetail?\": \"boolean\",\n      \"keepDetailRows?\": \"boolean\",\n      \"keepDetailRowsCount?\": \"number\",\n      \"isRowMaster?\": \"IsRowMaster\",\n      \"detailCellRenderer?\": \"{ new (): ICellRendererComp; } | ICellRendererFunc | string\",\n      \"detailCellRendererFramework?\": \"any\",\n      \"detailCellRendererParams?\": \"any\",\n      \"detailRowAutoHeight?\": \"boolean\",\n      \"rowData?\": \"any[]\",\n      \"pinnedTopRowData?\": \"any[]\",\n      \"pinnedBottomRowData?\": \"any[]\",\n      \"sideBar?\": \"SideBarDef | string | boolean | null\",\n      \"columnDefs?\": \"(ColDef | ColGroupDef)[]\",\n      \"columnTypes?\": \"{ [key: string]: ColDef; }\",\n      \"datasource?\": \"IDatasource\",\n      \"viewportDatasource?\": \"IViewportDatasource\",\n      \"serverSideDatasource?\": \"IServerSideDatasource\",\n      \"headerHeight?\": \"number\",\n      \"pivotHeaderHeight?\": \"number\",\n      \"groupHeaderHeight?\": \"number\",\n      \"pivotGroupHeaderHeight?\": \"number\",\n      \"floatingFiltersHeight?\": \"number\",\n      \"paginationNumberFormatter?\": \"(params: PaginationNumberFormatterParams) => string\",\n      \"postProcessPopup?\": \"(params: PostProcessPopupParams) => void\",\n      \"frameworkComponents?\": \"{ [p: string]: { new (): any; }; } | any\",\n      \"components?\": \"{ [p: string]: any; }\",\n      \"groupRowRenderer?\": \"{ new (): ICellRendererComp; } | ICellRendererFunc | string\",\n      \"groupRowRendererFramework?\": \"any\",\n      \"groupRowRendererParams?\": \"any\",\n      \"groupRowInnerRenderer?\": \"{ new (): ICellRendererComp; } | ICellRendererFunc | string\",\n      \"groupRowInnerRendererFramework?\": \"any\",\n      \"createChartContainer?\": \"(params: ChartRef) => void\",\n      \"fillOperation?\": \"(params: FillOperationParams) => any\",\n      \"isExternalFilterPresent?()\": \"boolean\",\n      \"doesExternalFilterPass?(node: RowNode)\": \"boolean\",\n      \"getRowStyle?\": \"(params: RowClassParams) => { [cssProperty: string]: string; }\",\n      \"getRowClass?\": \"(params: RowClassParams) => string | string[] | undefined\",\n      \"rowClassRules?\": \"RowClassRules\",\n      \"getRowHeight?\": \"(params: RowHeightParams) => number | undefined | null\",\n      \"sendToClipboard?\": \"(params: SendToClipboardParams) => void\",\n      \"processDataFromClipboard?\": \"(params: ProcessDataFromClipboardParams) => string[][] | null\",\n      \"navigateToNextHeader?\": \"(params: NavigateToNextHeaderParams) => HeaderPosition\",\n      \"tabToNextHeader?\": \"(params: TabToNextHeaderParams) => HeaderPosition\",\n      \"navigateToNextCell?\": \"(params: NavigateToNextCellParams) => CellPosition\",\n      \"tabToNextCell?\": \"(params: TabToNextCellParams) => CellPosition\",\n      \"getDocument?\": \"() => Document\",\n      \"defaultGroupSortComparator?\": \"(nodeA: RowNode, nodeB: RowNode) => number\",\n      \"defaultGroupOrderComparator?\": \"(nodeA: RowNode, nodeB: RowNode) => number\",\n      \"loadingCellRenderer?\": \"{ new (): ICellRenderer; } | string\",\n      \"loadingCellRendererFramework?\": \"any\",\n      \"loadingCellRendererParams?\": \"any\",\n      \"loadingOverlayComponent?\": \"{ new (): ILoadingOverlayComp; } | string\",\n      \"loadingOverlayComponentFramework?\": \"any\",\n      \"loadingOverlayComponentParams?\": \"any\",\n      \"noRowsOverlayComponent?\": \"{ new (): INoRowsOverlayComp; } | string\",\n      \"noRowsOverlayComponentFramework?\": \"any\",\n      \"noRowsOverlayComponentParams?\": \"any\",\n      \"fullWidthCellRenderer?\": \"{ new (): ICellRendererComp; } | ICellRendererFunc | string\",\n      \"fullWidthCellRendererFramework?\": \"any\",\n      \"fullWidthCellRendererParams?\": \"any\",\n      \"isFullWidthCell?(rowNode: RowNode)\": \"boolean\",\n      \"groupRowAggNodes?(nodes: RowNode[])\": \"any\",\n      \"getBusinessKeyForNode?(node: RowNode)\": \"string\",\n      \"getDataPath?\": \"GetDataPath\",\n      \"treeData?\": \"boolean\",\n      \"treeDataDisplayType?\": \"TreeDataDisplayType\",\n      \"isServerSideGroup?\": \"IsServerSideGroup\",\n      \"isApplyServerSideTransaction?\": \"IsApplyServerSideTransaction\",\n      \"getServerSideGroupKey?\": \"GetServerSideGroupKey\",\n      \"getContextMenuItems?\": \"GetContextMenuItems\",\n      \"getMainMenuItems?\": \"GetMainMenuItems\",\n      \"getChartToolbarItems?\": \"GetChartToolbarItems\",\n      \"getRowNodeId?\": \"GetRowNodeIdFunc\",\n      \"getChildCount?(dataItem: any)\": \"number\",\n      \"processRowPostCreate?(params: ProcessRowParams)\": \"void\",\n      \"processCellForClipboard?(params: ProcessCellForExportParams)\": \"any\",\n      \"processHeaderForClipboard?(params: ProcessHeaderForExportParams)\": \"any\",\n      \"processCellFromClipboard?(params: ProcessCellForExportParams)\": \"any\",\n      \"processSecondaryColDef?(colDef: ColDef)\": \"void\",\n      \"processSecondaryColGroupDef?(colGroupDef: ColGroupDef)\": \"void\",\n      \"postSort?(nodes: RowNode[])\": \"void\",\n      \"chartThemes?\": \"string[]\",\n      \"customChartThemes?\": \"{ [name: string]: AgChartTheme; }\",\n      \"chartThemeOverrides?\": \"AgChartThemeOverrides\",\n      \"processChartOptions?(params: ProcessChartOptionsParams)\": \"ChartOptions<any>\",\n      \"allowProcessChartOptions?\": \"boolean\",\n      \"onColumnEverythingChanged?(event: ColumnEverythingChangedEvent)\": \"void\",\n      \"onToolPanelVisibleChanged?(event: ToolPanelVisibleChangedEvent)\": \"void\",\n      \"onNewColumnsLoaded?(event: NewColumnsLoadedEvent)\": \"void\",\n      \"onColumnPivotModeChanged?(event: ColumnPivotModeChangedEvent)\": \"void\",\n      \"onColumnRowGroupChanged?(event: ColumnRowGroupChangedEvent)\": \"void\",\n      \"onColumnPivotChanged?(event: ColumnPivotChangedEvent)\": \"void\",\n      \"onGridColumnsChanged?(event: GridColumnsChangedEvent)\": \"void\",\n      \"onColumnValueChanged?(event: ColumnValueChangedEvent)\": \"void\",\n      \"onColumnMoved?(event: ColumnMovedEvent)\": \"void\",\n      \"onColumnVisible?(event: ColumnVisibleEvent)\": \"void\",\n      \"onColumnPinned?(event: ColumnPinnedEvent)\": \"void\",\n      \"onColumnGroupOpened?(event: ColumnGroupOpenedEvent)\": \"void\",\n      \"onColumnResized?(event: ColumnResizedEvent)\": \"void\",\n      \"onDisplayedColumnsChanged?(event: DisplayedColumnsChangedEvent)\": \"void\",\n      \"onVirtualColumnsChanged?(event: VirtualColumnsChangedEvent)\": \"void\",\n      \"onRowGroupOpened?(event: RowGroupOpenedEvent)\": \"void\",\n      \"onRowDataChanged?(event: RowDataChangedEvent)\": \"void\",\n      \"onRowDataUpdated?(event: RowDataUpdatedEvent)\": \"void\",\n      \"onPinnedRowDataChanged?(event: PinnedRowDataChangedEvent)\": \"void\",\n      \"onRangeSelectionChanged?(event: RangeSelectionChangedEvent)\": \"void\",\n      \"onColumnRowGroupChangeRequest?(event: ColumnRowGroupChangeRequestEvent)\": \"void\",\n      \"onColumnPivotChangeRequest?(event: ColumnPivotChangeRequestEvent)\": \"void\",\n      \"onColumnValueChangeRequest?(event: ColumnValueChangeRequestEvent)\": \"void\",\n      \"onColumnAggFuncChangeRequest?(event: ColumnAggFuncChangeRequestEvent)\": \"void\",\n      \"onModelUpdated?(event: ModelUpdatedEvent)\": \"void\",\n      \"onCellKeyDown?(event: CellKeyDownEvent | FullWidthCellKeyDownEvent)\": \"void\",\n      \"onCellKeyPress?(event: CellKeyPressEvent | FullWidthCellKeyPressEvent)\": \"void\",\n      \"onCellClicked?(event: CellClickedEvent)\": \"void\",\n      \"onCellMouseDown?(event: CellMouseDownEvent)\": \"void\",\n      \"onCellDoubleClicked?(event: CellDoubleClickedEvent)\": \"void\",\n      \"onCellContextMenu?(event: CellContextMenuEvent)\": \"void\",\n      \"onCellValueChanged?(event: CellValueChangedEvent)\": \"void\",\n      \"onCellMouseOver?(event: CellMouseOverEvent)\": \"void\",\n      \"onCellMouseOut?(event: CellMouseOutEvent)\": \"void\",\n      \"onRowValueChanged?(event: RowValueChangedEvent)\": \"void\",\n      \"onRowEditingStarted?(event: RowEditingStartedEvent)\": \"void\",\n      \"onRowEditingStopped?(event: RowEditingStoppedEvent)\": \"void\",\n      \"onCellEditingStarted?(event: CellEditingStartedEvent)\": \"void\",\n      \"onCellEditingStopped?(event: CellEditingStoppedEvent)\": \"void\",\n      \"onCellFocused?(event: CellFocusedEvent)\": \"void\",\n      \"onRowSelected?(event: RowSelectedEvent)\": \"void\",\n      \"onSelectionChanged?(event: SelectionChangedEvent)\": \"void\",\n      \"onFilterOpened?(event: FilterOpenedEvent)\": \"void\",\n      \"onFilterChanged?(event: FilterChangedEvent)\": \"void\",\n      \"onFilterModified?(event: FilterModifiedEvent)\": \"void\",\n      \"onSortChanged?(event: SortChangedEvent)\": \"void\",\n      \"onVirtualRowRemoved?(event: VirtualRowRemovedEvent)\": \"void\",\n      \"onRowClicked?(event: RowClickedEvent)\": \"void\",\n      \"onRowDoubleClicked?(event: RowDoubleClickedEvent)\": \"void\",\n      \"onGridReady?(event: GridReadyEvent)\": \"void\",\n      \"onViewportChanged?(event: ViewportChangedEvent)\": \"void\",\n      \"onDragStarted?(event: DragStartedEvent)\": \"void\",\n      \"onDragStopped?(event: DragStoppedEvent)\": \"void\",\n      \"onPaginationChanged?(event: PaginationChangedEvent)\": \"void\",\n      \"onRowDragEnter?(event: RowDragEvent)\": \"void\",\n      \"onRowDragMove?(event: RowDragEvent)\": \"void\",\n      \"onRowDragLeave?(event: RowDragEvent)\": \"void\",\n      \"onRowDragEnd?(event: RowDragEvent)\": \"void\",\n      \"onPasteStart?(event: PasteStartEvent)\": \"void\",\n      \"onPasteEnd?(event: PasteEndEvent)\": \"void\",\n      \"onFillStart?(event: FillStartEvent)\": \"void\",\n      \"onFillEnd?(event: FillEndEvent)\": \"void\",\n      \"onBodyScroll?(event: BodyScrollEvent)\": \"void\",\n      \"onFirstDataRendered?(event: FirstDataRenderedEvent)\": \"void\",\n      \"onExpandOrCollapseAll?(event: ExpandCollapseAllEvent)\": \"void\",\n      \"onChartCreated?(event: ChartCreated)\": \"void\",\n      \"onChartRangeSelectionChanged?(event: ChartRangeSelectionChanged)\": \"void\",\n      \"onChartOptionsChanged?(event: ChartOptionsChanged)\": \"void\",\n      \"onChartDestroyed?(event: ChartDestroyed)\": \"void\",\n      \"onComponentStateChanged?(event: ComponentStateChangedEvent)\": \"void\",\n      \"onAsyncTransactionsFlushed?(event: AsyncTransactionsFlushed)\": \"void\",\n      \"onGridSizeChanged?(event: GridSizeChangedEvent)\": \"void\",\n      \"api?\": \"GridApi | null\",\n      \"columnApi?\": \"ColumnApi | null\"\n    },\n    \"docs\": {\n      \"suppressBrowserResizeObserver?\": \"/** Set once in init, can never change */\",\n      \"deltaRowDataMode?\": \"/** @deprecated\\n */\",\n      \"deltaColumnMode?\": \"/** @deprecated\\n */\",\n      \"applyColumnDefOrder?\": \"/** @deprecated\\n */\",\n      \"immutableColumns?\": \"/** @deprecated\\n */\",\n      \"suppressKeyboardEvent?\": \"/** Allows user to suppress certain keyboard events */\",\n      \"stopEditingWhenGridLosesFocus?\": \"/** @deprecated Use stopEditingWhenCellsLoseFocus instead\\n */\",\n      \"rememberGroupStateWhenNewData?\": \"/** @deprecated - no longer needed, transaction updates keep group state\\n */\",\n      \"suppressSetColumnStateEvents?\": \"/** @deprecated\\n */\",\n      \"suppressColumnStateEvents?\": \"/** @deprecated\\n */\",\n      \"deprecatedEmbedFullWidthRows?\": \"/** @deprecated\\n */\",\n      \"floatingFilter?\": \"/** @deprecated Use floatingFilter on the colDef instead\\n */\",\n      \"defaultExportParams?\": \"/** @deprecated Use defaultCsvExportParams or defaultExcelExportParams\\n */\",\n      \"groupMultiAutoColumn?\": \"/** @deprecated - Use groupDisplayType = 'multipleColumns' instead\\n */\",\n      \"groupUseEntireRow?\": \"/** @deprecated - Use groupDisplayType = 'groupRows' instead\\n */\",\n      \"groupSuppressAutoColumn?\": \"/** @deprecated - Use groupDisplayType = 'custom' instead\\n */\",\n      \"rowDeselection?\": \"/** @deprecated - rowDeselection is now true by default and should be suppressed by using suppressRowDeselection\\n */\",\n      \"groupRowInnerRenderer?\": \"/** @deprecated - this is now groupRowRendererParams.innerRenderer\\n */\",\n      \"groupRowInnerRendererFramework?\": \"/** @deprecated - this is now groupRowRendererParams.innerRendererFramework\\n */\",\n      \"defaultGroupSortComparator?\": \"/** @deprecated - Use defaultGroupOrderComparator instead\\n */\",\n      \"processChartOptions?(params: ProcessChartOptionsParams)\": \"/** @deprecated\\n */\",\n      \"allowProcessChartOptions?\": \"/** @deprecated\\n */\"\n    }\n  },\n  \"RowGroupingDisplayType\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\n      \"SINGLE_COLUMN = 'singleColumn'\",\n      \"MULTIPLE_COLUMNS = 'multipleColumns'\",\n      \"GROUP_ROWS = 'groupRows'\",\n      \"CUSTOM = 'custom'\"\n    ]\n  },\n  \"TreeDataDisplayType\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\"AUTO = 'auto'\", \"CUSTOM = 'custom'\"]\n  },\n  \"FillOperationParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"event\": \"MouseEvent\",\n      \"values\": \"any[]\",\n      \"initialValues\": \"any[]\",\n      \"currentIndex\": \"number\",\n      \"currentCellValue\": \"any\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\",\n      \"direction\": \"string\",\n      \"column?\": \"Column\",\n      \"rowNode?\": \"RowNode\"\n    }\n  },\n  \"GetDataPath\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": { \"arguments\": { \"data\": \"any\" }, \"returnType\": \"string[]\" }\n  },\n  \"IsServerSideGroup\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": { \"arguments\": { \"dataItem\": \"any\" }, \"returnType\": \"boolean\" }\n  },\n  \"IsApplyServerSideTransaction\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"IsApplyServerSideTransactionParams\" },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"IsApplyServerSideTransactionParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"transaction\": \"ServerSideTransaction\",\n      \"parentNode\": \"RowNode\",\n      \"storeInfo\": \"any\"\n    }\n  },\n  \"GetServerSideGroupKey\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": { \"arguments\": { \"dataItem\": \"any\" }, \"returnType\": \"string\" }\n  },\n  \"IsRowMaster\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": { \"arguments\": { \"dataItem\": \"any\" }, \"returnType\": \"boolean\" }\n  },\n  \"IsRowSelectable\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": { \"arguments\": { \"node\": \"RowNode\" }, \"returnType\": \"boolean\" }\n  },\n  \"RowClassRules\": {\n    \"meta\": {},\n    \"type\": {\n      \"[cssClassName: string]\": \"(((params: RowClassParams) => boolean) | string)\"\n    }\n  },\n  \"RowClassParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"data\": \"any\",\n      \"node\": \"RowNode\",\n      \"rowIndex\": \"number\",\n      \"$scope\": \"any\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"data\": \"/** The data associated with this row from rowData */\",\n      \"node\": \"/** The RowNode associated with this row */\",\n      \"rowIndex\": \"/** The index of the row */\",\n      \"$scope\": \"/** If using AngularJs, is the row's child scope, otherwise null */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"RowHeightParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"data\": \"any\",\n      \"node\": \"RowNode\",\n      \"api\": \"GridApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"SendToClipboardParams\": { \"meta\": {}, \"type\": { \"data\": \"string\" } },\n  \"ProcessChartOptionsParams\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"ChartType\", \"options\": \"ChartOptions<any>\" }\n  },\n  \"ProcessChartParams\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"ChartType\", \"options\": \"AgChartOptions\", \"chart\": \"any\" }\n  },\n  \"GetContextMenuItemsParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"defaultItems\": \"string[] | undefined\",\n      \"column\": \"Column\",\n      \"node\": \"RowNode\",\n      \"value\": \"any\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"GetContextMenuItems\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"GetContextMenuItemsParams\" },\n      \"returnType\": \"(string | MenuItemDef)[]\"\n    }\n  },\n  \"GetChartToolbarItemsParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"defaultItems?\": \"ChartMenuOptions[]\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\"\n    }\n  },\n  \"GetChartToolbarItems\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"GetChartToolbarItemsParams\" },\n      \"returnType\": \"ChartMenuOptions[]\"\n    }\n  },\n  \"MenuItemDef\": {\n    \"meta\": {},\n    \"type\": {\n      \"name\": \"string\",\n      \"disabled?\": \"boolean\",\n      \"shortcut?\": \"string\",\n      \"action?\": \"() => void\",\n      \"checked?\": \"boolean\",\n      \"icon?\": \"HTMLElement | string\",\n      \"subMenu?\": \"(MenuItemDef | string)[] | IComponent<any>\",\n      \"cssClasses?\": \"string[]\",\n      \"tooltip?\": \"string\"\n    },\n    \"docs\": {\n      \"name\": \"/** Name of the menu item */\",\n      \"disabled?\": \"/** It the item should be enabled / disabled */\",\n      \"shortcut?\": \"/** Shortcut (just display text, saying the shortcut here does nothing) */\",\n      \"action?\": \"/** Function that gets executed when item is chosen */\",\n      \"checked?\": \"/** Set to true to provide a check beside the option */\",\n      \"icon?\": \"/** The icon to display, either a DOM element or HTML string */\",\n      \"subMenu?\": \"/** If this item is a sub menu, contains a list of menu item definitions */\",\n      \"cssClasses?\": \"/** CSS classes to apply to the menu item */\",\n      \"tooltip?\": \"/** Tooltip for the menu item */\"\n    }\n  },\n  \"GetMainMenuItemsParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"column\": \"Column\",\n      \"defaultItems\": \"string[]\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"column\": \"/** The column that was clicked */\",\n      \"defaultItems\": \"/** List of the items that would be displayed by default */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"GetMainMenuItems\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"GetMainMenuItemsParams\" },\n      \"returnType\": \"(string | MenuItemDef)[]\"\n    }\n  },\n  \"GetRowNodeIdFunc\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": { \"arguments\": { \"data\": \"any\" }, \"returnType\": \"string\" }\n  },\n  \"ProcessRowParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"eRow\": \"HTMLElement\",\n      \"ePinnedLeftRow\": \"HTMLElement\",\n      \"ePinnedRightRow\": \"HTMLElement\",\n      \"rowIndex\": \"number\",\n      \"node\": \"RowNode\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"addRenderedRowListener\": \"(eventType: string, listener: Function) => void\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"NavigateToNextHeaderParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"key\": \"string\",\n      \"previousHeaderPosition\": \"HeaderPosition | null\",\n      \"nextHeaderPosition\": \"HeaderPosition | null\",\n      \"headerRowCount\": \"number\",\n      \"event\": \"KeyboardEvent\"\n    },\n    \"docs\": {\n      \"key\": \"/** The key for the arrow key pressed,\\n * left = 'ArrowLeft', up = 'ArrowUp', right = 'ArrowRight', down = 'ArrowDown' */\",\n      \"previousHeaderPosition\": \"/** The header that currently has focus */\",\n      \"nextHeaderPosition\": \"/** The header the grid would normally pick as the next header for this navigation */\",\n      \"headerRowCount\": \"/** The number of header rows present in the grid */\"\n    }\n  },\n  \"TabToNextHeaderParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"backwards\": \"boolean\",\n      \"previousHeaderPosition\": \"HeaderPosition | null\",\n      \"nextHeaderPosition\": \"HeaderPosition | null\",\n      \"headerRowCount\": \"number\"\n    },\n    \"docs\": {\n      \"backwards\": \"/** True if the Shift key is also down */\",\n      \"previousHeaderPosition\": \"/** The header that currently has focus */\",\n      \"nextHeaderPosition\": \"/** The header the grid would normally pick as the next header for this navigation */\",\n      \"headerRowCount\": \"/** The number of header rows present in the grid */\"\n    }\n  },\n  \"NavigateToNextCellParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"key\": \"number\",\n      \"previousCellPosition\": \"CellPosition\",\n      \"nextCellPosition\": \"CellPosition | null\",\n      \"event\": \"KeyboardEvent | null\"\n    },\n    \"docs\": {\n      \"key\": \"/** The keycode for the arrow key pressed:\\n * left = 37, up = 38, right = 39, down = 40 */\",\n      \"previousCellPosition\": \"/** The cell that currently has focus */\",\n      \"nextCellPosition\": \"/** The cell the grid would normally pick as the next cell for navigation */\"\n    }\n  },\n  \"TabToNextCellParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"backwards\": \"boolean\",\n      \"editing\": \"boolean\",\n      \"previousCellPosition\": \"CellPosition\",\n      \"nextCellPosition\": \"CellPosition\"\n    },\n    \"docs\": {\n      \"backwards\": \"/** True if the Shift key is also down */\",\n      \"editing\": \"/** True if the current cell is editing\\n * (you may want to skip cells that are not editable, as the grid will enter the next cell in editing mode also if tabbing) */\",\n      \"previousCellPosition\": \"/** The cell that currently has focus */\",\n      \"nextCellPosition\": \"/** The cell the grid would normally pick as the next cell for navigation */\"\n    }\n  },\n  \"PostProcessPopupParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"column?\": \"Column | null\",\n      \"rowNode?\": \"RowNode\",\n      \"ePopup\": \"HTMLElement\",\n      \"type\": \"string\",\n      \"eventSource?\": \"HTMLElement | null\",\n      \"mouseEvent?\": \"MouseEvent | Touch | null\"\n    },\n    \"docs\": {\n      \"column?\": \"/** If popup is for a column, this gives the Column */\",\n      \"rowNode?\": \"/** If popup is for a row, this gives the RowNode */\",\n      \"ePopup\": \"/** The popup we are showing */\",\n      \"type\": \"/** The different types are:\\n * 'contextMenu', 'columnMenu', 'aggFuncSelect', 'popupCellEditor' */\",\n      \"eventSource?\": \"/** If the popup is as a result of a button click (eg menu button),\\n * this is the component that the user clicked */\",\n      \"mouseEvent?\": \"/** If the popup is as a result of a click or touch,\\n * this is the event - eg user showing context menu */\"\n    }\n  },\n  \"PaginationNumberFormatterParams\": {\n    \"meta\": {},\n    \"type\": { \"value\": \"number\" }\n  },\n  \"ProcessDataFromClipboardParams\": {\n    \"meta\": {},\n    \"type\": { \"data\": \"string[][]\" },\n    \"docs\": { \"data\": \"/** 2D array of all cells from the clipboard */\" }\n  },\n  \"ChartRef\": {\n    \"meta\": {},\n    \"type\": {\n      \"chartId\": \"string\",\n      \"chart\": \"any\",\n      \"chartElement\": \"HTMLElement\",\n      \"destroyChart\": \"() => void\"\n    }\n  },\n  \"ServerSideStoreType\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\"Full = 'full'\", \"Partial = 'partial'\"]\n  },\n  \"ServerSideStoreParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"storeType?\": \"ServerSideStoreType\",\n      \"maxBlocksInCache?\": \"number\",\n      \"cacheBlockSize?\": \"number\"\n    }\n  },\n  \"GetServerSideStoreParamsParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"level\": \"number\",\n      \"parentRowNode?\": \"RowNode\",\n      \"rowGroupColumns\": \"Column[]\",\n      \"pivotColumns\": \"Column[]\",\n      \"pivotMode\": \"boolean\"\n    }\n  },\n  \"IsServerSideGroupOpenByDefaultParams\": {\n    \"meta\": {},\n    \"type\": { \"data\": \"any\", \"rowNode\": \"RowNode\" }\n  },\n  \"IsGroupOpenByDefaultParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"rowNode\": \"RowNode\",\n      \"rowGroupColumn\": \"Column\",\n      \"level\": \"number\",\n      \"field\": \"string\",\n      \"key\": \"string\"\n    }\n  },\n  \"OriginalColumnGroupChild\": {\n    \"meta\": {},\n    \"type\": {\n      \"isVisible()\": \"boolean\",\n      \"getColumnGroupShow()\": \"string | undefined\",\n      \"getId()\": \"string\",\n      \"setOriginalParent(originalParent: OriginalColumnGroup | null)\": \"void\"\n    }\n  },\n  \"SetSelectedParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"newValue\": \"boolean\",\n      \"clearSelection?\": \"boolean\",\n      \"suppressFinishActions?\": \"boolean\",\n      \"rangeSelect?\": \"boolean\",\n      \"groupSelectsFiltered?\": \"boolean\"\n    }\n  },\n  \"RowNodeEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"node\": \"RowNode\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"DataChangedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"node\": \"RowNode\",\n      \"oldData\": \"any\",\n      \"newData\": \"any\",\n      \"update\": \"boolean\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"CellChangedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"node\": \"RowNode\",\n      \"column\": \"Column\",\n      \"newValue\": \"any\",\n      \"oldValue\": \"any\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"RowHighlightPosition\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\"Above\", \"Below\"]\n  },\n  \"RowPosition\": {\n    \"meta\": {},\n    \"type\": { \"rowIndex\": \"number\", \"rowPinned\": \"string | null\" },\n    \"docs\": {\n      \"rowIndex\": \"/** A positive number from 0 to n, where n is the last row the grid is rendering\\n * or -1 if you want to navigate to the grid header */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or undefined/null (for not pinned) */\"\n    }\n  },\n  \"ToolPanelDef\": {\n    \"meta\": {},\n    \"type\": {\n      \"id\": \"string\",\n      \"labelDefault\": \"string\",\n      \"labelKey\": \"string\",\n      \"minWidth?\": \"number\",\n      \"maxWidth?\": \"number\",\n      \"width?\": \"number\",\n      \"iconKey\": \"string\",\n      \"toolPanel?\": \"{ new (): IToolPanelComp; } | string\",\n      \"toolPanelFramework?\": \"any\",\n      \"toolPanelParams?\": \"any\"\n    }\n  },\n  \"SideBarDef\": {\n    \"meta\": {},\n    \"type\": {\n      \"toolPanels?\": \"(ToolPanelDef | string)[]\",\n      \"defaultToolPanel?\": \"string\",\n      \"hiddenByDefault?\": \"boolean\",\n      \"position?\": \"'left' | 'right'\"\n    }\n  },\n  \"SASS_PROPERTIES\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'headerHeight' | 'headerCellMinWidth' | 'listItemHeight' | 'rowHeight' | 'chartMenuPanelWidth'\"\n  },\n  \"HardCodedSize\": {\n    \"meta\": {},\n    \"type\": { \"[key: string]\": \"{[key in SASS_PROPERTIES]?: number}\" }\n  },\n  \"ModelUpdatedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"animate\": \"boolean | undefined\",\n      \"keepRenderedRows\": \"boolean | undefined\",\n      \"newData\": \"boolean | undefined\",\n      \"newPage\": \"boolean\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"animate\": \"/** If true, the grid will try and animate the rows to the new positions */\",\n      \"keepRenderedRows\": \"/** If true, the grid has new data loaded, eg user called setRowData(), otherwise\\n * it's the same data but sorted or filtered, in which case this is true, and rows\\n * can animate around (eg rowNode id 24 is the same row node as last time). */\",\n      \"newData\": \"/** If true, then this update was a result of setRowData() getting called. This\\n * gets the grid to scroll to the top again. */\",\n      \"newPage\": \"/** True when pagination and a new page is navigated to. */\"\n    }\n  },\n  \"PaginationChangedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"animate?\": \"boolean\",\n      \"keepRenderedRows?\": \"boolean\",\n      \"newData?\": \"boolean\",\n      \"newPage\": \"boolean\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"animate?\": \"/** True if rows were animated to new position */\",\n      \"keepRenderedRows?\": \"/** True if rows were kept (otherwise complete redraw) */\",\n      \"newData?\": \"/** True if data was new (i.e user set new data) */\",\n      \"newPage\": \"/** True if user went to a new page */\"\n    }\n  },\n  \"AgEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"AgGridEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ToolPanelVisibleChangedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"source\": \"string | undefined\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ColumnPivotModeChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"VirtualColumnsChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ColumnEverythingChangedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"source\": \"string\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"NewColumnsLoadedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"GridColumnsChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"DisplayedColumnsChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"RowDataChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"RowDataUpdatedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"PinnedRowDataChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"SelectionChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"FilterChangedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"afterDataChange?\": \"boolean\",\n      \"afterFloatingFilter?\": \"boolean\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"afterDataChange?\": \"/** True if the filter was changed as a result of data changing */\",\n      \"afterFloatingFilter?\": \"/** True if filter was changed via floating filter */\"\n    }\n  },\n  \"FilterModifiedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"filterInstance\": \"IFilterComp\",\n      \"column\": \"Column\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"FilterOpenedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"column\": \"Column | OriginalColumnGroup\",\n      \"source\": \"FilterRequestSource\",\n      \"eGui\": \"HTMLElement\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"column\": \"/** Column / OriginalColumnGroup that contains the filter */\",\n      \"source\": \"/** Source of the open request */\",\n      \"eGui\": \"/** Parent element of the filter */\"\n    }\n  },\n  \"SortChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"GridReadyEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"DisplayedColumnsWidthChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ColumnHoverChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"BodyHeightChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ComponentStateChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"DragEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"target\": \"HTMLElement\"\n    },\n    \"docs\": {\n      \"type\": \"/** One of {'cell','row','headerCell','toolPanel'} */\",\n      \"target\": \"/** The DOM element that started the event. */\"\n    }\n  },\n  \"DragStartedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"target\": \"HTMLElement\"\n    },\n    \"docs\": {\n      \"type\": \"/** One of {'cell','row','headerCell','toolPanel'} */\",\n      \"target\": \"/** The DOM element that started the event. */\"\n    }\n  },\n  \"DragStoppedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"target\": \"HTMLElement\"\n    },\n    \"docs\": {\n      \"type\": \"/** One of {'cell','row','headerCell','toolPanel'} */\",\n      \"target\": \"/** The DOM element that started the event. */\"\n    }\n  },\n  \"CheckboxChangedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"id\": \"string\",\n      \"name\": \"string\",\n      \"selected?\": \"boolean\",\n      \"previousValue\": \"boolean | undefined\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"GridSizeChangedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"clientWidth\": \"number\",\n      \"clientHeight\": \"number\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"clientWidth\": \"/** The grid's DIV's clientWidth */\",\n      \"clientHeight\": \"/** The grid's DIV's clientHeight */\"\n    }\n  },\n  \"RowDragEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"nodes\": \"RowNode[]\",\n      \"y\": \"number\",\n      \"vDirection\": \"string\",\n      \"event\": \"MouseEvent\",\n      \"overIndex\": \"number\",\n      \"overNode\": \"RowNode\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"node\": \"/** The row node getting dragged. Also the node that started the drag when multi-row dragging. */\",\n      \"nodes\": \"/** The list of nodes being dragged. */\",\n      \"y\": \"/** The vertical pixel location the mouse is over. */\",\n      \"vDirection\": \"/** Direction of the drag, either 'up', 'down' or null. */\",\n      \"event\": \"/** The underlying mouse move event associated with the drag. */\",\n      \"overIndex\": \"/** The row index the mouse is dragging over. */\",\n      \"overNode\": \"/** The row node the mouse is dragging over. */\"\n    }\n  },\n  \"RowDragEnterEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"nodes\": \"RowNode[]\",\n      \"y\": \"number\",\n      \"vDirection\": \"string\",\n      \"event\": \"MouseEvent\",\n      \"overIndex\": \"number\",\n      \"overNode\": \"RowNode\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"node\": \"/** The row node getting dragged. Also the node that started the drag when multi-row dragging. */\",\n      \"nodes\": \"/** The list of nodes being dragged. */\",\n      \"y\": \"/** The vertical pixel location the mouse is over. */\",\n      \"vDirection\": \"/** Direction of the drag, either 'up', 'down' or null. */\",\n      \"event\": \"/** The underlying mouse move event associated with the drag. */\",\n      \"overIndex\": \"/** The row index the mouse is dragging over. */\",\n      \"overNode\": \"/** The row node the mouse is dragging over. */\"\n    }\n  },\n  \"RowDragEndEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"nodes\": \"RowNode[]\",\n      \"y\": \"number\",\n      \"vDirection\": \"string\",\n      \"event\": \"MouseEvent\",\n      \"overIndex\": \"number\",\n      \"overNode\": \"RowNode\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"node\": \"/** The row node getting dragged. Also the node that started the drag when multi-row dragging. */\",\n      \"nodes\": \"/** The list of nodes being dragged. */\",\n      \"y\": \"/** The vertical pixel location the mouse is over. */\",\n      \"vDirection\": \"/** Direction of the drag, either 'up', 'down' or null. */\",\n      \"event\": \"/** The underlying mouse move event associated with the drag. */\",\n      \"overIndex\": \"/** The row index the mouse is dragging over. */\",\n      \"overNode\": \"/** The row node the mouse is dragging over. */\"\n    }\n  },\n  \"RowDragMoveEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"nodes\": \"RowNode[]\",\n      \"y\": \"number\",\n      \"vDirection\": \"string\",\n      \"event\": \"MouseEvent\",\n      \"overIndex\": \"number\",\n      \"overNode\": \"RowNode\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"node\": \"/** The row node getting dragged. Also the node that started the drag when multi-row dragging. */\",\n      \"nodes\": \"/** The list of nodes being dragged. */\",\n      \"y\": \"/** The vertical pixel location the mouse is over. */\",\n      \"vDirection\": \"/** Direction of the drag, either 'up', 'down' or null. */\",\n      \"event\": \"/** The underlying mouse move event associated with the drag. */\",\n      \"overIndex\": \"/** The row index the mouse is dragging over. */\",\n      \"overNode\": \"/** The row node the mouse is dragging over. */\"\n    }\n  },\n  \"RowDragLeaveEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"nodes\": \"RowNode[]\",\n      \"y\": \"number\",\n      \"vDirection\": \"string\",\n      \"event\": \"MouseEvent\",\n      \"overIndex\": \"number\",\n      \"overNode\": \"RowNode\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"node\": \"/** The row node getting dragged. Also the node that started the drag when multi-row dragging. */\",\n      \"nodes\": \"/** The list of nodes being dragged. */\",\n      \"y\": \"/** The vertical pixel location the mouse is over. */\",\n      \"vDirection\": \"/** Direction of the drag, either 'up', 'down' or null. */\",\n      \"event\": \"/** The underlying mouse move event associated with the drag. */\",\n      \"overIndex\": \"/** The row index the mouse is dragging over. */\",\n      \"overNode\": \"/** The row node the mouse is dragging over. */\"\n    }\n  },\n  \"PasteStartEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"source\": \"string\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"PasteEndEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"source\": \"string\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"FillStartEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"FillEndEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"initialRange\": \"CellRange\",\n      \"finalRange\": \"CellRange\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ViewportChangedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"firstRow\": \"number\",\n      \"lastRow\": \"number\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"firstRow\": \"/** Index of the first rendered row */\",\n      \"lastRow\": \"/** Index of the last rendered row */\"\n    }\n  },\n  \"FirstDataRenderedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"firstRow\": \"number\",\n      \"lastRow\": \"number\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"firstRow\": \"/** Index of the first rendered row */\",\n      \"lastRow\": \"/** Index of the last rendered row */\"\n    }\n  },\n  \"RangeSelectionChangedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"id?\": \"string\",\n      \"finished\": \"boolean\",\n      \"started\": \"boolean\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ChartCreated\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"chartId\": \"string\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ChartRangeSelectionChanged\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"id\": \"string\",\n      \"chartId\": \"string\",\n      \"cellRange\": \"CellRangeParams\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ChartOptionsChanged\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"chartId\": \"string\",\n      \"chartType\": \"ChartType\",\n      \"chartThemeName\": \"string\",\n      \"chartOptions\": \"ChartOptions<any>\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ChartDestroyed\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"chartId\": \"string\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ColumnGroupOpenedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"columnGroup\": \"OriginalColumnGroup\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ItemsAddedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"items\": \"RowNode[]\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ScrollDirection\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'horizontal' | 'vertical'\"\n  },\n  \"BodyScrollEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"direction\": \"ScrollDirection\",\n      \"left\": \"number\",\n      \"top\": \"number\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"FlashCellsEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"cells\": \"any\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"PaginationPixelOffsetChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"CellFocusedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"rowIndex\": \"number | null\",\n      \"column\": \"Column | null\",\n      \"rowPinned?\": \"string | null\",\n      \"isFullWidthCell\": \"boolean\",\n      \"forceBrowserFocus?\": \"boolean\",\n      \"floating\": \"string | null\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"rowIndex\": \"/** Row index of the focused cell */\",\n      \"column\": \"/** Column of the focused cell */\",\n      \"rowPinned?\": \"/** either 'top', 'bottom' or null / undefined (if not pinned) */\",\n      \"isFullWidthCell\": \"/** Whether the cell a full width cell or a regular cell */\",\n      \"forceBrowserFocus?\": \"/** Whether browser focus is also set (false when editing) */\"\n    }\n  },\n  \"ExpandCollapseAllEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"source\": \"string\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ColumnEventType\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"\\\"sizeColumnsToFit\\\" | \\\"autosizeColumns\\\" | \\\"alignedGridChanged\\\" | \\\"filterChanged\\\" | \\\"filterDestroyed\\\" | \\\"gridOptionsChanged\\\" | \\\"gridInitializing\\\" | \\\"toolPanelDragAndDrop\\\" | \\\"toolPanelUi\\\" | \\\"uiColumnMoved\\\" | \\\"uiColumnResized\\\" | \\\"uiColumnDragged\\\" | \\\"uiColumnExpanded\\\" | \\\"uiColumnSorted\\\" | \\\"contextMenu\\\" | \\\"columnMenu\\\" | \\\"rowModelUpdated\\\" | \\\"api\\\" | \\\"flex\\\" | \\\"pivotChart\\\"\"\n  },\n  \"ColumnEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"column\": \"Column | null\",\n      \"columns\": \"Column[] | null\",\n      \"source\": \"ColumnEventType\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"column\": \"/** The impacted column, only set if action was on one column */\",\n      \"columns\": \"/** List of all impacted columns */\",\n      \"source\": \"/** String describing where the event is coming from */\"\n    }\n  },\n  \"ColumnResizedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"column\": \"Column | null\",\n      \"columns\": \"Column[] | null\",\n      \"source\": \"ColumnEventType\",\n      \"finished\": \"boolean\",\n      \"flexColumns\": \"Column[] | null\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"column\": \"/** The impacted column, only set if action was on one column */\",\n      \"columns\": \"/** List of all impacted columns */\",\n      \"source\": \"/** String describing where the event is coming from */\",\n      \"finished\": \"/** Set to true for last event in a sequence of move events */\",\n      \"flexColumns\": \"/** Any columns resized due to flex */\"\n    }\n  },\n  \"ColumnPivotChangedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"column\": \"Column | null\",\n      \"columns\": \"Column[] | null\",\n      \"source\": \"ColumnEventType\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"column\": \"/** The impacted column, only set if action was on one column */\",\n      \"columns\": \"/** List of all impacted columns */\",\n      \"source\": \"/** String describing where the event is coming from */\"\n    }\n  },\n  \"ColumnRowGroupChangedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"column\": \"Column | null\",\n      \"columns\": \"Column[] | null\",\n      \"source\": \"ColumnEventType\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"column\": \"/** The impacted column, only set if action was on one column */\",\n      \"columns\": \"/** List of all impacted columns */\",\n      \"source\": \"/** String describing where the event is coming from */\"\n    }\n  },\n  \"ColumnValueChangedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"column\": \"Column | null\",\n      \"columns\": \"Column[] | null\",\n      \"source\": \"ColumnEventType\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"column\": \"/** The impacted column, only set if action was on one column */\",\n      \"columns\": \"/** List of all impacted columns */\",\n      \"source\": \"/** String describing where the event is coming from */\"\n    }\n  },\n  \"ColumnMovedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"column\": \"Column | null\",\n      \"columns\": \"Column[] | null\",\n      \"source\": \"ColumnEventType\",\n      \"toIndex?\": \"number\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"column\": \"/** The impacted column, only set if action was on one column */\",\n      \"columns\": \"/** List of all impacted columns */\",\n      \"source\": \"/** String describing where the event is coming from */\",\n      \"toIndex?\": \"/** The position the column was moved to */\"\n    }\n  },\n  \"ColumnVisibleEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"column\": \"Column | null\",\n      \"columns\": \"Column[] | null\",\n      \"source\": \"ColumnEventType\",\n      \"visible?\": \"boolean\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"column\": \"/** The impacted column, only set if action was on one column */\",\n      \"columns\": \"/** List of all impacted columns */\",\n      \"source\": \"/** String describing where the event is coming from */\",\n      \"visible?\": \"/** True if column was set to visible, false if set to hide */\"\n    }\n  },\n  \"ColumnPinnedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"column\": \"Column | null\",\n      \"columns\": \"Column[] | null\",\n      \"source\": \"ColumnEventType\",\n      \"pinned\": \"string | null\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"column\": \"/** The impacted column, only set if action was on one column */\",\n      \"columns\": \"/** List of all impacted columns */\",\n      \"source\": \"/** String describing where the event is coming from */\",\n      \"pinned\": \"/** Either 'left', 'right', or null (it not pinned) */\"\n    }\n  },\n  \"RowEvent\": {\n    \"meta\": {\n      \"doc\": \"/** ------------ */\\n/** ROW EVENTS */\\n/** ------------ */\"\n    },\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\"\n    }\n  },\n  \"RowGroupOpenedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\",\n      \"expanded\": \"boolean\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\",\n      \"expanded\": \"/** True if the group is expanded. */\"\n    }\n  },\n  \"RowValueChangedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\"\n    }\n  },\n  \"RowSelectedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\"\n    }\n  },\n  \"VirtualRowRemovedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\"\n    }\n  },\n  \"RowClickedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\"\n    }\n  },\n  \"RowDoubleClickedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\"\n    }\n  },\n  \"RowEditingStartedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\"\n    }\n  },\n  \"RowEditingStoppedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\"\n    }\n  },\n  \"FullWidthCellKeyDownEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\"\n    }\n  },\n  \"FullWidthCellKeyPressEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\"\n    }\n  },\n  \"CellEvent\": {\n    \"meta\": {\n      \"doc\": \"/** ------------ */\\n/** CELL EVENTS */\\n/** ------------ */\"\n    },\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"value\": \"any\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\",\n      \"value\": \"/** The value for the cell */\"\n    }\n  },\n  \"CellKeyDownEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"value\": \"any\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\",\n      \"value\": \"/** The value for the cell */\"\n    }\n  },\n  \"CellKeyPressEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"value\": \"any\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\",\n      \"value\": \"/** The value for the cell */\"\n    }\n  },\n  \"CellClickedEvent\": {\n    \"meta\": { \"doc\": \"/** Cell is clicked */\" },\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"value\": \"any\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\",\n      \"value\": \"/** The value for the cell */\"\n    }\n  },\n  \"CellMouseDownEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"value\": \"any\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\",\n      \"value\": \"/** The value for the cell */\"\n    }\n  },\n  \"CellDoubleClickedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"value\": \"any\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\",\n      \"value\": \"/** The value for the cell */\"\n    }\n  },\n  \"CellMouseOverEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"value\": \"any\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\",\n      \"value\": \"/** The value for the cell */\"\n    }\n  },\n  \"CellMouseOutEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"value\": \"any\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\",\n      \"value\": \"/** The value for the cell */\"\n    }\n  },\n  \"CellContextMenuEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"value\": \"any\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\",\n      \"value\": \"/** The value for the cell */\"\n    }\n  },\n  \"CellEditingStartedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"value\": \"any\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\",\n      \"value\": \"/** The value for the cell */\"\n    }\n  },\n  \"CellEditingStoppedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"value\": \"any\",\n      \"oldValue\": \"any\",\n      \"newValue\": \"any\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\",\n      \"value\": \"/** The value for the cell */\",\n      \"oldValue\": \"/** The old value before editing */\",\n      \"newValue\": \"/** The new value after editing */\"\n    }\n  },\n  \"CellValueChangedEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number | null\",\n      \"rowPinned\": \"string | null\",\n      \"context\": \"any\",\n      \"event?\": \"Event | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"value\": \"any\",\n      \"oldValue\": \"any\",\n      \"newValue\": \"any\",\n      \"source\": \"string | undefined\"\n    },\n    \"docs\": {\n      \"type\": \"/** Event identifier */\",\n      \"data\": \"/** The user provided data for the row */\",\n      \"rowIndex\": \"/** The visible row index for the row */\",\n      \"rowPinned\": \"/** Either 'top', 'bottom' or null / undefined (if not set) */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"event?\": \"/** If event was due to browser event (eg click), this is the browser event */\",\n      \"value\": \"/** The value for the cell */\"\n    }\n  },\n  \"AsyncTransactionsFlushed\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"results\": \"(RowNodeTransaction | ServerSideTransactionResult)[]\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ColumnRequestEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"columns\": \"Column[]\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ColumnRowGroupChangeRequestEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"columns\": \"Column[]\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ColumnPivotChangeRequestEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"columns\": \"Column[]\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ColumnValueChangeRequestEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"columns\": \"Column[]\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ColumnAggFuncChangeRequestEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"columns\": \"Column[]\",\n      \"aggFunc\": \"any\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ScrollVisibilityChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"StoreUpdatedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"LeftPinnedWidthChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"RightPinnedWidthChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"RowContainerHeightChanged\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"DisplayedRowsChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"IFilterLocaleText\": {\n    \"meta\": {},\n    \"type\": {\n      \"applyFilter\": \"string\",\n      \"clearFilter\": \"string\",\n      \"resetFilter\": \"string\",\n      \"cancelFilter\": \"string\",\n      \"filterOoo\": \"string\",\n      \"empty\": \"string\",\n      \"equals\": \"string\",\n      \"notEqual\": \"string\",\n      \"lessThan\": \"string\",\n      \"greaterThan\": \"string\",\n      \"inRange\": \"string\",\n      \"inRangeStart\": \"string\",\n      \"inRangeEnd\": \"string\",\n      \"lessThanOrEqual\": \"string\",\n      \"greaterThanOrEqual\": \"string\",\n      \"contains\": \"string\",\n      \"notContains\": \"string\",\n      \"startsWith\": \"string\",\n      \"endsWith\": \"string\",\n      \"andCondition\": \"string\",\n      \"orCondition\": \"string\",\n      \"dateFormatOoo\": \"string\"\n    }\n  },\n  \"IFilterTitleLocaleText\": {\n    \"meta\": {},\n    \"type\": {\n      \"textFilter\": \"string\",\n      \"numberFilter\": \"string\",\n      \"dateFilter\": \"string\",\n      \"setFilter\": \"string\"\n    }\n  },\n  \"FilterRequestSource\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'COLUMN_MENU' | 'TOOLBAR' | 'NO_UI'\"\n  },\n  \"FilterWrapper\": {\n    \"meta\": {},\n    \"type\": {\n      \"compiledElement\": \"any\",\n      \"column\": \"Column\",\n      \"filterPromise\": \"AgPromise<IFilterComp> | null\",\n      \"scope\": \"any\",\n      \"guiPromise\": \"AgPromise<HTMLElement | null>\"\n    }\n  },\n  \"IFloatingFilterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"column\": \"Column\",\n      \"filterParams\": \"IFilterParams\",\n      \"currentParentModel\": \"() => any\",\n      \"parentFilterInstance\": \"(callback: (filterInstance: IFilterComp) => void) => void\",\n      \"showParentFilter\": \"() => void\",\n      \"suppressFilterButton\": \"boolean\",\n      \"api\": \"GridApi\",\n      \"onFloatingFilterChanged\": \"(change: any) => boolean\"\n    },\n    \"docs\": {\n      \"onFloatingFilterChanged\": \"/** @deprecated in v21, use parentFilterInstance() callback instead and tell filter directly\\n */\"\n    }\n  },\n  \"IFloatingFilter\": {\n    \"meta\": {},\n    \"type\": {\n      \"onParentModelChanged(parentModel: any, filterChangedEvent?: FilterChangedEvent | null)\": \"void\"\n    }\n  },\n  \"IFloatingFilterComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"getGui()\": \"HTMLElement\",\n      \"destroy?()\": \"void\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"void\",\n      \"init?(params: IFloatingFilterParams)\": \"AgPromise<void> | void\",\n      \"onParentModelChanged(parentModel: any, filterChangedEvent?: FilterChangedEvent | null)\": \"void\"\n    },\n    \"docs\": {\n      \"getGui()\": \"/** Return the DOM element of your component, this is what the grid puts into the DOM */\",\n      \"destroy?()\": \"/** Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here */\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"/** A hook to perform any necessary operation just after the GUI for this component has been rendered\\n * on the screen.\\n * If a parent popup is closed and reopened (e.g. for filters), this method is called each time the component is shown.\\n * This is useful for any\\n * logic that requires attachment before executing, such as putting focus on a particular DOM\\n * element. The params has one callback method 'hidePopup', which you can call at any later\\n * point to hide the popup - good if you have an 'Apply' button and you want to hide the popup\\n * after it is pressed. */\",\n      \"init?(params: IFloatingFilterParams)\": \"/** The init(params) method is called on the component once. See below for details on the parameters. */\"\n    }\n  },\n  \"BaseFloatingFilterChange\": {\n    \"meta\": {},\n    \"type\": { \"model\": \"ProvidedFilterModel\", \"apply\": \"boolean\" }\n  },\n  \"DateFilterModel\": {\n    \"meta\": {},\n    \"type\": {\n      \"filterType?\": \"string\",\n      \"type?\": \"string | null\",\n      \"dateFrom\": \"string | null\",\n      \"dateTo\": \"string | null\"\n    }\n  },\n  \"IDateFilterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"api\": \"GridApi\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"rowModel\": \"IRowModel\",\n      \"filterChangedCallback\": \"(additionalEventAttributes?: any) => void\",\n      \"filterModifiedCallback\": \"() => void\",\n      \"valueGetter\": \"(rowNode: RowNode) => any\",\n      \"doesRowPassOtherFilter\": \"(rowNode: RowNode) => boolean\",\n      \"context\": \"any\",\n      \"clearButton?\": \"boolean\",\n      \"resetButton?\": \"boolean\",\n      \"applyButton?\": \"boolean\",\n      \"buttons?\": \"FilterButtonType[]\",\n      \"closeOnApply?\": \"boolean\",\n      \"newRowsAction?\": \"string\",\n      \"debounceMs?\": \"number\",\n      \"filterOptions?\": \"(IFilterOptionDef | string)[]\",\n      \"defaultOption?\": \"string\",\n      \"defaultJoinOperator?\": \"JoinOperator\",\n      \"suppressAndOrCondition?\": \"boolean\",\n      \"alwaysShowBothConditions?\": \"boolean\",\n      \"inRangeInclusive?\": \"boolean\",\n      \"includeBlanksInEquals?\": \"boolean\",\n      \"includeBlanksInLessThan?\": \"boolean\",\n      \"includeBlanksInGreaterThan?\": \"boolean\",\n      \"includeBlanksInRange?\": \"boolean\",\n      \"nullComparator?\": \"NullComparator\",\n      \"comparator?\": \"IDateComparatorFunc\",\n      \"browserDatePicker?\": \"boolean\",\n      \"minValidYear?\": \"number\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"clearButton?\": \"/** @deprecated\\n */\",\n      \"resetButton?\": \"/** @deprecated\\n */\",\n      \"applyButton?\": \"/** @deprecated\\n */\",\n      \"newRowsAction?\": \"/** @deprecated\\n */\",\n      \"nullComparator?\": \"/** @deprecated in v21\\n */\"\n    }\n  },\n  \"IDateComparatorFunc\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"filterLocalDateAtMidnight\": \"Date\", \"cellValue\": \"any\" },\n      \"returnType\": \"number\"\n    }\n  },\n  \"NumberFilterModel\": {\n    \"meta\": {},\n    \"type\": {\n      \"filterType?\": \"string\",\n      \"type?\": \"string | null\",\n      \"filter?\": \"number | null\",\n      \"filterTo?\": \"number | null\"\n    }\n  },\n  \"INumberFilterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"api\": \"GridApi\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"rowModel\": \"IRowModel\",\n      \"filterChangedCallback\": \"(additionalEventAttributes?: any) => void\",\n      \"filterModifiedCallback\": \"() => void\",\n      \"valueGetter\": \"(rowNode: RowNode) => any\",\n      \"doesRowPassOtherFilter\": \"(rowNode: RowNode) => boolean\",\n      \"context\": \"any\",\n      \"clearButton?\": \"boolean\",\n      \"resetButton?\": \"boolean\",\n      \"applyButton?\": \"boolean\",\n      \"buttons?\": \"FilterButtonType[]\",\n      \"closeOnApply?\": \"boolean\",\n      \"newRowsAction?\": \"string\",\n      \"debounceMs?\": \"number\",\n      \"filterOptions?\": \"(IFilterOptionDef | string)[]\",\n      \"defaultOption?\": \"string\",\n      \"defaultJoinOperator?\": \"JoinOperator\",\n      \"suppressAndOrCondition?\": \"boolean\",\n      \"alwaysShowBothConditions?\": \"boolean\",\n      \"inRangeInclusive?\": \"boolean\",\n      \"includeBlanksInEquals?\": \"boolean\",\n      \"includeBlanksInLessThan?\": \"boolean\",\n      \"includeBlanksInGreaterThan?\": \"boolean\",\n      \"includeBlanksInRange?\": \"boolean\",\n      \"nullComparator?\": \"NullComparator\",\n      \"allowedCharPattern?\": \"string\",\n      \"numberParser?\": \"(text: string | null) => number\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"clearButton?\": \"/** @deprecated\\n */\",\n      \"resetButton?\": \"/** @deprecated\\n */\",\n      \"applyButton?\": \"/** @deprecated\\n */\",\n      \"newRowsAction?\": \"/** @deprecated\\n */\",\n      \"nullComparator?\": \"/** @deprecated in v21\\n */\"\n    }\n  },\n  \"FilterButtonType\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'apply' | 'clear' | 'reset' | 'cancel'\"\n  },\n  \"IProvidedFilterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"api\": \"GridApi\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"rowModel\": \"IRowModel\",\n      \"filterChangedCallback\": \"(additionalEventAttributes?: any) => void\",\n      \"filterModifiedCallback\": \"() => void\",\n      \"valueGetter\": \"(rowNode: RowNode) => any\",\n      \"doesRowPassOtherFilter\": \"(rowNode: RowNode) => boolean\",\n      \"context\": \"any\",\n      \"clearButton?\": \"boolean\",\n      \"resetButton?\": \"boolean\",\n      \"applyButton?\": \"boolean\",\n      \"buttons?\": \"FilterButtonType[]\",\n      \"closeOnApply?\": \"boolean\",\n      \"newRowsAction?\": \"string\",\n      \"debounceMs?\": \"number\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"clearButton?\": \"/** @deprecated\\n */\",\n      \"resetButton?\": \"/** @deprecated\\n */\",\n      \"applyButton?\": \"/** @deprecated\\n */\",\n      \"newRowsAction?\": \"/** @deprecated\\n */\"\n    }\n  },\n  \"NullComparator\": {\n    \"meta\": { \"doc\": \"/** @deprecated in v21\\n */\" },\n    \"type\": {\n      \"equals?\": \"boolean\",\n      \"lessThan?\": \"boolean\",\n      \"greaterThan?\": \"boolean\"\n    }\n  },\n  \"IScalarFilterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"api\": \"GridApi\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"rowModel\": \"IRowModel\",\n      \"filterChangedCallback\": \"(additionalEventAttributes?: any) => void\",\n      \"filterModifiedCallback\": \"() => void\",\n      \"valueGetter\": \"(rowNode: RowNode) => any\",\n      \"doesRowPassOtherFilter\": \"(rowNode: RowNode) => boolean\",\n      \"context\": \"any\",\n      \"clearButton?\": \"boolean\",\n      \"resetButton?\": \"boolean\",\n      \"applyButton?\": \"boolean\",\n      \"buttons?\": \"FilterButtonType[]\",\n      \"closeOnApply?\": \"boolean\",\n      \"newRowsAction?\": \"string\",\n      \"debounceMs?\": \"number\",\n      \"filterOptions?\": \"(IFilterOptionDef | string)[]\",\n      \"defaultOption?\": \"string\",\n      \"defaultJoinOperator?\": \"JoinOperator\",\n      \"suppressAndOrCondition?\": \"boolean\",\n      \"alwaysShowBothConditions?\": \"boolean\",\n      \"inRangeInclusive?\": \"boolean\",\n      \"includeBlanksInEquals?\": \"boolean\",\n      \"includeBlanksInLessThan?\": \"boolean\",\n      \"includeBlanksInGreaterThan?\": \"boolean\",\n      \"includeBlanksInRange?\": \"boolean\",\n      \"nullComparator?\": \"NullComparator\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"clearButton?\": \"/** @deprecated\\n */\",\n      \"resetButton?\": \"/** @deprecated\\n */\",\n      \"applyButton?\": \"/** @deprecated\\n */\",\n      \"newRowsAction?\": \"/** @deprecated\\n */\",\n      \"nullComparator?\": \"/** @deprecated in v21\\n */\"\n    }\n  },\n  \"Comparator\": {\n    \"meta\": { \"isCallSignature\": true, \"typeParams\": [\"T\"] },\n    \"type\": {\n      \"arguments\": { \"left\": \"T\", \"right\": \"T\" },\n      \"returnType\": \"number\"\n    }\n  },\n  \"JoinOperator\": { \"meta\": { \"isTypeAlias\": true }, \"type\": \"'AND' | 'OR'\" },\n  \"ISimpleFilterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"api\": \"GridApi\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"rowModel\": \"IRowModel\",\n      \"filterChangedCallback\": \"(additionalEventAttributes?: any) => void\",\n      \"filterModifiedCallback\": \"() => void\",\n      \"valueGetter\": \"(rowNode: RowNode) => any\",\n      \"doesRowPassOtherFilter\": \"(rowNode: RowNode) => boolean\",\n      \"context\": \"any\",\n      \"clearButton?\": \"boolean\",\n      \"resetButton?\": \"boolean\",\n      \"applyButton?\": \"boolean\",\n      \"buttons?\": \"FilterButtonType[]\",\n      \"closeOnApply?\": \"boolean\",\n      \"newRowsAction?\": \"string\",\n      \"debounceMs?\": \"number\",\n      \"filterOptions?\": \"(IFilterOptionDef | string)[]\",\n      \"defaultOption?\": \"string\",\n      \"defaultJoinOperator?\": \"JoinOperator\",\n      \"suppressAndOrCondition?\": \"boolean\",\n      \"alwaysShowBothConditions?\": \"boolean\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"clearButton?\": \"/** @deprecated\\n */\",\n      \"resetButton?\": \"/** @deprecated\\n */\",\n      \"applyButton?\": \"/** @deprecated\\n */\",\n      \"newRowsAction?\": \"/** @deprecated\\n */\"\n    }\n  },\n  \"ISimpleFilterModel\": {\n    \"meta\": {},\n    \"type\": { \"filterType?\": \"string\", \"type?\": \"string | null\" }\n  },\n  \"ICombinedSimpleModel\": {\n    \"meta\": { \"typeParams\": [\"M extends ISimpleFilterModel\"] },\n    \"type\": {\n      \"filterType?\": \"string\",\n      \"operator\": \"JoinOperator\",\n      \"condition1\": \"M\",\n      \"condition2\": \"M\"\n    }\n  },\n  \"ConditionPosition\": { \"meta\": { \"isEnum\": true }, \"type\": [\"One\", \"Two\"] },\n  \"TextFilterModel\": {\n    \"meta\": {},\n    \"type\": {\n      \"filterType?\": \"string\",\n      \"type?\": \"string | null\",\n      \"filter?\": \"string | null\"\n    }\n  },\n  \"TextComparator\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": {\n        \"filter\": \"string | null | undefined\",\n        \"gridValue\": \"any\",\n        \"filterText\": \"string | null\"\n      },\n      \"returnType\": \"boolean\"\n    }\n  },\n  \"TextFormatter\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"from\": \"string | null\" },\n      \"returnType\": \"string | null\"\n    }\n  },\n  \"ITextFilterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"api\": \"GridApi\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"rowModel\": \"IRowModel\",\n      \"filterChangedCallback\": \"(additionalEventAttributes?: any) => void\",\n      \"filterModifiedCallback\": \"() => void\",\n      \"valueGetter\": \"(rowNode: RowNode) => any\",\n      \"doesRowPassOtherFilter\": \"(rowNode: RowNode) => boolean\",\n      \"context\": \"any\",\n      \"clearButton?\": \"boolean\",\n      \"resetButton?\": \"boolean\",\n      \"applyButton?\": \"boolean\",\n      \"buttons?\": \"FilterButtonType[]\",\n      \"closeOnApply?\": \"boolean\",\n      \"newRowsAction?\": \"string\",\n      \"debounceMs?\": \"number\",\n      \"filterOptions?\": \"(IFilterOptionDef | string)[]\",\n      \"defaultOption?\": \"string\",\n      \"defaultJoinOperator?\": \"JoinOperator\",\n      \"suppressAndOrCondition?\": \"boolean\",\n      \"alwaysShowBothConditions?\": \"boolean\",\n      \"textCustomComparator?\": \"TextComparator\",\n      \"caseSensitive?\": \"boolean\",\n      \"textFormatter?\": \"(from: string) => string\",\n      \"trimInput?\": \"boolean\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"clearButton?\": \"/** @deprecated\\n */\",\n      \"resetButton?\": \"/** @deprecated\\n */\",\n      \"applyButton?\": \"/** @deprecated\\n */\",\n      \"newRowsAction?\": \"/** @deprecated\\n */\"\n    }\n  },\n  \"GridParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"globalEventListener?\": \"Function\",\n      \"$scope?\": \"any\",\n      \"$compile?\": \"any\",\n      \"frameworkOverrides?\": \"IFrameworkOverrides\",\n      \"providedBeanInstances?\": \"{ [key: string]: any; }\",\n      \"modules?\": \"Module[]\"\n    }\n  },\n  \"StartEditingCellParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"rowIndex\": \"number\",\n      \"colKey\": \"string | Column\",\n      \"rowPinned?\": \"string\",\n      \"keyPress?\": \"number\",\n      \"charPress?\": \"string\"\n    }\n  },\n  \"GetCellsParams\": {\n    \"meta\": {},\n    \"type\": { \"rowNodes?\": \"RowNode[]\", \"columns?\": \"(string | Column)[]\" }\n  },\n  \"RefreshCellsParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"rowNodes?\": \"RowNode[]\",\n      \"columns?\": \"(string | Column)[]\",\n      \"force?\": \"boolean\",\n      \"suppressFlash?\": \"boolean\"\n    }\n  },\n  \"FlashCellsParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"rowNodes?\": \"RowNode[]\",\n      \"columns?\": \"(string | Column)[]\",\n      \"flashDelay?\": \"number\",\n      \"fadeDelay?\": \"number\"\n    }\n  },\n  \"GetCellRendererInstancesParams\": {\n    \"meta\": {},\n    \"type\": { \"rowNodes?\": \"RowNode[]\", \"columns?\": \"(string | Column)[]\" }\n  },\n  \"GetCellEditorInstancesParams\": {\n    \"meta\": {},\n    \"type\": { \"rowNodes?\": \"RowNode[]\", \"columns?\": \"(string | Column)[]\" }\n  },\n  \"RedrawRowsParams\": { \"meta\": {}, \"type\": { \"rowNodes?\": \"RowNode[]\" } },\n  \"CreateRangeChartParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"cellRange\": \"CellRangeParams\",\n      \"chartType\": \"ChartType\",\n      \"chartThemeName?\": \"string\",\n      \"chartContainer?\": \"HTMLElement\",\n      \"suppressChartRanges?\": \"boolean\",\n      \"aggFunc?\": \"string | IAggFunc\",\n      \"chartThemeOverrides?\": \"AgChartThemeOverrides\",\n      \"unlinkChart?\": \"boolean\",\n      \"processChartOptions?\": \"(params: ProcessChartOptionsParams) => ChartOptions<any>\"\n    },\n    \"docs\": {\n      \"processChartOptions?\": \"/** @deprecated since v24.0.0, use `chartThemeOverrides` instead\\n */\"\n    }\n  },\n  \"CreatePivotChartParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"chartType\": \"ChartType\",\n      \"chartThemeName?\": \"string\",\n      \"chartContainer?\": \"HTMLElement\",\n      \"chartThemeOverrides?\": \"AgChartThemeOverrides\",\n      \"unlinkChart?\": \"boolean\",\n      \"processChartOptions?\": \"(params: ProcessChartOptionsParams) => ChartOptions<any>\"\n    },\n    \"docs\": {\n      \"processChartOptions?\": \"/** @deprecated since v24.0.0, use `chartThemeOverrides` instead\\n */\"\n    }\n  },\n  \"CreateCrossFilterChartParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"cellRange\": \"CellRangeParams\",\n      \"chartType\": \"ChartType\",\n      \"chartThemeName?\": \"string\",\n      \"chartContainer?\": \"HTMLElement\",\n      \"suppressChartRanges?\": \"boolean\",\n      \"aggFunc?\": \"string | IAggFunc\",\n      \"chartThemeOverrides?\": \"AgChartThemeOverrides\",\n      \"unlinkChart?\": \"boolean\"\n    }\n  },\n  \"DetailGridInfo\": {\n    \"meta\": {},\n    \"type\": { \"api?\": \"GridApi\", \"columnApi?\": \"ColumnApi\", \"id\": \"string\" }\n  },\n  \"IFakeHScrollComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"setHeight(height: number)\": \"void\",\n      \"setViewportHeight(height: number)\": \"void\",\n      \"setContainerHeight(height: number)\": \"void\",\n      \"setRightSpacerFixedWidth(width: number)\": \"void\",\n      \"setLeftSpacerFixedWidth(width: number)\": \"void\",\n      \"setInvisibleStyles(isInvisible: boolean)\": \"void\",\n      \"includeLeftSpacerScrollerCss(cssClass: string, include: boolean)\": \"void\",\n      \"includeRightSpacerScrollerCss(cssClass: string, include: boolean)\": \"void\"\n    }\n  },\n  \"RowAnimationCssClasses\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\n      \"ANIMATION_ON = 'ag-row-animation'\",\n      \"ANIMATION_OFF = 'ag-row-no-animation'\"\n    ]\n  },\n  \"IGridBodyComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"updateLayoutClasses(layoutClass: string, params: UpdateLayoutClassesParams)\": \"void\",\n      \"setColumnMovingCss(cssClass: string | null, on: boolean)\": \"void\",\n      \"setCellSelectableCss(cssClass: string | null, on: boolean)\": \"void\",\n      \"setTopHeight(height: number)\": \"void\",\n      \"setTopDisplay(display: string)\": \"void\",\n      \"setBottomHeight(height: number)\": \"void\",\n      \"setBottomDisplay(display: string)\": \"void\",\n      \"setColumnCount(count: number)\": \"void\",\n      \"setRowCount(count: number)\": \"void\",\n      \"setRowAnimationCssOnBodyViewport(cssClass: string, animate: boolean)\": \"void\",\n      \"setAlwaysVerticalScrollClass(cssClass: string | null, on: boolean)\": \"void\",\n      \"setPinnedTopBottomOverflowY(overflow: string)\": \"void\",\n      \"registerBodyViewportResizeListener(listener: (() => void))\": \"void\"\n    }\n  },\n  \"NavigateParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"scrollIndex\": \"number\",\n      \"scrollType\": \"'top' | 'bottom' | null\",\n      \"scrollColumn\": \"Column | null\",\n      \"focusIndex\": \"number\",\n      \"focusColumn\": \"Column\"\n    }\n  },\n  \"RenderParams\": { \"meta\": {}, \"type\": { \"rows\": \"RowNode\" } },\n  \"RenderRowsFeature\": {\n    \"meta\": {},\n    \"type\": { \"render(rows: RowNode[])\": \"void\" }\n  },\n  \"RowContainerName\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\n      \"LEFT = 'left'\",\n      \"RIGHT = 'right'\",\n      \"CENTER = 'center'\",\n      \"FULL_WIDTH = 'fullWidth'\",\n      \"TOP_LEFT = 'topLeft'\",\n      \"TOP_RIGHT = 'topRight'\",\n      \"TOP_CENTER = 'topCenter'\",\n      \"TOP_FULL_WITH = 'topFullWidth'\",\n      \"BOTTOM_LEFT = 'bottomLeft'\",\n      \"BOTTOM_RIGHT = 'bottomRight'\",\n      \"BOTTOM_CENTER = 'bottomCenter'\",\n      \"BOTTOM_FULL_WITH = 'bottomFullWidth'\"\n    ]\n  },\n  \"IRowContainerComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"setViewportHeight(height: string)\": \"void\",\n      \"setRowCtrls(rowCtrls: RowCtrl[])\": \"void\",\n      \"setDomOrder(domOrder: boolean)\": \"void\",\n      \"setContainerWidth(width: string)\": \"void\"\n    }\n  },\n  \"RowDropZoneEvents\": {\n    \"meta\": {},\n    \"type\": {\n      \"onDragEnter?\": \"(params: RowDragEnterEvent) => void\",\n      \"onDragLeave?\": \"(params: RowDragLeaveEvent) => void\",\n      \"onDragging?\": \"(params: RowDragMoveEvent) => void\",\n      \"onDragStop?\": \"(params: RowDragEndEvent) => void\"\n    }\n  },\n  \"RowDropZoneParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"onDragEnter?\": \"(params: RowDragEnterEvent) => void\",\n      \"onDragLeave?\": \"(params: RowDragLeaveEvent) => void\",\n      \"onDragging?\": \"(params: RowDragMoveEvent) => void\",\n      \"onDragStop?\": \"(params: RowDragEndEvent) => void\",\n      \"getContainer\": \"() => HTMLElement\"\n    }\n  },\n  \"SetScrollsVisibleParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"horizontalScrollShowing\": \"boolean\",\n      \"verticalScrollShowing\": \"boolean\"\n    }\n  },\n  \"IGridComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"updateLayoutClasses(layoutClass: string, params: UpdateLayoutClassesParams)\": \"void\",\n      \"setRtlClass(cssClass: string)\": \"void\",\n      \"destroyGridUi()\": \"void\",\n      \"forceFocusOutOfContainer(up: boolean)\": \"void\",\n      \"addOrRemoveKeyboardFocusClass(value: boolean)\": \"void\",\n      \"getFocusableContainers()\": \"HTMLElement[]\",\n      \"setCursor(value: string | null)\": \"void\",\n      \"setUserSelect(value: string | null)\": \"void\"\n    }\n  },\n  \"PropertyChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"currentValue\": \"any\", \"previousValue\": \"any\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"DropListener\": {\n    \"meta\": {},\n    \"type\": {\n      \"getIconName()\": \"string | null\",\n      \"onDragEnter(params: DraggingEvent)\": \"void\",\n      \"onDragLeave(params: DraggingEvent)\": \"void\",\n      \"onDragging(params: DraggingEvent)\": \"void\",\n      \"onDragStop(params: DraggingEvent)\": \"void\"\n    }\n  },\n  \"IHeaderParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"column\": \"Column\",\n      \"displayName\": \"string\",\n      \"enableSorting\": \"boolean\",\n      \"enableMenu\": \"boolean\",\n      \"showColumnMenu\": \"(source: HTMLElement) => void\",\n      \"progressSort\": \"(multiSort?: boolean) => void\",\n      \"setSort\": \"(sort: string, multiSort?: boolean) => void\",\n      \"columnApi\": \"ColumnApi\",\n      \"eGridHeader\": \"HTMLElement\",\n      \"api\": \"GridApi\",\n      \"context\": \"any\",\n      \"template\": \"string\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"IHeader\": {\n    \"meta\": {},\n    \"type\": { \"refresh(params: IHeaderParams)\": \"boolean\" },\n    \"docs\": {\n      \"refresh(params: IHeaderParams)\": \"/** Get the header to refresh. Gets called whenever Column Defs are updated. */\"\n    }\n  },\n  \"IHeaderComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"getGui()\": \"HTMLElement\",\n      \"destroy?()\": \"void\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"void\",\n      \"init?(params: IHeaderParams)\": \"AgPromise<void> | void\",\n      \"refresh(params: IHeaderParams)\": \"boolean\"\n    },\n    \"docs\": {\n      \"getGui()\": \"/** Return the DOM element of your component, this is what the grid puts into the DOM */\",\n      \"destroy?()\": \"/** Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here */\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"/** A hook to perform any necessary operation just after the GUI for this component has been rendered\\n * on the screen.\\n * If a parent popup is closed and reopened (e.g. for filters), this method is called each time the component is shown.\\n * This is useful for any\\n * logic that requires attachment before executing, such as putting focus on a particular DOM\\n * element. The params has one callback method 'hidePopup', which you can call at any later\\n * point to hide the popup - good if you have an 'Apply' button and you want to hide the popup\\n * after it is pressed. */\",\n      \"init?(params: IHeaderParams)\": \"/** The init(params) method is called on the component once. See below for details on the parameters. */\",\n      \"refresh(params: IHeaderParams)\": \"/** Get the header to refresh. Gets called whenever Column Defs are updated. */\"\n    }\n  },\n  \"HeaderNavigationDirection\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\"UP\", \"DOWN\", \"LEFT\", \"RIGHT\"]\n  },\n  \"HeaderPosition\": {\n    \"meta\": {},\n    \"type\": { \"headerRowIndex\": \"number\", \"column\": \"Column | ColumnGroup\" },\n    \"docs\": {\n      \"headerRowIndex\": \"/** A number from 0 to n, where n is the last header row the grid is rendering */\",\n      \"column\": \"/** The grid column or column group */\"\n    }\n  },\n  \"SelectionCount\": {\n    \"meta\": {},\n    \"type\": { \"selected\": \"number\", \"notSelected\": \"number\" }\n  },\n  \"IHeaderGroupParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"columnGroup\": \"ColumnGroup\",\n      \"displayName\": \"string\",\n      \"setExpanded\": \"(expanded: boolean) => void\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"IHeaderGroup\": { \"meta\": {}, \"type\": {} },\n  \"IHeaderGroupComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"getGui()\": \"HTMLElement\",\n      \"destroy?()\": \"void\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"void\",\n      \"init?(params: IHeaderGroupParams)\": \"AgPromise<void> | void\"\n    },\n    \"docs\": {\n      \"getGui()\": \"/** Return the DOM element of your component, this is what the grid puts into the DOM */\",\n      \"destroy?()\": \"/** Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here */\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"/** A hook to perform any necessary operation just after the GUI for this component has been rendered\\n * on the screen.\\n * If a parent popup is closed and reopened (e.g. for filters), this method is called each time the component is shown.\\n * This is useful for any\\n * logic that requires attachment before executing, such as putting focus on a particular DOM\\n * element. The params has one callback method 'hidePopup', which you can call at any later\\n * point to hide the popup - good if you have an 'Apply' button and you want to hide the popup\\n * after it is pressed. */\",\n      \"init?(params: IHeaderGroupParams)\": \"/** The init(params) method is called on the component once. See below for details on the parameters. */\"\n    }\n  },\n  \"HeaderContainerPosition\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'left' | 'right' | 'center'\"\n  },\n  \"HeaderRowType\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\"COLUMN_GROUP\", \"COLUMN\", \"FLOATING_FILTER\"]\n  },\n  \"HorizontalResizeParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"eResizeBar\": \"HTMLElement\",\n      \"dragStartPixels?\": \"number\",\n      \"onResizeStart\": \"(shiftKey: boolean) => void\",\n      \"onResizing\": \"(delta: number) => void\",\n      \"onResizeEnd\": \"(delta: number) => void\"\n    }\n  },\n  \"ILogger\": { \"meta\": {}, \"type\": { \"log(message: string)\": \"void\" } },\n  \"BaseExportParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"allColumns?\": \"boolean\",\n      \"columnKeys?\": \"(string | Column)[]\",\n      \"fileName?\": \"string\",\n      \"onlySelected?\": \"boolean\",\n      \"onlySelectedAllPages?\": \"boolean\",\n      \"skipColumnGroupHeaders?\": \"boolean\",\n      \"skipColumnHeaders?\": \"boolean\",\n      \"skipRowGroups?\": \"boolean\",\n      \"skipPinnedTop?\": \"boolean\",\n      \"skipPinnedBottom?\": \"boolean\",\n      \"shouldRowBeSkipped?(params: ShouldRowBeSkippedParams)\": \"boolean\",\n      \"processCellCallback?(params: ProcessCellForExportParams)\": \"string\",\n      \"processHeaderCallback?(params: ProcessHeaderForExportParams)\": \"string\",\n      \"processGroupHeaderCallback?(params: ProcessGroupHeaderForExportParams)\": \"string\",\n      \"processRowGroupCallback?(params: ProcessRowGroupForExportParams)\": \"string\",\n      \"columnGroups?\": \"boolean\",\n      \"skipGroups?\": \"boolean\",\n      \"skipHeader?\": \"boolean\"\n    },\n    \"docs\": {\n      \"columnGroups?\": \"/** @deprecated\\n */\",\n      \"skipGroups?\": \"/** @deprecated\\n */\",\n      \"skipHeader?\": \"/** @deprecated\\n */\"\n    }\n  },\n  \"ExportParams\": {\n    \"meta\": { \"typeParams\": [\"T\"] },\n    \"type\": {\n      \"allColumns?\": \"boolean\",\n      \"columnKeys?\": \"(string | Column)[]\",\n      \"fileName?\": \"string\",\n      \"onlySelected?\": \"boolean\",\n      \"onlySelectedAllPages?\": \"boolean\",\n      \"skipColumnGroupHeaders?\": \"boolean\",\n      \"skipColumnHeaders?\": \"boolean\",\n      \"skipRowGroups?\": \"boolean\",\n      \"skipPinnedTop?\": \"boolean\",\n      \"skipPinnedBottom?\": \"boolean\",\n      \"shouldRowBeSkipped?(params: ShouldRowBeSkippedParams)\": \"boolean\",\n      \"processCellCallback?(params: ProcessCellForExportParams)\": \"string\",\n      \"processHeaderCallback?(params: ProcessHeaderForExportParams)\": \"string\",\n      \"processGroupHeaderCallback?(params: ProcessGroupHeaderForExportParams)\": \"string\",\n      \"processRowGroupCallback?(params: ProcessRowGroupForExportParams)\": \"string\",\n      \"columnGroups?\": \"boolean\",\n      \"skipGroups?\": \"boolean\",\n      \"skipHeader?\": \"boolean\",\n      \"prependContent?\": \"T\",\n      \"appendContent?\": \"T\",\n      \"customHeader?\": \"T\",\n      \"customFooter?\": \"T\",\n      \"getCustomContentBelowRow?\": \"(params: ProcessRowGroupForExportParams) => T | undefined\"\n    },\n    \"docs\": {\n      \"columnGroups?\": \"/** @deprecated\\n */\",\n      \"skipGroups?\": \"/** @deprecated\\n */\",\n      \"skipHeader?\": \"/** @deprecated\\n */\",\n      \"customHeader?\": \"/** @deprecated Use prependContent\\n */\",\n      \"customFooter?\": \"/** @deprecated Use appendContent\\n */\"\n    }\n  },\n  \"PackageFileParams\": { \"meta\": { \"typeParams\": [\"T\"] }, \"type\": {} },\n  \"CsvCell\": {\n    \"meta\": {},\n    \"type\": { \"data\": \"CsvCellData\", \"mergeAcross?\": \"number\" }\n  },\n  \"CsvCellData\": { \"meta\": {}, \"type\": { \"value\": \"string | null\" } },\n  \"CsvCustomContent\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"CsvCell[][] | string\"\n  },\n  \"CsvExportParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"allColumns?\": \"boolean\",\n      \"columnKeys?\": \"(string | Column)[]\",\n      \"fileName?\": \"string\",\n      \"onlySelected?\": \"boolean\",\n      \"onlySelectedAllPages?\": \"boolean\",\n      \"skipColumnGroupHeaders?\": \"boolean\",\n      \"skipColumnHeaders?\": \"boolean\",\n      \"skipRowGroups?\": \"boolean\",\n      \"skipPinnedTop?\": \"boolean\",\n      \"skipPinnedBottom?\": \"boolean\",\n      \"shouldRowBeSkipped?(params: ShouldRowBeSkippedParams)\": \"boolean\",\n      \"processCellCallback?(params: ProcessCellForExportParams)\": \"string\",\n      \"processHeaderCallback?(params: ProcessHeaderForExportParams)\": \"string\",\n      \"processGroupHeaderCallback?(params: ProcessGroupHeaderForExportParams)\": \"string\",\n      \"processRowGroupCallback?(params: ProcessRowGroupForExportParams)\": \"string\",\n      \"columnGroups?\": \"boolean\",\n      \"skipGroups?\": \"boolean\",\n      \"skipHeader?\": \"boolean\",\n      \"prependContent?\": \"CsvCustomContent\",\n      \"appendContent?\": \"CsvCustomContent\",\n      \"customHeader?\": \"CsvCustomContent\",\n      \"customFooter?\": \"CsvCustomContent\",\n      \"getCustomContentBelowRow?\": \"(params: ProcessRowGroupForExportParams) => CsvCustomContent | undefined\",\n      \"columnSeparator?\": \"string\",\n      \"suppressQuotes?\": \"boolean\"\n    },\n    \"docs\": {\n      \"columnGroups?\": \"/** @deprecated\\n */\",\n      \"skipGroups?\": \"/** @deprecated\\n */\",\n      \"skipHeader?\": \"/** @deprecated\\n */\",\n      \"customHeader?\": \"/** @deprecated Use prependContent\\n */\",\n      \"customFooter?\": \"/** @deprecated Use appendContent\\n */\"\n    }\n  },\n  \"ShouldRowBeSkippedParams\": {\n    \"meta\": {},\n    \"type\": { \"node\": \"RowNode\", \"api\": \"GridApi\", \"context\": \"any\" },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"ProcessCellForExportParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"value\": \"any\",\n      \"accumulatedRowIndex?\": \"number\",\n      \"node?\": \"RowNode | null\",\n      \"column\": \"Column\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\",\n      \"type\": \"string\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"ProcessHeaderForExportParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"column\": \"Column\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"ProcessGroupHeaderForExportParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"columnGroup\": \"ColumnGroup\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"ProcessRowGroupForExportParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"ContainerType\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'columnMenu' | 'contextMenu' | 'toolPanel' | 'floatingFilter'\"\n  },\n  \"IAfterGuiAttachedParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"container?\": \"ContainerType\",\n      \"hidePopup?\": \"() => void\",\n      \"suppressFocus?\": \"boolean\"\n    }\n  },\n  \"FontStyle\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'normal' | 'italic' | 'oblique'\"\n  },\n  \"FontWeight\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'normal' | 'bold' | 'bolder' | 'lighter' | '100' | '200' | '300' | '400' | '500' | '600' | '700' | '800' | '900'\"\n  },\n  \"AgChartThemeName\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'ag-default' | 'ag-default-dark' | 'ag-material' | 'ag-material-dark' | 'ag-pastel' | 'ag-pastel-dark' | 'ag-solar' | 'ag-solar-dark' | 'ag-vivid' | 'ag-vivid-dark'\"\n  },\n  \"AgChartThemePalette\": {\n    \"meta\": {},\n    \"type\": { \"fills\": \"string[]\", \"strokes\": \"string[]\" }\n  },\n  \"AgChartThemeOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"palette?\": \"AgChartThemePalette\",\n      \"overrides?\": \"AgChartThemeOverrides\"\n    }\n  },\n  \"AgChartTheme\": {\n    \"meta\": {},\n    \"type\": {\n      \"palette?\": \"AgChartThemePalette\",\n      \"overrides?\": \"AgChartThemeOverrides\",\n      \"baseTheme?\": \"AgChartThemeName\"\n    }\n  },\n  \"AgChartThemeOverrides\": {\n    \"meta\": {},\n    \"type\": {\n      \"cartesian?\": \"AgCartesianChartOptions<AgCartesianAxesTheme, AgCartesianSeriesTheme>\",\n      \"column?\": \"AgCartesianChartOptions<AgCartesianAxesTheme, AgBarSeriesOptions>\",\n      \"bar?\": \"AgCartesianChartOptions<AgCartesianAxesTheme, AgBarSeriesOptions>\",\n      \"line?\": \"AgCartesianChartOptions<AgCartesianAxesTheme, AgLineSeriesOptions>\",\n      \"area?\": \"AgCartesianChartOptions<AgCartesianAxesTheme, AgAreaSeriesOptions>\",\n      \"scatter?\": \"AgCartesianChartOptions<AgCartesianAxesTheme, AgScatterSeriesOptions>\",\n      \"histogram?\": \"AgCartesianChartOptions<AgCartesianAxesTheme, AgHistogramSeriesOptions>\",\n      \"polar?\": \"AgPolarChartOptions<AgPolarAxesTheme, AgPolarSeriesTheme>\",\n      \"pie?\": \"AgPolarChartOptions<AgPolarAxesTheme, AgPieSeriesOptions>\",\n      \"common?\": \"any\"\n    }\n  },\n  \"AgCartesianAxesTheme\": {\n    \"meta\": {},\n    \"type\": {\n      \"number?\": \"Omit<AgNumberAxisOptions, 'type'>\",\n      \"category?\": \"Omit<AgCategoryAxisOptions, 'type'>\",\n      \"groupedCategory?\": \"Omit<AgGroupedCategoryAxisOptions, 'type'>\",\n      \"time?\": \"Omit<AgTimeAxisOptions, 'type'>\"\n    }\n  },\n  \"AgCartesianSeriesTheme\": {\n    \"meta\": {},\n    \"type\": {\n      \"line?\": \"AgLineSeriesOptions\",\n      \"scatter?\": \"AgScatterSeriesOptions\",\n      \"area?\": \"AgAreaSeriesOptions\",\n      \"bar?\": \"AgBarSeriesOptions\",\n      \"histogram?\": \"AgHistogramSeriesOptions\"\n    }\n  },\n  \"AgPolarAxesTheme\": { \"meta\": {}, \"type\": {} },\n  \"AgPolarSeriesTheme\": {\n    \"meta\": {},\n    \"type\": { \"pie?\": \"AgPieSeriesOptions\" }\n  },\n  \"AgChartPaddingOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"top?\": \"number\",\n      \"right?\": \"number\",\n      \"bottom?\": \"number\",\n      \"left?\": \"number\"\n    }\n  },\n  \"AgChartLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"fontStyle?\": \"FontStyle\",\n      \"fontWeight?\": \"FontWeight\",\n      \"fontSize?\": \"number\",\n      \"fontFamily?\": \"string\",\n      \"color?\": \"string\"\n    }\n  },\n  \"AgDropShadowOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"color?\": \"string\",\n      \"xOffset?\": \"number\",\n      \"yOffset?\": \"number\",\n      \"blue?\": \"number\"\n    }\n  },\n  \"AgChartCaptionOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"padding?\": \"AgChartPaddingOptions\",\n      \"text?\": \"string\",\n      \"fontStyle?\": \"FontStyle\",\n      \"fontWeight?\": \"FontWeight\",\n      \"fontSize?\": \"number\",\n      \"fontFamily?\": \"string\",\n      \"color?\": \"string\"\n    }\n  },\n  \"AgNavigatorMaskOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fill?\": \"string\",\n      \"stroke?\": \"string\",\n      \"strokeWidth?\": \"number\",\n      \"fillOpacity?\": \"number\"\n    }\n  },\n  \"AgNavigatorHandleOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fill?\": \"string\",\n      \"stroke?\": \"string\",\n      \"strokeWidth?\": \"number\",\n      \"width?\": \"number\",\n      \"height?\": \"number\",\n      \"gripLineGap?\": \"number\",\n      \"gripLineLength?\": \"number\"\n    }\n  },\n  \"AgNavigatorOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"height?\": \"number\",\n      \"margin?\": \"number\",\n      \"min?\": \"number\",\n      \"max?\": \"number\",\n      \"mask?\": \"AgNavigatorMaskOptions\",\n      \"minHandle?\": \"AgNavigatorHandleOptions\",\n      \"maxHandle?\": \"AgNavigatorHandleOptions\"\n    }\n  },\n  \"AgChartLegendPosition\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'top' | 'right' | 'bottom' | 'left'\"\n  },\n  \"AgChartLegendMarkerOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"size?\": \"number\",\n      \"shape?\": \"string | (new () => any)\",\n      \"padding?\": \"number\",\n      \"strokeWidth?\": \"number\"\n    }\n  },\n  \"AgChartLegendLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"color?\": \"string\",\n      \"fontStyle?\": \"FontStyle\",\n      \"fontWeight?\": \"FontWeight\",\n      \"fontSize?\": \"number\",\n      \"fontFamily?\": \"string\"\n    }\n  },\n  \"AgChartLegendItemOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"marker?\": \"AgChartLegendMarkerOptions\",\n      \"label?\": \"AgChartLegendLabelOptions\",\n      \"paddingX?\": \"number\",\n      \"paddingY?\": \"number\"\n    }\n  },\n  \"AgChartLegendOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"position?\": \"AgChartLegendPosition\",\n      \"spacing?\": \"number\",\n      \"item?\": \"AgChartLegendItemOptions\",\n      \"layoutHorizontalSpacing?\": \"number\",\n      \"layoutVerticalSpacing?\": \"number\",\n      \"itemSpacing?\": \"number\",\n      \"markerShape?\": \"string | (new () => any)\",\n      \"markerSize?\": \"number\",\n      \"strokeWidth?\": \"number\",\n      \"color?\": \"string\",\n      \"fontStyle?\": \"FontStyle\",\n      \"fontWeight?\": \"FontWeight\",\n      \"fontSize?\": \"number\",\n      \"fontFamily?\": \"string\"\n    },\n    \"docs\": {\n      \"layoutHorizontalSpacing?\": \"/** @deprecated\\n */\",\n      \"layoutVerticalSpacing?\": \"/** @deprecated\\n */\",\n      \"itemSpacing?\": \"/** @deprecated\\n */\",\n      \"markerShape?\": \"/** @deprecated\\n */\",\n      \"markerSize?\": \"/** @deprecated\\n */\",\n      \"strokeWidth?\": \"/** @deprecated\\n */\",\n      \"color?\": \"/** @deprecated\\n */\",\n      \"fontStyle?\": \"/** @deprecated\\n */\",\n      \"fontWeight?\": \"/** @deprecated\\n */\",\n      \"fontSize?\": \"/** @deprecated\\n */\",\n      \"fontFamily?\": \"/** @deprecated\\n */\"\n    }\n  },\n  \"AgBaseChartOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"container?\": \"HTMLElement\",\n      \"data?\": \"any[]\",\n      \"width?\": \"number\",\n      \"height?\": \"number\",\n      \"autoSize?\": \"boolean\",\n      \"padding?\": \"AgChartPaddingOptions\",\n      \"background?\": \"{ visible?: boolean; fill?: string; }\",\n      \"title?\": \"AgChartCaptionOptions\",\n      \"subtitle?\": \"AgChartCaptionOptions\",\n      \"tooltipClass?\": \"string\",\n      \"tooltipTracking?\": \"boolean\",\n      \"navigator?\": \"AgNavigatorOptions\",\n      \"legend?\": \"AgChartLegendOptions\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"theme?\": \"string | AgChartTheme\"\n    }\n  },\n  \"AgBaseAxisOptions\": { \"meta\": {}, \"type\": { \"keys?\": \"string[]\" } },\n  \"AgCartesianAxisPosition\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'top' | 'right' | 'bottom' | 'left'\"\n  },\n  \"AgAxisLineOptions\": {\n    \"meta\": {},\n    \"type\": { \"width?\": \"number\", \"color?\": \"string\" }\n  },\n  \"AgAxisTickOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"width?\": \"number\",\n      \"size?\": \"number\",\n      \"color?\": \"string\",\n      \"count?\": \"any\"\n    }\n  },\n  \"AgAxisLabelFormatterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"value\": \"any\",\n      \"index\": \"number\",\n      \"fractionDigits?\": \"number\",\n      \"formatter?\": \"(x: any) => string\"\n    }\n  },\n  \"AgAxisLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fontStyle?\": \"FontStyle\",\n      \"fontWeight?\": \"FontWeight\",\n      \"fontSize?\": \"number\",\n      \"fontFamily?\": \"string\",\n      \"padding?\": \"number\",\n      \"color?\": \"string\",\n      \"rotation?\": \"number\",\n      \"format?\": \"string\",\n      \"formatter?\": \"(params: AgAxisLabelFormatterParams) => string\"\n    }\n  },\n  \"AgAxisGridStyle\": {\n    \"meta\": {},\n    \"type\": { \"stroke?\": \"string\", \"lineDash?\": \"number[]\" }\n  },\n  \"AgBaseCartesianAxisOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"keys?\": \"string[]\",\n      \"position?\": \"AgCartesianAxisPosition\",\n      \"title?\": \"AgChartCaptionOptions\",\n      \"line?\": \"AgAxisLineOptions\",\n      \"tick?\": \"AgAxisTickOptions\",\n      \"label?\": \"AgAxisLabelOptions\",\n      \"gridStyle?\": \"AgAxisGridStyle[]\"\n    }\n  },\n  \"AgNumberAxisOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"keys?\": \"string[]\",\n      \"position?\": \"AgCartesianAxisPosition\",\n      \"title?\": \"AgChartCaptionOptions\",\n      \"line?\": \"AgAxisLineOptions\",\n      \"tick?\": \"AgAxisTickOptions\",\n      \"label?\": \"AgAxisLabelOptions\",\n      \"gridStyle?\": \"AgAxisGridStyle[]\",\n      \"type\": \"'number'\",\n      \"nice?\": \"boolean\",\n      \"min?\": \"number\",\n      \"max?\": \"number\"\n    }\n  },\n  \"AgCategoryAxisOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"keys?\": \"string[]\",\n      \"position?\": \"AgCartesianAxisPosition\",\n      \"title?\": \"AgChartCaptionOptions\",\n      \"line?\": \"AgAxisLineOptions\",\n      \"tick?\": \"AgAxisTickOptions\",\n      \"label?\": \"AgAxisLabelOptions\",\n      \"gridStyle?\": \"AgAxisGridStyle[]\",\n      \"type\": \"'category'\",\n      \"paddingInner?\": \"number\",\n      \"paddingOuter?\": \"number\"\n    }\n  },\n  \"AgGroupedCategoryAxisOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"keys?\": \"string[]\",\n      \"position?\": \"AgCartesianAxisPosition\",\n      \"title?\": \"AgChartCaptionOptions\",\n      \"line?\": \"AgAxisLineOptions\",\n      \"tick?\": \"AgAxisTickOptions\",\n      \"label?\": \"AgAxisLabelOptions\",\n      \"gridStyle?\": \"AgAxisGridStyle[]\",\n      \"type\": \"'groupedCategory'\"\n    }\n  },\n  \"AgTimeAxisOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"keys?\": \"string[]\",\n      \"position?\": \"AgCartesianAxisPosition\",\n      \"title?\": \"AgChartCaptionOptions\",\n      \"line?\": \"AgAxisLineOptions\",\n      \"tick?\": \"AgAxisTickOptions\",\n      \"label?\": \"AgAxisLabelOptions\",\n      \"gridStyle?\": \"AgAxisGridStyle[]\",\n      \"type\": \"'time'\",\n      \"nice?\": \"boolean\"\n    }\n  },\n  \"AgCartesianAxisOptions\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"AgNumberAxisOptions | AgCategoryAxisOptions | AgGroupedCategoryAxisOptions | AgTimeAxisOptions\"\n  },\n  \"AgPolarAxisOptions\": { \"meta\": {}, \"type\": {} },\n  \"AgBaseSeriesOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"tooltipEnabled?\": \"boolean\",\n      \"data?\": \"any[]\",\n      \"visible?\": \"boolean\",\n      \"showInLegend?\": \"boolean\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"highlightStyle?\": \"{ fill?: string; stroke?: string; }\"\n    }\n  },\n  \"AgTooltipRendererResult\": {\n    \"meta\": {},\n    \"type\": { \"title?\": \"string\", \"content?\": \"string\" }\n  },\n  \"AgSeriesTooltipRendererParams\": {\n    \"meta\": {},\n    \"type\": { \"datum\": \"any\", \"title?\": \"string\", \"color?\": \"string\" }\n  },\n  \"AgCartesianSeriesTooltipRendererParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"datum\": \"any\",\n      \"title?\": \"string\",\n      \"color?\": \"string\",\n      \"xKey\": \"string\",\n      \"xValue?\": \"any\",\n      \"xName?\": \"string\",\n      \"yKey\": \"string\",\n      \"yValue?\": \"any\",\n      \"yName?\": \"string\"\n    }\n  },\n  \"AgPolarSeriesTooltipRendererParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"datum\": \"any\",\n      \"title?\": \"string\",\n      \"color?\": \"string\",\n      \"angleKey\": \"string\",\n      \"angleValue?\": \"any\",\n      \"angleName?\": \"string\",\n      \"radiusKey?\": \"string\",\n      \"radiusValue?\": \"any\",\n      \"radiusName?\": \"string\"\n    }\n  },\n  \"AgScatterSeriesTooltipRendererParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"datum\": \"any\",\n      \"title?\": \"string\",\n      \"color?\": \"string\",\n      \"xKey\": \"string\",\n      \"xValue?\": \"any\",\n      \"xName?\": \"string\",\n      \"yKey\": \"string\",\n      \"yValue?\": \"any\",\n      \"yName?\": \"string\",\n      \"sizeKey?\": \"string\",\n      \"sizeName?\": \"string\",\n      \"labelKey?\": \"string\",\n      \"labelName?\": \"string\"\n    }\n  },\n  \"AgSeriesMarker\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"shape?\": \"string\",\n      \"size?\": \"number\",\n      \"maxSize?\": \"number\",\n      \"fill?\": \"string\",\n      \"stroke?\": \"string\",\n      \"strokeWidth?\": \"number\"\n    }\n  },\n  \"AgCartesianSeriesMarkerFormatterParams\": {\n    \"meta\": {},\n    \"type\": { \"xKey\": \"string\", \"yKey\": \"string\" }\n  },\n  \"AgCartesianSeriesMarkerFormat\": {\n    \"meta\": {},\n    \"type\": {\n      \"fill?\": \"string\",\n      \"stroke?\": \"string\",\n      \"strokeWidth?\": \"number\",\n      \"size?\": \"number\"\n    }\n  },\n  \"AgCartesianSeriesMarker\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"shape?\": \"string\",\n      \"size?\": \"number\",\n      \"maxSize?\": \"number\",\n      \"fill?\": \"string\",\n      \"stroke?\": \"string\",\n      \"strokeWidth?\": \"number\",\n      \"formatter?\": \"(params: AgCartesianSeriesMarkerFormatterParams) => AgCartesianSeriesMarkerFormat\"\n    }\n  },\n  \"AgSeriesTooltip\": { \"meta\": {}, \"type\": { \"enabled?\": \"boolean\" } },\n  \"AgLineSeriesTooltip\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"renderer?\": \"(params: AgCartesianSeriesTooltipRendererParams) => string | AgTooltipRendererResult\"\n    }\n  },\n  \"AgLineSeriesLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"fontStyle?\": \"FontStyle\",\n      \"fontWeight?\": \"FontWeight\",\n      \"fontSize?\": \"number\",\n      \"fontFamily?\": \"string\",\n      \"color?\": \"string\",\n      \"formatter?\": \"(params: { value: any; }) => string\"\n    }\n  },\n  \"AgLineSeriesOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"tooltipEnabled?\": \"boolean\",\n      \"data?\": \"any[]\",\n      \"visible?\": \"boolean\",\n      \"showInLegend?\": \"boolean\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"highlightStyle?\": \"{ fill?: string; stroke?: string; }\",\n      \"type?\": \"'line'\",\n      \"marker?\": \"AgCartesianSeriesMarker\",\n      \"label?\": \"AgLineSeriesLabelOptions\",\n      \"xKey?\": \"string\",\n      \"yKey?\": \"string\",\n      \"xName?\": \"string\",\n      \"yName?\": \"string\",\n      \"title?\": \"string\",\n      \"stroke?\": \"string\",\n      \"strokeWidth?\": \"number\",\n      \"strokeOpacity?\": \"number\",\n      \"lineDash?\": \"number[]\",\n      \"lineDashOffset?\": \"number\",\n      \"tooltip?\": \"AgLineSeriesTooltip\",\n      \"tooltipRenderer?\": \"(params: AgCartesianSeriesTooltipRendererParams) => string | AgTooltipRendererResult\"\n    }\n  },\n  \"AgScatterSeriesTooltip\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"renderer?\": \"(params: AgScatterSeriesTooltipRendererParams) => string | AgTooltipRendererResult\"\n    }\n  },\n  \"AgScatterSeriesLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"fontStyle?\": \"FontStyle\",\n      \"fontWeight?\": \"FontWeight\",\n      \"fontSize?\": \"number\",\n      \"fontFamily?\": \"string\",\n      \"color?\": \"string\"\n    }\n  },\n  \"AgScatterSeriesOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"tooltipEnabled?\": \"boolean\",\n      \"data?\": \"any[]\",\n      \"visible?\": \"boolean\",\n      \"showInLegend?\": \"boolean\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"highlightStyle?\": \"{ fill?: string; stroke?: string; }\",\n      \"type?\": \"'scatter'\",\n      \"marker?\": \"AgCartesianSeriesMarker\",\n      \"label?\": \"AgScatterSeriesLabelOptions\",\n      \"xKey?\": \"string\",\n      \"yKey?\": \"string\",\n      \"xName?\": \"string\",\n      \"yName?\": \"string\",\n      \"title?\": \"string\",\n      \"fill?\": \"string\",\n      \"stroke?\": \"string\",\n      \"strokeWidth?\": \"number\",\n      \"fillOpacity?\": \"number\",\n      \"strokeOpacity?\": \"number\",\n      \"tooltip?\": \"AgScatterSeriesTooltip\",\n      \"tooltipRenderer?\": \"(params: AgScatterSeriesTooltipRendererParams) => string | AgTooltipRendererResult\"\n    }\n  },\n  \"AgAreaSeriesTooltip\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"renderer?\": \"(params: AgCartesianSeriesTooltipRendererParams) => string | AgTooltipRendererResult\",\n      \"format?\": \"string\"\n    }\n  },\n  \"AgAreaSeriesLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"fontStyle?\": \"FontStyle\",\n      \"fontWeight?\": \"FontWeight\",\n      \"fontSize?\": \"number\",\n      \"fontFamily?\": \"string\",\n      \"color?\": \"string\",\n      \"formatter?\": \"(params: { value: any; }) => string\"\n    }\n  },\n  \"AgAreaSeriesOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"tooltipEnabled?\": \"boolean\",\n      \"data?\": \"any[]\",\n      \"visible?\": \"boolean\",\n      \"showInLegend?\": \"boolean\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"highlightStyle?\": \"{ fill?: string; stroke?: string; }\",\n      \"type?\": \"'area'\",\n      \"marker?\": \"AgCartesianSeriesMarker\",\n      \"label?\": \"AgAreaSeriesLabelOptions\",\n      \"xKey?\": \"string\",\n      \"yKeys?\": \"string[]\",\n      \"xName?\": \"string\",\n      \"yNames?\": \"string[]\",\n      \"fills?\": \"string[]\",\n      \"strokes?\": \"string[]\",\n      \"strokeWidth?\": \"number\",\n      \"fillOpacity?\": \"number\",\n      \"strokeOpacity?\": \"number\",\n      \"lineDash?\": \"number[]\",\n      \"lineDashOffset?\": \"number\",\n      \"shadow?\": \"AgDropShadowOptions\",\n      \"tooltip?\": \"AgAreaSeriesTooltip\",\n      \"tooltipRenderer?\": \"(params: AgCartesianSeriesTooltipRendererParams) => string | AgTooltipRendererResult\"\n    }\n  },\n  \"AgBarSeriesLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"fontStyle?\": \"FontStyle\",\n      \"fontWeight?\": \"FontWeight\",\n      \"fontSize?\": \"number\",\n      \"fontFamily?\": \"string\",\n      \"color?\": \"string\",\n      \"formatter?\": \"(params: { value: number; }) => string\"\n    }\n  },\n  \"AgBarSeriesFormatterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"datum\": \"any\",\n      \"fill?\": \"string\",\n      \"stroke?\": \"string\",\n      \"strokeWidth\": \"number\",\n      \"highlighted\": \"boolean\",\n      \"xKey\": \"string\",\n      \"yKey\": \"string\"\n    }\n  },\n  \"AgBarSeriesFormat\": {\n    \"meta\": {},\n    \"type\": { \"fill?\": \"string\", \"stroke?\": \"string\", \"strokeWidth?\": \"number\" }\n  },\n  \"AgBarSeriesTooltip\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"renderer?\": \"(params: AgCartesianSeriesTooltipRendererParams) => string | AgTooltipRendererResult\"\n    }\n  },\n  \"AgBarSeriesOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"tooltipEnabled?\": \"boolean\",\n      \"data?\": \"any[]\",\n      \"visible?\": \"boolean\",\n      \"showInLegend?\": \"boolean\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"highlightStyle?\": \"{ fill?: string; stroke?: string; }\",\n      \"type?\": \"'bar' | 'column'\",\n      \"grouped?\": \"boolean\",\n      \"normalizedTo?\": \"number\",\n      \"xKey?\": \"string\",\n      \"yKeys?\": \"string[] | string[][]\",\n      \"xName?\": \"string\",\n      \"yNames?\": \"string[] | { [key in string]: string; }\",\n      \"fills?\": \"string[]\",\n      \"strokes?\": \"string[]\",\n      \"strokeWidth?\": \"number\",\n      \"fillOpacity?\": \"number\",\n      \"strokeOpacity?\": \"number\",\n      \"lineDash?\": \"number[]\",\n      \"lineDashOffset?\": \"number\",\n      \"shadow?\": \"AgDropShadowOptions\",\n      \"label?\": \"AgBarSeriesLabelOptions\",\n      \"tooltip?\": \"AgBarSeriesTooltip\",\n      \"tooltipRenderer?\": \"(params: AgCartesianSeriesTooltipRendererParams) => string | AgTooltipRendererResult\",\n      \"formatter?\": \"(params: AgBarSeriesFormatterParams) => AgBarSeriesFormat\"\n    }\n  },\n  \"AgHistogramSeriesLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"fontStyle?\": \"FontStyle\",\n      \"fontWeight?\": \"FontWeight\",\n      \"fontSize?\": \"number\",\n      \"fontFamily?\": \"string\",\n      \"color?\": \"string\",\n      \"formatter?\": \"(params: { value: number; }) => string\"\n    }\n  },\n  \"AgHistogramSeriesTooltip\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"renderer?\": \"(params: AgCartesianSeriesTooltipRendererParams) => string | AgTooltipRendererResult\"\n    }\n  },\n  \"AgHistogramSeriesOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"tooltipEnabled?\": \"boolean\",\n      \"data?\": \"any[]\",\n      \"visible?\": \"boolean\",\n      \"showInLegend?\": \"boolean\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"highlightStyle?\": \"{ fill?: string; stroke?: string; }\",\n      \"type?\": \"'histogram'\",\n      \"fill?\": \"string\",\n      \"stroke?\": \"string\",\n      \"fillOpacity?\": \"number\",\n      \"strokeOpacity?\": \"number\",\n      \"strokeWidth?\": \"number\",\n      \"lineDash?\": \"number[]\",\n      \"lineDashOffset?\": \"number\",\n      \"xKey?\": \"string\",\n      \"xName?\": \"string\",\n      \"yKey?\": \"string\",\n      \"yName?\": \"string\",\n      \"areaPlot?\": \"boolean\",\n      \"bins?\": \"[number, number][]\",\n      \"binCount?\": \"number\",\n      \"aggregation?\": \"'count' | 'sum' | 'mean'\",\n      \"shadow?\": \"AgDropShadowOptions\",\n      \"label?\": \"AgHistogramSeriesLabelOptions\",\n      \"tooltip?\": \"AgHistogramSeriesTooltip\",\n      \"tooltipRenderer?\": \"(params: AgCartesianSeriesTooltipRendererParams) => string | AgTooltipRendererResult\"\n    }\n  },\n  \"AgPieSeriesLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"fontStyle?\": \"FontStyle\",\n      \"fontWeight?\": \"FontWeight\",\n      \"fontSize?\": \"number\",\n      \"fontFamily?\": \"string\",\n      \"color?\": \"string\",\n      \"offset?\": \"number\",\n      \"minAngle?\": \"number\"\n    }\n  },\n  \"AgPieSeriesFormatterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"datum\": \"any\",\n      \"fill?\": \"string\",\n      \"stroke?\": \"string\",\n      \"strokeWidth\": \"number\",\n      \"highlighted\": \"boolean\",\n      \"angleKey\": \"string\",\n      \"radiusKey?\": \"string\"\n    }\n  },\n  \"AgPieSeriesFormat\": {\n    \"meta\": {},\n    \"type\": { \"fill?\": \"string\", \"stroke?\": \"string\", \"strokeWidth?\": \"number\" }\n  },\n  \"AgPieSeriesTooltip\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"renderer?\": \"(params: AgPieSeriesTooltipRendererParams) => string | AgTooltipRendererResult\"\n    }\n  },\n  \"AgPieTitleOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"padding?\": \"AgChartPaddingOptions\",\n      \"text?\": \"string\",\n      \"fontStyle?\": \"FontStyle\",\n      \"fontWeight?\": \"FontWeight\",\n      \"fontSize?\": \"number\",\n      \"fontFamily?\": \"string\",\n      \"color?\": \"string\",\n      \"showInLegend?\": \"boolean\"\n    }\n  },\n  \"AgPieSeriesOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"tooltipEnabled?\": \"boolean\",\n      \"data?\": \"any[]\",\n      \"visible?\": \"boolean\",\n      \"showInLegend?\": \"boolean\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"highlightStyle?\": \"{ fill?: string; stroke?: string; }\",\n      \"type?\": \"'pie'\",\n      \"title?\": \"AgPieTitleOptions\",\n      \"label?\": \"AgPieSeriesLabelOptions\",\n      \"callout?\": \"{ colors?: string[]; length?: number; strokeWidth?: number; }\",\n      \"angleKey?\": \"string\",\n      \"angleName?\": \"string\",\n      \"radiusKey?\": \"string\",\n      \"radiusName?\": \"string\",\n      \"labelKey?\": \"string\",\n      \"labelName?\": \"string\",\n      \"fills?\": \"string[]\",\n      \"strokes?\": \"string[]\",\n      \"fillOpacity?\": \"number\",\n      \"strokeOpacity?\": \"number\",\n      \"strokeWidth?\": \"number\",\n      \"lineDash?\": \"number[]\",\n      \"lineDashOffset?\": \"number\",\n      \"rotation?\": \"number\",\n      \"outerRadiusOffset?\": \"number\",\n      \"innerRadiusOffset?\": \"number\",\n      \"shadow?\": \"AgDropShadowOptions\",\n      \"tooltip?\": \"AgPieSeriesTooltip\",\n      \"tooltipRenderer?\": \"(params: AgPieSeriesTooltipRendererParams) => string | AgTooltipRendererResult\",\n      \"formatter?\": \"(params: AgPieSeriesFormatterParams) => AgPieSeriesFormat\"\n    }\n  },\n  \"AgPieSeriesTooltipRendererParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"datum\": \"any\",\n      \"title?\": \"string\",\n      \"color?\": \"string\",\n      \"angleKey\": \"string\",\n      \"angleValue?\": \"any\",\n      \"angleName?\": \"string\",\n      \"radiusKey?\": \"string\",\n      \"radiusValue?\": \"any\",\n      \"radiusName?\": \"string\",\n      \"labelKey?\": \"string\",\n      \"labelName?\": \"string\"\n    }\n  },\n  \"AgCartesianSeriesOptions\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"AgLineSeriesOptions | AgScatterSeriesOptions | AgAreaSeriesOptions | AgBarSeriesOptions | AgHistogramSeriesOptions\"\n  },\n  \"AgPolarSeriesOptions\": { \"meta\": {}, \"type\": {} },\n  \"AgCartesianChartOptions\": {\n    \"meta\": { \"typeParams\": [\"TAxisOptions\", \"TSeriesOptions\"] },\n    \"type\": {\n      \"container?\": \"HTMLElement\",\n      \"data?\": \"any[]\",\n      \"width?\": \"number\",\n      \"height?\": \"number\",\n      \"autoSize?\": \"boolean\",\n      \"padding?\": \"AgChartPaddingOptions\",\n      \"background?\": \"{ visible?: boolean; fill?: string; }\",\n      \"title?\": \"AgChartCaptionOptions\",\n      \"subtitle?\": \"AgChartCaptionOptions\",\n      \"tooltipClass?\": \"string\",\n      \"tooltipTracking?\": \"boolean\",\n      \"navigator?\": \"AgNavigatorOptions\",\n      \"legend?\": \"AgChartLegendOptions\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"theme?\": \"string | AgChartTheme\",\n      \"type?\": \"'cartesian' | 'groupedCategory' | 'line' | 'bar' | 'column' | 'area' | 'scatter'\",\n      \"axes?\": \"TAxisOptions\",\n      \"series?\": \"TSeriesOptions\"\n    }\n  },\n  \"AgPolarChartOptions\": {\n    \"meta\": { \"typeParams\": [\"TAxisOptions\", \"TSeriesOptions\"] },\n    \"type\": {\n      \"container?\": \"HTMLElement\",\n      \"data?\": \"any[]\",\n      \"width?\": \"number\",\n      \"height?\": \"number\",\n      \"autoSize?\": \"boolean\",\n      \"padding?\": \"AgChartPaddingOptions\",\n      \"background?\": \"{ visible?: boolean; fill?: string; }\",\n      \"title?\": \"AgChartCaptionOptions\",\n      \"subtitle?\": \"AgChartCaptionOptions\",\n      \"tooltipClass?\": \"string\",\n      \"tooltipTracking?\": \"boolean\",\n      \"navigator?\": \"AgNavigatorOptions\",\n      \"legend?\": \"AgChartLegendOptions\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"theme?\": \"string | AgChartTheme\",\n      \"type?\": \"'polar' | 'pie'\",\n      \"axes?\": \"TAxisOptions\",\n      \"series?\": \"TSeriesOptions\"\n    }\n  },\n  \"AgChartOptions\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"AgCartesianChartOptions | AgPolarChartOptions\"\n  },\n  \"IAggFuncService\": {\n    \"meta\": {},\n    \"type\": {\n      \"addAggFuncs(aggFuncs: { [key: string]: IAggFunc; })\": \"void\",\n      \"addAggFunc(key: string, aggFunc: IAggFunc)\": \"void\",\n      \"clear()\": \"void\",\n      \"getDefaultAggFunc(column: Column)\": \"string | null\",\n      \"getFuncNames(column: Column)\": \"string[]\"\n    }\n  },\n  \"IAggregationStage\": {\n    \"meta\": {},\n    \"type\": {\n      \"aggregateValues(values: any[], aggFuncOrString: string | IAggFunc)\": \"any\"\n    }\n  },\n  \"ICellEditor\": {\n    \"meta\": {},\n    \"type\": {\n      \"getValue()\": \"any\",\n      \"isPopup?()\": \"boolean\",\n      \"getPopupPosition?()\": \"string | undefined\",\n      \"isCancelBeforeStart?()\": \"boolean\",\n      \"isCancelAfterEnd?()\": \"boolean\",\n      \"focusIn?()\": \"void\",\n      \"focusOut?()\": \"void\",\n      \"getFrameworkComponentInstance?()\": \"any\"\n    },\n    \"docs\": {\n      \"getValue()\": \"/** Return the final value - called by the grid once after editing is complete */\",\n      \"isPopup?()\": \"/** Gets called once after initialised. If you return true, the editor will\\n * appear in a popup, so is not constrained to the boundaries of the cell.\\n * This is great if you want to, for example, provide you own custom dropdown list\\n * for selection. Default is false (ie if you don't provide the method). */\",\n      \"getPopupPosition?()\": \"/** Gets called once, only if isPopup() returns true. Return \\\"over\\\" if the popup\\n * should cover the cell, or \\\"under\\\" if it should be positioned below leaving the\\n * cell value visible. If this method is not present, the default is \\\"over\\\". */\",\n      \"isCancelBeforeStart?()\": \"/** Gets called once after initialised. If you return true, the editor will not be\\n * used and the grid will continue editing. Use this to make a decision on editing\\n * inside the init() function, eg maybe you want to only start editing if the user\\n * hits a numeric key, but not a letter, if the editor is for numbers. */\",\n      \"isCancelAfterEnd?()\": \"/** Gets called once after editing is complete. If your return true, then the new\\n * value will not be used. The editing will have no impact on the record. Use this\\n * if you do not want a new value from your gui, i.e. you want to cancel the editing. */\",\n      \"focusIn?()\": \"/** If doing full line edit, then gets called when focus should be put into the editor */\",\n      \"focusOut?()\": \"/** If doing full line edit, then gets called when focus is leaving the editor */\",\n      \"getFrameworkComponentInstance?()\": \"/** If using a framework this returns the underlying component instance, so you can call\\n * methods on it if you want. */\"\n    }\n  },\n  \"ICellEditorParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"value\": \"any\",\n      \"keyPress\": \"number | null\",\n      \"charPress\": \"string | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"cellStartedEdit\": \"boolean\",\n      \"context\": \"any\",\n      \"$scope\": \"any\",\n      \"onKeyDown\": \"(event: KeyboardEvent) => void\",\n      \"stopEditing\": \"(suppressNavigateAfterEdit?: boolean) => void\",\n      \"eGridCell\": \"HTMLElement\",\n      \"parseValue\": \"(value: any) => any\",\n      \"formatValue\": \"(value: any) => any\"\n    },\n    \"docs\": {\n      \"value\": \"/** Current value of the cell */\",\n      \"keyPress\": \"/** Key code of key that started the edit, eg 'Enter' or 'Delete' - non-printable\\n * characters appear here */\",\n      \"charPress\": \"/** The string that started the edit, eg 'a' if letter 'a' was pressed, or 'A' if\\n * shift + letter 'a' only printable characters appear here */\",\n      \"column\": \"/** Grid column */\",\n      \"colDef\": \"/** Column definition */\",\n      \"node\": \"/** Row node for the cell */\",\n      \"data\": \"/** Row data */\",\n      \"rowIndex\": \"/** Editing row index */\",\n      \"cellStartedEdit\": \"/** If doing full row edit, this is true if the cell is the one that started the edit\\n * (eg it is the cell the use double clicked on, or pressed a key on etc). */\",\n      \"context\": \"/** Context  as set on gridOptions.context */\",\n      \"$scope\": \"/** AngularJS scope - null if not using AngularJS, this is legacy and not used if not */\",\n      \"onKeyDown\": \"/** callback to tell grid a key was pressed - useful to pass control key events (tab,\\n * arrows etc) back to grid - however you do */\",\n      \"stopEditing\": \"/** Callback to tell grid to stop editing the current cell. pass 'false' to prevent\\n * navigation moving to the next cell if grid property enterMovesDownAfterEdit=true */\",\n      \"eGridCell\": \"/** A reference to the DOM element representing the grid cell that your component\\n * will live inside. Useful if you want to add event listeners or classes at this level.\\n * This is the DOM element that gets browser focus when selecting cells. */\",\n      \"parseValue\": \"/** Utility function to parse a value using the column's colDef.valueParser */\",\n      \"formatValue\": \"/** Utility function to format a value using the column's colDef.valueFormatter */\"\n    }\n  },\n  \"ICellEditorComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"getGui()\": \"HTMLElement\",\n      \"destroy?()\": \"void\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"void\",\n      \"init?(params: T)\": \"AgPromise<void> | void\",\n      \"isPopup?()\": \"boolean\",\n      \"focusIn?()\": \"void\",\n      \"focusOut?()\": \"void\",\n      \"getValue()\": \"any\",\n      \"getPopupPosition?()\": \"string | undefined\",\n      \"isCancelBeforeStart?()\": \"boolean\",\n      \"isCancelAfterEnd?()\": \"boolean\",\n      \"getFrameworkComponentInstance?()\": \"any\"\n    },\n    \"docs\": {\n      \"getGui()\": \"/** Return the DOM element of your component, this is what the grid puts into the DOM */\",\n      \"destroy?()\": \"/** Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here */\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"/** A hook to perform any necessary operation just after the GUI for this component has been rendered\\n * on the screen.\\n * If a parent popup is closed and reopened (e.g. for filters), this method is called each time the component is shown.\\n * This is useful for any\\n * logic that requires attachment before executing, such as putting focus on a particular DOM\\n * element. The params has one callback method 'hidePopup', which you can call at any later\\n * point to hide the popup - good if you have an 'Apply' button and you want to hide the popup\\n * after it is pressed. */\",\n      \"init?(params: T)\": \"/** The init(params) method is called on the component once. See below for details on the parameters. */\",\n      \"isPopup?()\": \"/** Gets called once after initialised. If you return true, the editor will\\n * appear in a popup, so is not constrained to the boundaries of the cell.\\n * This is great if you want to, for example, provide you own custom dropdown list\\n * for selection. Default is false (ie if you don't provide the method). */\",\n      \"focusIn?()\": \"/** If doing full line edit, then gets called when focus should be put into the editor */\",\n      \"focusOut?()\": \"/** If doing full line edit, then gets called when focus is leaving the editor */\",\n      \"getValue()\": \"/** Return the final value - called by the grid once after editing is complete */\",\n      \"getPopupPosition?()\": \"/** Gets called once, only if isPopup() returns true. Return \\\"over\\\" if the popup\\n * should cover the cell, or \\\"under\\\" if it should be positioned below leaving the\\n * cell value visible. If this method is not present, the default is \\\"over\\\". */\",\n      \"isCancelBeforeStart?()\": \"/** Gets called once after initialised. If you return true, the editor will not be\\n * used and the grid will continue editing. Use this to make a decision on editing\\n * inside the init() function, eg maybe you want to only start editing if the user\\n * hits a numeric key, but not a letter, if the editor is for numbers. */\",\n      \"isCancelAfterEnd?()\": \"/** Gets called once after editing is complete. If your return true, then the new\\n * value will not be used. The editing will have no impact on the record. Use this\\n * if you do not want a new value from your gui, i.e. you want to cancel the editing. */\",\n      \"getFrameworkComponentInstance?()\": \"/** If using a framework this returns the underlying component instance, so you can call\\n * methods on it if you want. */\"\n    }\n  },\n  \"ChartType\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\n      \"Column = 'column'\",\n      \"GroupedColumn = 'groupedColumn'\",\n      \"StackedColumn = 'stackedColumn'\",\n      \"NormalizedColumn = 'normalizedColumn'\",\n      \"Bar = 'bar'\",\n      \"GroupedBar = 'groupedBar'\",\n      \"StackedBar = 'stackedBar'\",\n      \"NormalizedBar = 'normalizedBar'\",\n      \"Line = 'line'\",\n      \"Scatter = 'scatter'\",\n      \"Bubble = 'bubble'\",\n      \"Pie = 'pie'\",\n      \"Doughnut = 'doughnut'\",\n      \"Area = 'area'\",\n      \"StackedArea = 'stackedArea'\",\n      \"NormalizedArea = 'normalizedArea'\",\n      \"Histogram = 'histogram'\"\n    ]\n  },\n  \"ChartMenuOptions\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'chartSettings' | 'chartData' | 'chartFormat' | 'chartLink' | 'chartUnlink' | 'chartDownload'\"\n  },\n  \"SeriesOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fill\": \"FillOptions\",\n      \"stroke\": \"StrokeOptions\",\n      \"highlightStyle\": \"HighlightOptions\",\n      \"listeners?\": \"{[key in string]: Function}\"\n    }\n  },\n  \"ChartTooltip\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled?\": \"boolean\",\n      \"class?\": \"string\",\n      \"tracking?\": \"boolean\",\n      \"delay?\": \"number\"\n    }\n  },\n  \"ChartOptions\": {\n    \"meta\": { \"typeParams\": [\"T extends SeriesOptions\"] },\n    \"type\": {\n      \"document?\": \"Document\",\n      \"seriesDefaults\": \"T\",\n      \"width?\": \"number\",\n      \"height?\": \"number\",\n      \"padding\": \"PaddingOptions\",\n      \"background\": \"BackgroundOptions\",\n      \"title\": \"CaptionOptions\",\n      \"subtitle\": \"CaptionOptions\",\n      \"navigator\": \"NavigatorOptions\",\n      \"legend\": \"LegendOptions\",\n      \"tooltip?\": \"ChartTooltip\",\n      \"listeners?\": \"{[key in string]: Function}\"\n    }\n  },\n  \"PaddingOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"top\": \"number\",\n      \"right\": \"number\",\n      \"bottom\": \"number\",\n      \"left\": \"number\"\n    }\n  },\n  \"BackgroundOptions\": {\n    \"meta\": {},\n    \"type\": { \"fill\": \"string\", \"visible\": \"boolean\" }\n  },\n  \"FontOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fontStyle\": \"FontStyle\",\n      \"fontWeight\": \"FontWeight\",\n      \"fontSize\": \"number\",\n      \"fontFamily\": \"string\",\n      \"color\": \"string\"\n    }\n  },\n  \"CaptionOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fontStyle\": \"FontStyle\",\n      \"fontWeight\": \"FontWeight\",\n      \"fontSize\": \"number\",\n      \"fontFamily\": \"string\",\n      \"color\": \"string\",\n      \"enabled\": \"boolean\",\n      \"text?\": \"string\"\n    }\n  },\n  \"LegendOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled\": \"boolean\",\n      \"position\": \"LegendPosition\",\n      \"spacing\": \"number\",\n      \"item\": \"LegendItemOptions\"\n    }\n  },\n  \"LegendPosition\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\n      \"Top = 'top'\",\n      \"Right = 'right'\",\n      \"Bottom = 'bottom'\",\n      \"Left = 'left'\"\n    ]\n  },\n  \"LegendItemOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"label\": \"LegendLabelOptions\",\n      \"marker\": \"LegendMarkerOptions\",\n      \"paddingX\": \"number\",\n      \"paddingY\": \"number\"\n    }\n  },\n  \"LegendLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fontStyle\": \"FontStyle\",\n      \"fontWeight\": \"FontWeight\",\n      \"fontSize\": \"number\",\n      \"fontFamily\": \"string\",\n      \"color\": \"string\"\n    }\n  },\n  \"NavigatorOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled\": \"boolean\",\n      \"height\": \"number\",\n      \"min\": \"number\",\n      \"max\": \"number\",\n      \"mask\": \"NavigatorMaskOptions\",\n      \"minHandle\": \"NavigatorHandleOptions\",\n      \"maxHandle\": \"NavigatorHandleOptions\"\n    }\n  },\n  \"NavigatorMaskOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fill\": \"string\",\n      \"stroke\": \"string\",\n      \"strokeWidth\": \"number\",\n      \"fillOpacity\": \"number\"\n    }\n  },\n  \"NavigatorHandleOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fill\": \"string\",\n      \"stroke\": \"string\",\n      \"strokeWidth\": \"number\",\n      \"width\": \"number\",\n      \"height\": \"number\",\n      \"gripLineGap\": \"number\",\n      \"gripLineLength\": \"number\"\n    }\n  },\n  \"MarkerShape\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'circle' | 'cross' | 'diamond' | 'plus' | 'square' | 'triangle'\"\n  },\n  \"LegendMarkerOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"shape\": \"MarkerShape\",\n      \"size\": \"number\",\n      \"padding\": \"number\",\n      \"strokeWidth\": \"number\"\n    }\n  },\n  \"CartesianChartOptions\": {\n    \"meta\": { \"typeParams\": [\"T extends SeriesOptions\"] },\n    \"type\": {\n      \"document?\": \"Document\",\n      \"seriesDefaults\": \"T\",\n      \"width?\": \"number\",\n      \"height?\": \"number\",\n      \"padding\": \"PaddingOptions\",\n      \"background\": \"BackgroundOptions\",\n      \"title\": \"CaptionOptions\",\n      \"subtitle\": \"CaptionOptions\",\n      \"navigator\": \"NavigatorOptions\",\n      \"legend\": \"LegendOptions\",\n      \"tooltip?\": \"ChartTooltip\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"xAxis\": \"AxisOptions\",\n      \"yAxis\": \"AxisOptions\"\n    }\n  },\n  \"PolarChartOptions\": {\n    \"meta\": { \"typeParams\": [\"T extends SeriesOptions\"] },\n    \"type\": {\n      \"document?\": \"Document\",\n      \"seriesDefaults\": \"T\",\n      \"width?\": \"number\",\n      \"height?\": \"number\",\n      \"padding\": \"PaddingOptions\",\n      \"background\": \"BackgroundOptions\",\n      \"title\": \"CaptionOptions\",\n      \"subtitle\": \"CaptionOptions\",\n      \"navigator\": \"NavigatorOptions\",\n      \"legend\": \"LegendOptions\",\n      \"tooltip?\": \"ChartTooltip\",\n      \"listeners?\": \"{[key in string]: Function}\"\n    }\n  },\n  \"AxisOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"type?\": \"AxisType\",\n      \"title\": \"CaptionOptions\",\n      \"line\": \"AxisLineOptions\",\n      \"tick\": \"AxisTickOptions\",\n      \"label\": \"AxisLabelOptions\",\n      \"gridStyle\": \"GridStyle[]\"\n    }\n  },\n  \"AxisType\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'category' | 'number' | 'time'\"\n  },\n  \"AxisLineOptions\": {\n    \"meta\": {},\n    \"type\": { \"width\": \"number\", \"color\": \"string\" }\n  },\n  \"AxisTickOptions\": {\n    \"meta\": {},\n    \"type\": { \"width\": \"number\", \"size\": \"number\", \"color\": \"string\" }\n  },\n  \"AxisLabelFormatterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"value\": \"any\",\n      \"index\": \"number\",\n      \"fractionDigits?\": \"number\",\n      \"formatter?\": \"(x: any) => string\"\n    }\n  },\n  \"AxisLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fontStyle\": \"FontStyle\",\n      \"fontWeight\": \"FontWeight\",\n      \"fontSize\": \"number\",\n      \"fontFamily\": \"string\",\n      \"color\": \"string\",\n      \"padding\": \"number\",\n      \"rotation\": \"number\",\n      \"format?\": \"string\",\n      \"formatter?\": \"(params: AxisLabelFormatterParams) => string\"\n    }\n  },\n  \"GridStyle\": {\n    \"meta\": {},\n    \"type\": { \"stroke\": \"string\", \"lineDash?\": \"number[]\" }\n  },\n  \"HighlightOptions\": {\n    \"meta\": {},\n    \"type\": { \"fill\": \"string\", \"stroke?\": \"string\" }\n  },\n  \"FillOptions\": {\n    \"meta\": {},\n    \"type\": { \"colors\": \"string[]\", \"opacity\": \"number\" }\n  },\n  \"StrokeOptions\": {\n    \"meta\": {},\n    \"type\": { \"colors\": \"string[]\", \"opacity\": \"number\", \"width\": \"number\" }\n  },\n  \"DropShadowOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled\": \"boolean\",\n      \"color\": \"string\",\n      \"xOffset\": \"number\",\n      \"yOffset\": \"number\",\n      \"blur\": \"number\"\n    }\n  },\n  \"SeriesLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fontStyle\": \"FontStyle\",\n      \"fontWeight\": \"FontWeight\",\n      \"fontSize\": \"number\",\n      \"fontFamily\": \"string\",\n      \"color\": \"string\",\n      \"enabled\": \"boolean\"\n    }\n  },\n  \"TooltipRendererResult\": {\n    \"meta\": {},\n    \"type\": { \"content\": \"string\", \"title?\": \"string\" }\n  },\n  \"TooltipOptions\": {\n    \"meta\": { \"typeParams\": [\"TParams\"] },\n    \"type\": {\n      \"enabled\": \"boolean\",\n      \"renderer?\": \"(params: TParams) => string | TooltipRendererResult\"\n    }\n  },\n  \"TooltipRendererParams\": {\n    \"meta\": {},\n    \"type\": { \"datum\": \"any\", \"title?\": \"string\", \"color\": \"string\" }\n  },\n  \"CartesianTooltipRendererParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"datum\": \"any\",\n      \"title?\": \"string\",\n      \"color\": \"string\",\n      \"xKey\": \"string\",\n      \"xValue\": \"any\",\n      \"xName\": \"string\",\n      \"yKey\": \"string\",\n      \"yValue\": \"any\",\n      \"yName\": \"string\"\n    }\n  },\n  \"BarSeriesOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fill\": \"FillOptions\",\n      \"stroke\": \"StrokeOptions\",\n      \"highlightStyle\": \"HighlightOptions\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"shadow\": \"DropShadowOptions\",\n      \"label\": \"BarSeriesLabelOptions\",\n      \"tooltip\": \"TooltipOptions<BarTooltipRendererParams>\",\n      \"lineDash\": \"number[]\",\n      \"lineDashOffset\": \"number\"\n    }\n  },\n  \"HistogramSeriesOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fill\": \"FillOptions\",\n      \"stroke\": \"StrokeOptions\",\n      \"highlightStyle\": \"HighlightOptions\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"shadow\": \"DropShadowOptions\",\n      \"label\": \"BarSeriesLabelOptions\",\n      \"tooltip\": \"TooltipOptions<BarTooltipRendererParams>\",\n      \"lineDash\": \"number[]\",\n      \"lineDashOffset\": \"number\",\n      \"binCount?\": \"number\"\n    }\n  },\n  \"BarSeriesLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fontStyle\": \"FontStyle\",\n      \"fontWeight\": \"FontWeight\",\n      \"fontSize\": \"number\",\n      \"fontFamily\": \"string\",\n      \"color\": \"string\",\n      \"enabled\": \"boolean\",\n      \"formatter?\": \"(params: { value: number; }) => string\"\n    }\n  },\n  \"BarTooltipRendererParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"datum\": \"any\",\n      \"title?\": \"string\",\n      \"color\": \"string\",\n      \"xKey\": \"string\",\n      \"xValue\": \"any\",\n      \"xName\": \"string\",\n      \"yKey\": \"string\",\n      \"yValue\": \"any\",\n      \"yName\": \"string\"\n    }\n  },\n  \"LineSeriesOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fill\": \"FillOptions\",\n      \"stroke\": \"StrokeOptions\",\n      \"highlightStyle\": \"HighlightOptions\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"marker\": \"MarkerOptions\",\n      \"label\": \"LineSeriesLabelOptions\",\n      \"tooltip\": \"TooltipOptions<LineTooltipRendererParams>\",\n      \"lineDash\": \"number[]\",\n      \"lineDashOffset\": \"number\"\n    }\n  },\n  \"LineSeriesLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fontStyle\": \"FontStyle\",\n      \"fontWeight\": \"FontWeight\",\n      \"fontSize\": \"number\",\n      \"fontFamily\": \"string\",\n      \"color\": \"string\",\n      \"enabled\": \"boolean\",\n      \"formatter?\": \"(params: { value: any; }) => string\"\n    }\n  },\n  \"MarkerOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled\": \"boolean\",\n      \"shape\": \"MarkerShape\",\n      \"size\": \"number\",\n      \"strokeWidth\": \"number\",\n      \"formatter?\": \"Function\"\n    }\n  },\n  \"LineTooltipRendererParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"datum\": \"any\",\n      \"title?\": \"string\",\n      \"color\": \"string\",\n      \"xKey\": \"string\",\n      \"xValue\": \"any\",\n      \"xName\": \"string\",\n      \"yKey\": \"string\",\n      \"yValue\": \"any\",\n      \"yName\": \"string\"\n    }\n  },\n  \"ScatterSeriesLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fontStyle\": \"FontStyle\",\n      \"fontWeight\": \"FontWeight\",\n      \"fontSize\": \"number\",\n      \"fontFamily\": \"string\",\n      \"color\": \"string\",\n      \"enabled\": \"boolean\"\n    }\n  },\n  \"ScatterSeriesOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fill\": \"FillOptions\",\n      \"stroke\": \"StrokeOptions\",\n      \"highlightStyle\": \"HighlightOptions\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"marker\": \"ScatterMarkerOptions\",\n      \"label\": \"ScatterSeriesLabelOptions\",\n      \"tooltip\": \"TooltipOptions<ScatterTooltipRendererParams>\",\n      \"paired\": \"boolean\"\n    }\n  },\n  \"ScatterMarkerOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"enabled\": \"boolean\",\n      \"shape\": \"MarkerShape\",\n      \"size\": \"number\",\n      \"strokeWidth\": \"number\",\n      \"formatter?\": \"Function\",\n      \"maxSize?\": \"number\"\n    }\n  },\n  \"ScatterTooltipRendererParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"datum\": \"any\",\n      \"title?\": \"string\",\n      \"color\": \"string\",\n      \"xKey\": \"string\",\n      \"xValue\": \"any\",\n      \"xName\": \"string\",\n      \"yKey\": \"string\",\n      \"yValue\": \"any\",\n      \"yName\": \"string\",\n      \"sizeKey?\": \"string\",\n      \"sizeName?\": \"string\",\n      \"labelKey?\": \"string\",\n      \"labelName?\": \"string\"\n    }\n  },\n  \"AreaSeriesLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fontStyle\": \"FontStyle\",\n      \"fontWeight\": \"FontWeight\",\n      \"fontSize\": \"number\",\n      \"fontFamily\": \"string\",\n      \"color\": \"string\",\n      \"enabled\": \"boolean\",\n      \"formatter?\": \"(params: { value: any; }) => string\"\n    }\n  },\n  \"AreaSeriesOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fill\": \"FillOptions\",\n      \"stroke\": \"StrokeOptions\",\n      \"highlightStyle\": \"HighlightOptions\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"marker\": \"MarkerOptions\",\n      \"label\": \"AreaSeriesLabelOptions\",\n      \"shadow\": \"DropShadowOptions\",\n      \"tooltip\": \"TooltipOptions<AreaTooltipRendererParams>\",\n      \"lineDash\": \"number[]\",\n      \"lineDashOffset\": \"number\"\n    }\n  },\n  \"AreaTooltipRendererParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"datum\": \"any\",\n      \"title?\": \"string\",\n      \"color\": \"string\",\n      \"xKey\": \"string\",\n      \"xValue\": \"any\",\n      \"xName\": \"string\",\n      \"yKey\": \"string\",\n      \"yValue\": \"any\",\n      \"yName\": \"string\"\n    }\n  },\n  \"PieTitleOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fontStyle\": \"FontStyle\",\n      \"fontWeight\": \"FontWeight\",\n      \"fontSize\": \"number\",\n      \"fontFamily\": \"string\",\n      \"color\": \"string\",\n      \"enabled\": \"boolean\",\n      \"text?\": \"string\",\n      \"showInLegend?\": \"boolean\"\n    }\n  },\n  \"PieSeriesOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fill\": \"FillOptions\",\n      \"stroke\": \"StrokeOptions\",\n      \"highlightStyle\": \"HighlightOptions\",\n      \"listeners?\": \"{[key in string]: Function}\",\n      \"title\": \"PieTitleOptions\",\n      \"label\": \"PieSeriesLabelOptions\",\n      \"callout\": \"PieSeriesCalloutOptions\",\n      \"shadow\": \"DropShadowOptions\",\n      \"tooltip\": \"TooltipOptions<PieTooltipRendererParams>\",\n      \"lineDash\": \"number[]\",\n      \"lineDashOffset\": \"number\"\n    }\n  },\n  \"PieSeriesLabelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"fontStyle\": \"FontStyle\",\n      \"fontWeight\": \"FontWeight\",\n      \"fontSize\": \"number\",\n      \"fontFamily\": \"string\",\n      \"color\": \"string\",\n      \"enabled\": \"boolean\",\n      \"minAngle\": \"number\",\n      \"offset\": \"number\"\n    }\n  },\n  \"PieSeriesCalloutOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"length\": \"number\",\n      \"strokeWidth\": \"number\",\n      \"colors\": \"string[]\"\n    }\n  },\n  \"PieTooltipRendererParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"datum\": \"any\",\n      \"title?\": \"string\",\n      \"color\": \"string\",\n      \"angleKey\": \"string\",\n      \"angleValue\": \"any\",\n      \"angleName?\": \"string\",\n      \"labelKey?\": \"string\",\n      \"labelName?\": \"string\"\n    }\n  },\n  \"GetChartImageDataUrlParams\": {\n    \"meta\": {},\n    \"type\": { \"chartId\": \"string\", \"fileFormat?\": \"string\" }\n  },\n  \"ChartModelType\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'range' | 'pivot'\"\n  },\n  \"ChartModel\": {\n    \"meta\": {},\n    \"type\": {\n      \"modelType\": \"ChartModelType\",\n      \"chartId\": \"string\",\n      \"chartType\": \"ChartType\",\n      \"cellRange\": \"CellRangeParams\",\n      \"chartThemeName?\": \"string\",\n      \"chartOptions\": \"ChartOptions<any>\",\n      \"suppressChartRanges?\": \"boolean\",\n      \"aggFunc?\": \"string | IAggFunc\",\n      \"unlinkChart?\": \"boolean\"\n    }\n  },\n  \"IChartService\": {\n    \"meta\": {},\n    \"type\": {\n      \"getChartModels()\": \"ChartModel[]\",\n      \"getChartRef(chartId: string)\": \"ChartRef | undefined\",\n      \"createRangeChart(params: CreateRangeChartParams)\": \"ChartRef | undefined\",\n      \"createCrossFilterChart(params: CreateCrossFilterChartParams)\": \"ChartRef | undefined\",\n      \"createChartFromCurrentRange(chartType: ChartType)\": \"ChartRef | undefined\",\n      \"createPivotChart(params: CreatePivotChartParams)\": \"ChartRef | undefined\",\n      \"restoreChart(model: ChartModel, chartContainer?: HTMLElement)\": \"ChartRef | undefined\",\n      \"getChartImageDataURL(params: GetChartImageDataUrlParams)\": \"string | undefined\"\n    }\n  },\n  \"ClientSideRowModelSteps\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\n      \"EVERYTHING = 'group'\",\n      \"FILTER = 'filter'\",\n      \"SORT = 'sort'\",\n      \"MAP = 'map'\",\n      \"AGGREGATE = 'aggregate'\",\n      \"PIVOT = 'pivot'\",\n      \"NOTHING = 'nothing'\"\n    ]\n  },\n  \"IClientSideRowModel\": {\n    \"meta\": {},\n    \"type\": {\n      \"getRow(index: number)\": \"RowNode | undefined\",\n      \"getRowNode(id: string)\": \"RowNode | undefined\",\n      \"getRowCount()\": \"number\",\n      \"getTopLevelRowCount()\": \"number\",\n      \"getTopLevelRowDisplayedIndex(topLevelIndex: number)\": \"number\",\n      \"getRowIndexAtPixel(pixel: number)\": \"number\",\n      \"isRowPresent(rowNode: RowNode)\": \"boolean\",\n      \"getRowBounds(index: number)\": \"RowBounds | null\",\n      \"isEmpty()\": \"boolean\",\n      \"isRowsToRender()\": \"boolean\",\n      \"getNodesInRangeForSelection(first: RowNode, last: RowNode | null)\": \"RowNode[]\",\n      \"forEachNode(callback: (rowNode: RowNode, index: number) => void)\": \"void\",\n      \"getType()\": \"string\",\n      \"isLastRowIndexKnown()\": \"boolean\",\n      \"ensureRowHeightsValid(startPixel: number, endPixel: number, startLimitIndex: number, endLimitIndex: number)\": \"boolean\",\n      \"start()\": \"void\",\n      \"onRowGroupOpened()\": \"void\",\n      \"updateRowData(rowDataTran: RowDataTransaction, rowNodeOrder?: { [id: string]: number; } | null)\": \"RowNodeTransaction | null\",\n      \"setRowData(rowData: any[])\": \"void\",\n      \"refreshModel(params: RefreshModelParams)\": \"void\",\n      \"expandOrCollapseAll(expand: boolean)\": \"void\",\n      \"forEachLeafNode(callback: (node: RowNode, index: number) => void)\": \"void\",\n      \"forEachNode(callback: (node: RowNode, index: number) => void)\": \"void\",\n      \"forEachNodeAfterFilter(callback: (node: RowNode, index: number) => void)\": \"void\",\n      \"forEachNodeAfterFilterAndSort(callback: (node: RowNode, index: number) => void)\": \"void\",\n      \"resetRowHeights()\": \"void\",\n      \"onRowHeightChanged()\": \"void\",\n      \"batchUpdateRowData(rowDataTransaction: RowDataTransaction, callback?: (res: RowNodeTransaction) => void)\": \"void\",\n      \"flushAsyncTransactions()\": \"void\",\n      \"getRootNode()\": \"RowNode\",\n      \"doAggregate(changedPath?: ChangedPath)\": \"void\",\n      \"getTopLevelNodes()\": \"RowNode[] | null\",\n      \"forEachPivotNode(callback: (node: RowNode, index: number) => void)\": \"void\",\n      \"ensureRowsAtPixel(rowNode: RowNode[], pixel: number, increment: number)\": \"boolean\",\n      \"highlightRowAtPixel(rowNode: RowNode | null, pixel?: number)\": \"void\",\n      \"getHighlightPosition(pixel: number, rowNode?: RowNode)\": \"RowHighlightPosition\",\n      \"getLastHighlightedRowNode()\": \"RowNode | null\"\n    },\n    \"docs\": {\n      \"getRow(index: number)\": \"/** Returns the rowNode at the given index. */\",\n      \"getRowNode(id: string)\": \"/** Returns the rowNode for given id. */\",\n      \"getRowCount()\": \"/** This is legacy, not used by AG Grid, but keeping for backward compatibility */\",\n      \"getRowIndexAtPixel(pixel: number)\": \"/** Returns the row index at the given pixel */\",\n      \"isRowPresent(rowNode: RowNode)\": \"/** Returns true if the provided rowNode is in the list of rows to render */\",\n      \"getRowBounds(index: number)\": \"/** Returns row top and bottom for a given row */\",\n      \"isEmpty()\": \"/** Returns true if this model has no rows, regardless of model filter. EG if rows present, but filtered\\n * out, this still returns false. If it returns true, then the grid shows the 'no rows' overlay - but we\\n * don't show that overlay if the rows are just filtered out. */\",\n      \"isRowsToRender()\": \"/** Returns true if no rows (either no rows at all, or the rows are filtered out). This is what the grid\\n * uses to know if there are rows to render or not. */\",\n      \"getNodesInRangeForSelection(first: RowNode, last: RowNode | null)\": \"/** Returns all rows in range that should be selected. If there is a gap in range (non ClientSideRowModel) then\\n * then no rows should be returned */\",\n      \"forEachNode(callback: (rowNode: RowNode, index: number) => void)\": \"/** Iterate through each node. What this does depends on the model type. For clientSide, goes through\\n * all nodes. For serverSide, goes through what's loaded in memory. */\",\n      \"getType()\": \"/** The base class returns the type. We use this instead of 'instanceof' as the client might provide\\n * their own implementation of the models in the future. */\",\n      \"isLastRowIndexKnown()\": \"/** It tells us if this row model knows about the last row that it can produce. This is used by the\\n * PaginationPanel, if last row is not found, then the 'last' button is disabled and the last page is\\n * not shown. This is always true for ClientSideRowModel. It toggles for InfiniteRowModel. */\",\n      \"ensureRowHeightsValid(startPixel: number, endPixel: number, startLimitIndex: number, endLimitIndex: number)\": \"/** Used by CSRM only - is makes sure there are now estimated row heights within the range. */\",\n      \"start()\": \"/** Gets called after grid is initialised. What happens depends on row model. Client Side will take rowData\\n * from gridOptions, the other row models will start calling their datasources. */\"\n    }\n  },\n  \"RefreshModelParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"step\": \"ClientSideRowModelSteps\",\n      \"groupState?\": \"any\",\n      \"keepRenderedRows?\": \"boolean\",\n      \"animate?\": \"boolean\",\n      \"keepEditingRows?\": \"boolean\",\n      \"rowNodeTransactions?\": \"RowNodeTransaction[]\",\n      \"rowNodeOrder?\": \"{ [id: string]: number; }\",\n      \"newData?\": \"boolean\",\n      \"afterColumnsChanged?\": \"boolean\"\n    }\n  },\n  \"IClipboardService\": {\n    \"meta\": {},\n    \"type\": {\n      \"pasteFromClipboard()\": \"void\",\n      \"copyToClipboard(includeHeader?: boolean)\": \"void\",\n      \"copySelectedRowsToClipboard(includeHeader?: boolean, columnKeys?: (string | Column)[])\": \"void\",\n      \"copySelectedRangeToClipboard(includeHeader?: boolean)\": \"void\",\n      \"copyRangeDown()\": \"void\"\n    }\n  },\n  \"IColumnToolPanel\": {\n    \"meta\": {},\n    \"type\": {\n      \"expandColumnGroups(groupIds?: string[])\": \"void\",\n      \"collapseColumnGroups(groupIds?: string[])\": \"void\",\n      \"setColumnLayout(colDefs: (ColDef | ColGroupDef)[])\": \"void\",\n      \"syncLayoutWithGrid()\": \"void\",\n      \"setPivotModeSectionVisible(visible: boolean)\": \"void\",\n      \"setRowGroupsSectionVisible(visible: boolean)\": \"void\",\n      \"setValuesSectionVisible(visible: boolean)\": \"void\",\n      \"setPivotSectionVisible(visible: boolean)\": \"void\"\n    }\n  },\n  \"ColumnVO\": {\n    \"meta\": {},\n    \"type\": {\n      \"id\": \"string\",\n      \"displayName\": \"string\",\n      \"field?\": \"string\",\n      \"aggFunc?\": \"string\"\n    }\n  },\n  \"IComponent\": {\n    \"meta\": {\n      \"typeParams\": [\"T\"],\n      \"doc\": \"/** This is for User Components only, do not implement this for internal components. */\"\n    },\n    \"type\": {\n      \"getGui()\": \"HTMLElement\",\n      \"destroy?()\": \"void\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"void\",\n      \"init?(params: T)\": \"AgPromise<void> | void\"\n    },\n    \"docs\": {\n      \"getGui()\": \"/** Return the DOM element of your component, this is what the grid puts into the DOM */\",\n      \"destroy?()\": \"/** Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here */\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"/** A hook to perform any necessary operation just after the GUI for this component has been rendered\\n * on the screen.\\n * If a parent popup is closed and reopened (e.g. for filters), this method is called each time the component is shown.\\n * This is useful for any\\n * logic that requires attachment before executing, such as putting focus on a particular DOM\\n * element. The params has one callback method 'hidePopup', which you can call at any later\\n * point to hide the popup - good if you have an 'Apply' button and you want to hide the popup\\n * after it is pressed. */\",\n      \"init?(params: T)\": \"/** The init(params) method is called on the component once. See below for details on the parameters. */\"\n    }\n  },\n  \"IContextMenuFactory\": {\n    \"meta\": {},\n    \"type\": {\n      \"onContextMenu(mouseEvent: MouseEvent | null, touchEvent: TouchEvent | null, rowNode: RowNode | null, column: Column | null, value: any, anchorToElement: HTMLElement)\": \"void\",\n      \"hideActiveMenu()\": \"void\"\n    }\n  },\n  \"ICsvCreator\": {\n    \"meta\": {},\n    \"type\": {\n      \"getDataAsCsv(params?: CsvExportParams)\": \"string\",\n      \"exportDataAsCsv(params?: CsvExportParams)\": \"string\"\n    }\n  },\n  \"IDatasource\": {\n    \"meta\": {\n      \"doc\": \"/** Datasource used by both PaginationController and InfiniteRowModel */\"\n    },\n    \"type\": {\n      \"rowCount?\": \"number\",\n      \"getRows(params: IGetRowsParams)\": \"void\",\n      \"destroy?()\": \"void\"\n    },\n    \"docs\": {\n      \"rowCount?\": \"/** If you know up front how many rows are in the dataset, set it here. Otherwise leave blank. */\",\n      \"getRows(params: IGetRowsParams)\": \"/** Callback the grid calls that you implement to fetch rows from the server. See below for params. */\"\n    }\n  },\n  \"IGetRowsParams\": {\n    \"meta\": { \"doc\": \"/** Params for the above IDatasource.getRows() */\" },\n    \"type\": {\n      \"startRow\": \"number\",\n      \"endRow\": \"number\",\n      \"successCallback(rowsThisBlock: any[], lastRow?: number)\": \"void\",\n      \"failCallback()\": \"void\",\n      \"sortModel\": \"any\",\n      \"filterModel\": \"any\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"startRow\": \"/** The first row index to get. */\",\n      \"endRow\": \"/** The first row index to NOT get. */\",\n      \"successCallback(rowsThisBlock: any[], lastRow?: number)\": \"/** Callback to call for the result when successful. */\",\n      \"failCallback()\": \"/** Callback to call when the request fails. */\",\n      \"sortModel\": \"/** If doing server side sorting, contains the sort model */\",\n      \"filterModel\": \"/** If doing server side filtering, contains the filter model */\",\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"IEventEmitter\": {\n    \"meta\": {},\n    \"type\": {\n      \"addEventListener(eventType: string, listener: EventListener, async?: boolean, options?: AddEventListenerOptions)\": \"void\",\n      \"removeEventListener(eventType: string, listener: EventListener, async?: boolean, options?: AddEventListenerOptions)\": \"void\"\n    }\n  },\n  \"ExcelStyle\": {\n    \"meta\": {},\n    \"type\": {\n      \"id\": \"string\",\n      \"alignment?\": \"ExcelAlignment\",\n      \"borders?\": \"ExcelBorders\",\n      \"dataType?\": \"ExcelDataType\",\n      \"font?\": \"ExcelFont\",\n      \"interior?\": \"ExcelInterior\",\n      \"numberFormat?\": \"ExcelNumberFormat\",\n      \"protection?\": \"ExcelProtection\",\n      \"name?\": \"string\"\n    },\n    \"docs\": { \"name?\": \"/** @deprecated Legacy property\\n */\" }\n  },\n  \"ExcelAlignment\": {\n    \"meta\": {},\n    \"type\": {\n      \"horizontal?\": \"'Automatic' | 'Left' | 'Center' | 'Right' | 'Fill' | 'Justify' | 'CenterAcrossSelection' | 'Distributed' | 'JustifyDistributed'\",\n      \"indent?\": \"number\",\n      \"readingOrder?\": \"'RightToLeft' | 'LeftToRight' | 'Context'\",\n      \"rotate?\": \"number\",\n      \"shrinkToFit?\": \"boolean\",\n      \"vertical?\": \"'Automatic' | 'Top' | 'Bottom' | 'Center' | 'Justify' | 'Distributed' | 'JustifyDistributed'\",\n      \"wrapText?\": \"boolean\",\n      \"verticalText?\": \"boolean\"\n    },\n    \"docs\": { \"verticalText?\": \"/** @deprecated Legacy property\\n */\" }\n  },\n  \"ExcelBorders\": {\n    \"meta\": {},\n    \"type\": {\n      \"borderBottom?\": \"ExcelBorder\",\n      \"borderLeft?\": \"ExcelBorder\",\n      \"borderRight?\": \"ExcelBorder\",\n      \"borderTop?\": \"ExcelBorder\"\n    }\n  },\n  \"ExcelBorder\": {\n    \"meta\": {},\n    \"type\": {\n      \"color?\": \"string\",\n      \"lineStyle?\": \"'None' | 'Continuous' | 'Dash' | 'Dot' | 'DashDot' | 'DashDotDot' | 'SlantDashDot' | 'Double'\",\n      \"weight?\": \"0 | 1 | 2 | 3\"\n    }\n  },\n  \"ExcelFont\": {\n    \"meta\": {},\n    \"type\": {\n      \"bold?\": \"boolean\",\n      \"color?\": \"string\",\n      \"family?\": \"string\",\n      \"fontName?\": \"string\",\n      \"italic?\": \"boolean\",\n      \"outline?\": \"boolean\",\n      \"shadow?\": \"boolean\",\n      \"size?\": \"number\",\n      \"strikeThrough?\": \"boolean\",\n      \"underline?\": \"'Single' | 'Double'\",\n      \"verticalAlign?\": \"'Superscript' | 'Subscript'\",\n      \"charSet?\": \"number\"\n    },\n    \"docs\": { \"charSet?\": \"/** @deprecated Legacy property\\n */\" }\n  },\n  \"ExcelInterior\": {\n    \"meta\": {},\n    \"type\": {\n      \"color\": \"string\",\n      \"pattern\": \"'None' | 'Solid' | 'Gray75' | 'Gray50' | 'Gray25' | 'Gray125' | 'Gray0625' | 'HorzStripe' | 'VertStripe' | 'ReverseDiagStripe' | 'DiagStripe' | 'DiagCross' | 'ThickDiagCross' | 'ThinHorzStripe' | 'ThinVertStripe' | 'ThinReverseDiagStripe' | 'ThinDiagStripe' | 'ThinHorzCross' | 'ThinDiagCross'\",\n      \"patternColor\": \"string\"\n    }\n  },\n  \"ExcelNumberFormat\": { \"meta\": {}, \"type\": { \"format\": \"string\" } },\n  \"ExcelProtection\": {\n    \"meta\": {},\n    \"type\": { \"protected\": \"boolean\", \"hideFormula\": \"boolean\" }\n  },\n  \"ExcelWorksheet\": {\n    \"meta\": {},\n    \"type\": { \"name\": \"string\", \"table\": \"ExcelTable\" }\n  },\n  \"ExcelTable\": {\n    \"meta\": {},\n    \"type\": { \"columns\": \"ExcelColumn[]\", \"rows\": \"ExcelRow[]\" }\n  },\n  \"ExcelColumn\": {\n    \"meta\": {},\n    \"type\": {\n      \"min?\": \"number\",\n      \"max?\": \"number\",\n      \"width?\": \"number\",\n      \"s?\": \"number\",\n      \"hidden?\": \"boolean\",\n      \"bestFit?\": \"boolean\"\n    }\n  },\n  \"ExcelRow\": {\n    \"meta\": {},\n    \"type\": {\n      \"index?\": \"number\",\n      \"collapsed?\": \"boolean\",\n      \"hidden?\": \"boolean\",\n      \"height?\": \"number\",\n      \"outlineLevel?\": \"number\",\n      \"s?\": \"number\",\n      \"cells\": \"ExcelCell[]\"\n    }\n  },\n  \"ExcelCell\": {\n    \"meta\": {},\n    \"type\": {\n      \"ref?\": \"string\",\n      \"styleId?\": \"string\",\n      \"data\": \"ExcelData\",\n      \"mergeAcross?\": \"number\"\n    }\n  },\n  \"ExcelImage\": {\n    \"meta\": {},\n    \"type\": {\n      \"id\": \"string\",\n      \"base64\": \"string\",\n      \"imageType\": \"'jpg' | 'png' | 'gif'\",\n      \"altText?\": \"string\",\n      \"fitCell?\": \"boolean\",\n      \"transparency?\": \"number\",\n      \"rotation?\": \"number\",\n      \"recolor?\": \"'Grayscale' | 'Sepia' | 'Washout'\",\n      \"width?\": \"number\",\n      \"height?\": \"number\",\n      \"position?\": \"{ row?: number; rowSpan?: number; column?: number; colSpan?: number; offsetX?: number; offsetY?: number; }\"\n    }\n  },\n  \"ExcelDataType\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'String' | 'Formula' | 'Number' | 'Boolean' | 'DateTime' | 'Error'\"\n  },\n  \"ExcelOOXMLDataType\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'str' | 's' | 'f' | 'inlineStr' | 'n' | 'b' | 'd' | 'e' | 'empty'\"\n  },\n  \"ExcelData\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"ExcelDataType | ExcelOOXMLDataType\",\n      \"value\": \"string | null\"\n    }\n  },\n  \"ExcelRelationship\": {\n    \"meta\": {},\n    \"type\": { \"Id\": \"string\", \"Type\": \"string\", \"Target\": \"string\" }\n  },\n  \"ExcelContentType\": {\n    \"meta\": {},\n    \"type\": {\n      \"name\": \"'Default' | 'Override'\",\n      \"ContentType\": \"string\",\n      \"Extension?\": \"string\",\n      \"PartName?\": \"string\"\n    }\n  },\n  \"ExcelXMLTemplate\": {\n    \"meta\": {},\n    \"type\": {\n      \"getTemplate(styleProperties?: ExcelStyle | ExcelWorksheet | ExcelColumn | ExcelRow | ExcelCell)\": \"XmlElement\"\n    }\n  },\n  \"ExcelOOXMLTemplate\": {\n    \"meta\": {},\n    \"type\": {\n      \"getTemplate(config?: any, idx?: number, currentSheet?: number)\": \"XmlElement\",\n      \"convertType?(type: string)\": \"string\"\n    }\n  },\n  \"ExcelFactoryMode\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\"SINGLE_SHEET\", \"MULTI_SHEET\"]\n  },\n  \"ColumnWidthCallbackParams\": {\n    \"meta\": {},\n    \"type\": { \"column\": \"Column | null\", \"index\": \"number\" }\n  },\n  \"RowHeightCallbackParams\": { \"meta\": {}, \"type\": { \"rowIndex\": \"number\" } },\n  \"ExcelExportParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"allColumns?\": \"boolean\",\n      \"columnKeys?\": \"(string | Column)[]\",\n      \"fileName?\": \"string\",\n      \"onlySelected?\": \"boolean\",\n      \"onlySelectedAllPages?\": \"boolean\",\n      \"skipColumnGroupHeaders?\": \"boolean\",\n      \"skipColumnHeaders?\": \"boolean\",\n      \"skipRowGroups?\": \"boolean\",\n      \"skipPinnedTop?\": \"boolean\",\n      \"skipPinnedBottom?\": \"boolean\",\n      \"shouldRowBeSkipped?(params: ShouldRowBeSkippedParams)\": \"boolean\",\n      \"processCellCallback?(params: ProcessCellForExportParams)\": \"string\",\n      \"processHeaderCallback?(params: ProcessHeaderForExportParams)\": \"string\",\n      \"processGroupHeaderCallback?(params: ProcessGroupHeaderForExportParams)\": \"string\",\n      \"processRowGroupCallback?(params: ProcessRowGroupForExportParams)\": \"string\",\n      \"columnGroups?\": \"boolean\",\n      \"skipGroups?\": \"boolean\",\n      \"skipHeader?\": \"boolean\",\n      \"prependContent?\": \"ExcelCell[][]\",\n      \"appendContent?\": \"ExcelCell[][]\",\n      \"customHeader?\": \"ExcelCell[][]\",\n      \"customFooter?\": \"ExcelCell[][]\",\n      \"getCustomContentBelowRow?\": \"(params: ProcessRowGroupForExportParams) => ExcelCell[][] | undefined\",\n      \"author?\": \"string\",\n      \"autoConvertFormulas?\": \"boolean\",\n      \"columnWidth?\": \"number | ((params: ColumnWidthCallbackParams) => number)\",\n      \"exportMode?\": \"'xlsx' | 'xml'\",\n      \"fontSize?\": \"number\",\n      \"headerRowHeight?\": \"number | ((params: RowHeightCallbackParams) => number)\",\n      \"rowHeight?\": \"number | ((params: RowHeightCallbackParams) => number)\",\n      \"sheetName?\": \"string\",\n      \"margins?\": \"ExcelSheetMargin\",\n      \"pageSetup?\": \"ExcelSheetPageSetup\",\n      \"headerFooterConfig?\": \"ExcelHeaderFooterConfig\",\n      \"suppressTextAsCDATA?\": \"boolean\",\n      \"addImageToCell?\": \"(rowIndex: number, column: Column, value: string) => { image: ExcelImage; value?: string; } | undefined\"\n    },\n    \"docs\": {\n      \"columnGroups?\": \"/** @deprecated\\n */\",\n      \"skipGroups?\": \"/** @deprecated\\n */\",\n      \"skipHeader?\": \"/** @deprecated\\n */\",\n      \"customHeader?\": \"/** @deprecated Use prependContent\\n */\",\n      \"customFooter?\": \"/** @deprecated Use appendContent\\n */\"\n    }\n  },\n  \"ExcelExportMultipleSheetParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"author?\": \"string\",\n      \"data\": \"string[]\",\n      \"fileName?\": \"string\",\n      \"fontSize?\": \"number\"\n    }\n  },\n  \"ExcelHeaderFooterConfig\": {\n    \"meta\": {},\n    \"type\": {\n      \"all?\": \"ExcelHeaderFooter\",\n      \"first?\": \"ExcelHeaderFooter\",\n      \"even?\": \"ExcelHeaderFooter\"\n    }\n  },\n  \"ExcelHeaderFooter\": {\n    \"meta\": {},\n    \"type\": {\n      \"header?\": \"ExcelHeaderFooterContent[]\",\n      \"footer?\": \"ExcelHeaderFooterContent[]\"\n    }\n  },\n  \"ExcelHeaderFooterContent\": {\n    \"meta\": {},\n    \"type\": {\n      \"value\": \"string\",\n      \"position?\": \"'Left' | 'Center' | 'Right'\",\n      \"font?\": \"ExcelFont\"\n    }\n  },\n  \"IExcelCreator\": {\n    \"meta\": {},\n    \"type\": {\n      \"exportDataAsExcel(params?: ExcelExportParams)\": \"void\",\n      \"getDataAsExcel(params?: ExcelExportParams)\": \"Blob | string | undefined\",\n      \"getSheetDataForExcel(params?: ExcelExportParams)\": \"string\",\n      \"getMultipleSheetsAsExcel(params: ExcelExportMultipleSheetParams)\": \"Blob | undefined\",\n      \"exportMultipleSheetsAsExcel(params: ExcelExportMultipleSheetParams)\": \"void\",\n      \"setFactoryMode(factoryMode: ExcelFactoryMode, exportMode: 'xml' | 'xlsx')\": \"void\",\n      \"getFactoryMode(exportMode: 'xml' | 'xlsx')\": \"ExcelFactoryMode\"\n    },\n    \"docs\": {\n      \"setFactoryMode(factoryMode: ExcelFactoryMode, exportMode: 'xml' | 'xlsx')\": \"/** private methods */\"\n    }\n  },\n  \"ExcelSheetMargin\": {\n    \"meta\": {},\n    \"type\": {\n      \"top?\": \"number\",\n      \"right?\": \"number\",\n      \"bottom?\": \"number\",\n      \"left?\": \"number\",\n      \"header?\": \"number\",\n      \"footer?\": \"number\"\n    }\n  },\n  \"ExcelSheetPageSetup\": {\n    \"meta\": {},\n    \"type\": {\n      \"orientation?\": \"'Portrait' | 'Landscape'\",\n      \"pageSize?\": \"'Letter' | 'Letter Small' | 'Tabloid' | 'Ledger' | 'Legal' | 'Statement' | 'Executive' | 'A3' | 'A4' | 'A4 Small' | 'A5' | 'A6' | 'B4' | 'B5' | 'Folio' | 'Envelope' | 'Envelope DL' | 'Envelope C5' | 'Envelope B5' | 'Envelope C3' | 'Envelope C4' | 'Envelope C6' | 'Envelope Monarch' | 'Japanese Postcard' | 'Japanese Double Postcard'\"\n    }\n  },\n  \"IFilterType\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"string | { new (): IFilterComp; } | boolean\"\n  },\n  \"IFloatingFilterType\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"string | { new (): IFloatingFilterComp; }\"\n  },\n  \"IFilterDef\": {\n    \"meta\": {},\n    \"type\": {\n      \"filter?\": \"IFilterType\",\n      \"filterFramework?\": \"any\",\n      \"filterParams?\": \"any\",\n      \"floatingFilterComponent?\": \"IFloatingFilterType\",\n      \"floatingFilterComponentParams?\": \"any\",\n      \"floatingFilterComponentFramework?\": \"any\"\n    },\n    \"docs\": {\n      \"filter?\": \"/** One of the built in filter names: [set, number, text, date], or a filter function */\",\n      \"filterParams?\": \"/** The filter params are specific to each filter! */\",\n      \"floatingFilterComponent?\": \"/** The custom component to be used for rendering the floating filter. If none is specified the default AG Grid is used. * */\"\n    }\n  },\n  \"IFilter\": {\n    \"meta\": {},\n    \"type\": {\n      \"isFilterActive()\": \"boolean\",\n      \"doesFilterPass(params: IDoesFilterPassParams)\": \"boolean\",\n      \"getModel()\": \"any\",\n      \"setModel(model: any)\": \"void | AgPromise<void>\",\n      \"onNewRowsLoaded?()\": \"void\",\n      \"onAnyFilterChanged?()\": \"void\",\n      \"getFrameworkComponentInstance?()\": \"any\",\n      \"getModelAsString?(model: any)\": \"string\"\n    },\n    \"docs\": {\n      \"isFilterActive()\": \"/** This is used to let the grid know if the filter is active or not */\",\n      \"doesFilterPass(params: IDoesFilterPassParams)\": \"/** The grid will ask each active filter, in turn, whether each row in the grid passes. If any\\n * filter fails, then the row will be excluded from the final set. The method is provided a\\n * params object with attributes node (the rodNode the grid creates that wraps the data) and data\\n * (the data object that you provided to the grid for that row). */\",\n      \"getModel()\": \"/** Gets the filter state for storing */\",\n      \"setModel(model: any)\": \"/** Restores the filter state. */\",\n      \"onNewRowsLoaded?()\": \"/** Gets called when new rows are inserted into the grid. If the filter needs to change its\\n * state after rows are loaded, it can do it here. For example the set filters uses this\\n * to update the list of available values to select from (e.g. 'Ireland', 'UK' etc for\\n * Country filter). To get the list of available values from within this method from the\\n * Client Side Row Model, use gridApi.forEachLeafNode(callback). */\",\n      \"onAnyFilterChanged?()\": \"/** Called whenever any filter is changed. */\",\n      \"getFrameworkComponentInstance?()\": \"/** If using React or Angular 2, returns the underlying component instance, so you can call methods\\n * on it if you want. */\",\n      \"getModelAsString?(model: any)\": \"/** Optional method used by AG Grid when rendering floating filters and there isn't a floating filter\\n * associated for this filter, this will happen if you create a custom filter and NOT a custom floating\\n * filter. */\"\n    }\n  },\n  \"ProvidedFilterModel\": { \"meta\": {}, \"type\": { \"filterType?\": \"string\" } },\n  \"IFilterComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"getGui()\": \"HTMLElement\",\n      \"destroy?()\": \"void\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"void\",\n      \"init?(params: IFilterParams)\": \"AgPromise<void> | void\",\n      \"isFilterActive()\": \"boolean\",\n      \"doesFilterPass(params: IDoesFilterPassParams)\": \"boolean\",\n      \"getModel()\": \"any\",\n      \"setModel(model: any)\": \"void | AgPromise<void>\",\n      \"onNewRowsLoaded?()\": \"void\",\n      \"onAnyFilterChanged?()\": \"void\",\n      \"getFrameworkComponentInstance?()\": \"any\",\n      \"getModelAsString?(model: any)\": \"string\"\n    },\n    \"docs\": {\n      \"getGui()\": \"/** Return the DOM element of your component, this is what the grid puts into the DOM */\",\n      \"destroy?()\": \"/** Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here */\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"/** A hook to perform any necessary operation just after the GUI for this component has been rendered\\n * on the screen.\\n * If a parent popup is closed and reopened (e.g. for filters), this method is called each time the component is shown.\\n * This is useful for any\\n * logic that requires attachment before executing, such as putting focus on a particular DOM\\n * element. The params has one callback method 'hidePopup', which you can call at any later\\n * point to hide the popup - good if you have an 'Apply' button and you want to hide the popup\\n * after it is pressed. */\",\n      \"init?(params: IFilterParams)\": \"/** The init(params) method is called on the component once. See below for details on the parameters. */\",\n      \"isFilterActive()\": \"/** This is used to let the grid know if the filter is active or not */\",\n      \"doesFilterPass(params: IDoesFilterPassParams)\": \"/** The grid will ask each active filter, in turn, whether each row in the grid passes. If any\\n * filter fails, then the row will be excluded from the final set. The method is provided a\\n * params object with attributes node (the rodNode the grid creates that wraps the data) and data\\n * (the data object that you provided to the grid for that row). */\",\n      \"getModel()\": \"/** Gets the filter state for storing */\",\n      \"setModel(model: any)\": \"/** Restores the filter state. */\",\n      \"onNewRowsLoaded?()\": \"/** Gets called when new rows are inserted into the grid. If the filter needs to change its\\n * state after rows are loaded, it can do it here. For example the set filters uses this\\n * to update the list of available values to select from (e.g. 'Ireland', 'UK' etc for\\n * Country filter). To get the list of available values from within this method from the\\n * Client Side Row Model, use gridApi.forEachLeafNode(callback). */\",\n      \"onAnyFilterChanged?()\": \"/** Called whenever any filter is changed. */\",\n      \"getFrameworkComponentInstance?()\": \"/** If using React or Angular 2, returns the underlying component instance, so you can call methods\\n * on it if you want. */\",\n      \"getModelAsString?(model: any)\": \"/** Optional method used by AG Grid when rendering floating filters and there isn't a floating filter\\n * associated for this filter, this will happen if you create a custom filter and NOT a custom floating\\n * filter. */\"\n    }\n  },\n  \"IDoesFilterPassParams\": {\n    \"meta\": {},\n    \"type\": { \"node\": \"RowNode\", \"data\": \"any\" }\n  },\n  \"IFilterOptionDef\": {\n    \"meta\": {},\n    \"type\": {\n      \"displayKey\": \"string\",\n      \"displayName\": \"string\",\n      \"test\": \"(filterValue: any, cellValue: any) => boolean\",\n      \"hideFilterInput?\": \"boolean\"\n    }\n  },\n  \"IFilterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"api\": \"GridApi\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"rowModel\": \"IRowModel\",\n      \"filterChangedCallback\": \"(additionalEventAttributes?: any) => void\",\n      \"filterModifiedCallback\": \"() => void\",\n      \"valueGetter\": \"(rowNode: RowNode) => any\",\n      \"doesRowPassOtherFilter\": \"(rowNode: RowNode) => boolean\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"Filter\": {\n    \"meta\": { \"doc\": \"/** @deprecated , use iFilter\\n */\" },\n    \"type\": {\n      \"isFilterActive()\": \"boolean\",\n      \"doesFilterPass(params: IDoesFilterPassParams)\": \"boolean\",\n      \"getModel()\": \"any\",\n      \"setModel(model: any)\": \"void | AgPromise<void>\",\n      \"onNewRowsLoaded?()\": \"void\",\n      \"onAnyFilterChanged?()\": \"void\",\n      \"getFrameworkComponentInstance?()\": \"any\",\n      \"getModelAsString?(model: any)\": \"string\"\n    },\n    \"docs\": {\n      \"isFilterActive()\": \"/** This is used to let the grid know if the filter is active or not */\",\n      \"doesFilterPass(params: IDoesFilterPassParams)\": \"/** The grid will ask each active filter, in turn, whether each row in the grid passes. If any\\n * filter fails, then the row will be excluded from the final set. The method is provided a\\n * params object with attributes node (the rodNode the grid creates that wraps the data) and data\\n * (the data object that you provided to the grid for that row). */\",\n      \"getModel()\": \"/** Gets the filter state for storing */\",\n      \"setModel(model: any)\": \"/** Restores the filter state. */\",\n      \"onNewRowsLoaded?()\": \"/** Gets called when new rows are inserted into the grid. If the filter needs to change its\\n * state after rows are loaded, it can do it here. For example the set filters uses this\\n * to update the list of available values to select from (e.g. 'Ireland', 'UK' etc for\\n * Country filter). To get the list of available values from within this method from the\\n * Client Side Row Model, use gridApi.forEachLeafNode(callback). */\",\n      \"onAnyFilterChanged?()\": \"/** Called whenever any filter is changed. */\",\n      \"getFrameworkComponentInstance?()\": \"/** If using React or Angular 2, returns the underlying component instance, so you can call methods\\n * on it if you want. */\",\n      \"getModelAsString?(model: any)\": \"/** Optional method used by AG Grid when rendering floating filters and there isn't a floating filter\\n * associated for this filter, this will happen if you create a custom filter and NOT a custom floating\\n * filter. */\"\n    }\n  },\n  \"IFiltersToolPanel\": {\n    \"meta\": {},\n    \"type\": {\n      \"setFilterLayout(colDefs: ColDef[])\": \"void\",\n      \"expandFilterGroups(groupIds?: string[])\": \"void\",\n      \"collapseFilterGroups(groupIds?: string[])\": \"void\",\n      \"expandFilters(colIds?: string[])\": \"void\",\n      \"collapseFilters(colIds?: string[])\": \"void\",\n      \"syncLayoutWithGrid()\": \"void\"\n    }\n  },\n  \"IFrameworkOverrides\": {\n    \"meta\": {},\n    \"type\": {\n      \"setTimeout(action: any, timeout?: any)\": \"void\",\n      \"setInterval(action: any, interval?: any)\": \"AgPromise<number>\",\n      \"addEventListener(element: HTMLElement, type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions)\": \"void\",\n      \"dispatchEvent(eventType: string, listener: () => {}, global: boolean)\": \"void\",\n      \"frameworkComponent(name: string)\": \"any\"\n    },\n    \"docs\": {\n      \"setTimeout(action: any, timeout?: any)\": \"/** Because Angular 2+ uses Zones, you should not use setTimeout or setInterval (as it'll keep angular constantly doing dirty checks etc\\n * So to get around this, we allow the framework to specify how to execute setTimeout. The default is to just call the browser setTimeout(). */\",\n      \"addEventListener(element: HTMLElement, type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions)\": \"/** Again because Angular uses Zones, we allow adding some events outside of Zone JS so that we do not kick off\\n * the Angular change detection. We do this for some events ONLY, and not all events, just events that get fired\\n * a lot (eg mouse move), but we need to make sure in AG Grid that we do NOT call any grid callbacks while processing\\n * these events, as we will be outside of ZoneJS and hence Angular2 Change Detection won't work. However it's fine\\n * for our code to result in AG Grid events (and Angular application action on these) as these go through\\n * Event Emitter's.\\n * \\n * This was done by Niall and Sean. The problematic events are mouseover, mouseout, mouseenter and mouseleave. */\"\n    }\n  },\n  \"IImmutableService\": {\n    \"meta\": {},\n    \"type\": {\n      \"createTransactionForRowData(data: any[])\": \"([RowDataTransaction, { [id: string]: number; } | null]) | undefined\"\n    }\n  },\n  \"IInfiniteRowModel\": {\n    \"meta\": {},\n    \"type\": {\n      \"getRow(index: number)\": \"RowNode | undefined\",\n      \"getRowNode(id: string)\": \"RowNode | undefined\",\n      \"getRowCount()\": \"number\",\n      \"getTopLevelRowCount()\": \"number\",\n      \"getTopLevelRowDisplayedIndex(topLevelIndex: number)\": \"number\",\n      \"getRowIndexAtPixel(pixel: number)\": \"number\",\n      \"isRowPresent(rowNode: RowNode)\": \"boolean\",\n      \"getRowBounds(index: number)\": \"RowBounds | null\",\n      \"isEmpty()\": \"boolean\",\n      \"isRowsToRender()\": \"boolean\",\n      \"getNodesInRangeForSelection(first: RowNode, last: RowNode | null)\": \"RowNode[]\",\n      \"forEachNode(callback: (rowNode: RowNode, index: number) => void)\": \"void\",\n      \"getType()\": \"string\",\n      \"isLastRowIndexKnown()\": \"boolean\",\n      \"ensureRowHeightsValid(startPixel: number, endPixel: number, startLimitIndex: number, endLimitIndex: number)\": \"boolean\",\n      \"start()\": \"void\",\n      \"setDatasource(datasource: IDatasource | undefined)\": \"void\",\n      \"refreshCache()\": \"void\",\n      \"purgeCache()\": \"void\",\n      \"setRowCount(rowCount: number, maxRowFound?: boolean)\": \"void\"\n    },\n    \"docs\": {\n      \"getRow(index: number)\": \"/** Returns the rowNode at the given index. */\",\n      \"getRowNode(id: string)\": \"/** Returns the rowNode for given id. */\",\n      \"getRowCount()\": \"/** This is legacy, not used by AG Grid, but keeping for backward compatibility */\",\n      \"getRowIndexAtPixel(pixel: number)\": \"/** Returns the row index at the given pixel */\",\n      \"isRowPresent(rowNode: RowNode)\": \"/** Returns true if the provided rowNode is in the list of rows to render */\",\n      \"getRowBounds(index: number)\": \"/** Returns row top and bottom for a given row */\",\n      \"isEmpty()\": \"/** Returns true if this model has no rows, regardless of model filter. EG if rows present, but filtered\\n * out, this still returns false. If it returns true, then the grid shows the 'no rows' overlay - but we\\n * don't show that overlay if the rows are just filtered out. */\",\n      \"isRowsToRender()\": \"/** Returns true if no rows (either no rows at all, or the rows are filtered out). This is what the grid\\n * uses to know if there are rows to render or not. */\",\n      \"getNodesInRangeForSelection(first: RowNode, last: RowNode | null)\": \"/** Returns all rows in range that should be selected. If there is a gap in range (non ClientSideRowModel) then\\n * then no rows should be returned */\",\n      \"forEachNode(callback: (rowNode: RowNode, index: number) => void)\": \"/** Iterate through each node. What this does depends on the model type. For clientSide, goes through\\n * all nodes. For serverSide, goes through what's loaded in memory. */\",\n      \"getType()\": \"/** The base class returns the type. We use this instead of 'instanceof' as the client might provide\\n * their own implementation of the models in the future. */\",\n      \"isLastRowIndexKnown()\": \"/** It tells us if this row model knows about the last row that it can produce. This is used by the\\n * PaginationPanel, if last row is not found, then the 'last' button is disabled and the last page is\\n * not shown. This is always true for ClientSideRowModel. It toggles for InfiniteRowModel. */\",\n      \"ensureRowHeightsValid(startPixel: number, endPixel: number, startLimitIndex: number, endLimitIndex: number)\": \"/** Used by CSRM only - is makes sure there are now estimated row heights within the range. */\",\n      \"start()\": \"/** Gets called after grid is initialised. What happens depends on row model. Client Side will take rowData\\n * from gridOptions, the other row models will start calling their datasources. */\"\n    }\n  },\n  \"IMenu\": { \"meta\": {}, \"type\": {} },\n  \"IMenuFactory\": {\n    \"meta\": {},\n    \"type\": {\n      \"showMenuAfterButtonClick(column: Column | null, eventSource: HTMLElement, containerType: ContainerType, defaultTab?: string, restrictToTabs?: string[])\": \"void\",\n      \"showMenuAfterMouseEvent(column: Column, mouseEvent: MouseEvent | Touch, defaultTab?: string, restrictToTabs?: string[])\": \"void\",\n      \"isMenuEnabled(column: Column)\": \"boolean\",\n      \"hideActiveMenu()\": \"void\"\n    }\n  },\n  \"Module\": {\n    \"meta\": {},\n    \"type\": {\n      \"moduleName\": \"string\",\n      \"beans?\": \"any[]\",\n      \"agStackComponents?\": \"ComponentMeta[]\",\n      \"controllers?\": \"ControllerMeta[]\",\n      \"userComponents?\": \"{ componentName: string; componentClass: any; }[]\",\n      \"rowModels?\": \"{ [name: string]: { new (): IRowModel; }; }\",\n      \"dependantModules?\": \"Module[]\"\n    }\n  },\n  \"IPopupComponent\": {\n    \"meta\": { \"typeParams\": [\"T\"] },\n    \"type\": {\n      \"getGui()\": \"HTMLElement\",\n      \"destroy?()\": \"void\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"void\",\n      \"init?(params: T)\": \"AgPromise<void> | void\",\n      \"isPopup?()\": \"boolean\",\n      \"focusIn?()\": \"void\",\n      \"focusOut?()\": \"void\"\n    },\n    \"docs\": {\n      \"getGui()\": \"/** Return the DOM element of your component, this is what the grid puts into the DOM */\",\n      \"destroy?()\": \"/** Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here */\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"/** A hook to perform any necessary operation just after the GUI for this component has been rendered\\n * on the screen.\\n * If a parent popup is closed and reopened (e.g. for filters), this method is called each time the component is shown.\\n * This is useful for any\\n * logic that requires attachment before executing, such as putting focus on a particular DOM\\n * element. The params has one callback method 'hidePopup', which you can call at any later\\n * point to hide the popup - good if you have an 'Apply' button and you want to hide the popup\\n * after it is pressed. */\",\n      \"init?(params: T)\": \"/** The init(params) method is called on the component once. See below for details on the parameters. */\",\n      \"isPopup?()\": \"/** Gets called once after initialised. If you return true, the component will appear in a popup, and it will be\\n * constrained to the boundaries of the popupParent. This is great if you want to, for example, provide you own\\n * custom dropdown list for selection. Default is false (ie if you don't provide the method). */\",\n      \"focusIn?()\": \"/** Called when focus is within the component */\",\n      \"focusOut?()\": \"/** Called when focus is leaving the component */\"\n    }\n  },\n  \"IRangeService\": {\n    \"meta\": {},\n    \"type\": {\n      \"isEmpty()\": \"boolean\",\n      \"removeAllCellRanges()\": \"void\",\n      \"getCellRangeCount(cell: CellPosition)\": \"number\",\n      \"isCellInAnyRange(cell: CellPosition)\": \"boolean\",\n      \"isCellInSpecificRange(cell: CellPosition, range: CellRange)\": \"boolean\",\n      \"isBottomRightCell(cellRange: CellRange, cell: CellPosition)\": \"boolean\",\n      \"isContiguousRange(cellRange: CellRange)\": \"boolean\",\n      \"isMoreThanOneCell()\": \"boolean\",\n      \"onDragStart(mouseEvent: MouseEvent)\": \"void\",\n      \"onDragStop()\": \"void\",\n      \"onDragging(mouseEvent: MouseEvent)\": \"void\",\n      \"getCellRanges()\": \"CellRange[]\",\n      \"setRangeToCell(cell: CellPosition, appendRange?: boolean)\": \"void\",\n      \"setCellRange(params: CellRangeParams)\": \"void\",\n      \"addCellRange(params: CellRangeParams)\": \"void\",\n      \"extendLatestRangeInDirection(key: number)\": \"CellPosition | undefined\",\n      \"extendLatestRangeToCell(cell: CellPosition)\": \"void\",\n      \"updateRangeEnd(cellRange: CellRange, cellPosition: CellPosition, silent?: boolean)\": \"void\",\n      \"getRangeStartRow(cellRange: CellRange)\": \"RowPosition\",\n      \"getRangeEndRow(cellRange: CellRange)\": \"RowPosition\",\n      \"createCellRangeFromCellRangeParams(params: CellRangeParams)\": \"CellRange | undefined\",\n      \"setCellRanges(cellRanges: CellRange[])\": \"void\"\n    }\n  },\n  \"ISelectionHandle\": {\n    \"meta\": {},\n    \"type\": {\n      \"getGui()\": \"HTMLElement\",\n      \"getType()\": \"SelectionHandleType\",\n      \"refresh(cellCtrl: CellCtrl)\": \"void\"\n    }\n  },\n  \"ISelectionHandleFactory\": {\n    \"meta\": {},\n    \"type\": {\n      \"createSelectionHandle(type: SelectionHandleType)\": \"ISelectionHandle\"\n    }\n  },\n  \"SelectionHandleType\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\"FILL\", \"RANGE\"]\n  },\n  \"CellRangeType\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\"VALUE\", \"DIMENSION\"]\n  },\n  \"CellRange\": {\n    \"meta\": {},\n    \"type\": {\n      \"id?\": \"string\",\n      \"type?\": \"CellRangeType\",\n      \"startRow?\": \"RowPosition\",\n      \"endRow?\": \"RowPosition\",\n      \"columns\": \"Column[]\",\n      \"startColumn\": \"Column\"\n    }\n  },\n  \"CellRangeParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"rowStartIndex\": \"number | null\",\n      \"rowStartPinned?\": \"string | null\",\n      \"rowEndIndex\": \"number | null\",\n      \"rowEndPinned?\": \"string | null\",\n      \"columnStart?\": \"string | Column\",\n      \"columnEnd?\": \"string | Column\",\n      \"columns?\": \"(string | Column)[]\"\n    }\n  },\n  \"RangeSelection\": {\n    \"meta\": { \"doc\": \"/** @deprecated\\n */\" },\n    \"type\": {\n      \"start\": \"CellPosition\",\n      \"end\": \"CellPosition\",\n      \"columns\": \"Column[] | null\"\n    }\n  },\n  \"AddRangeSelectionParams\": {\n    \"meta\": { \"doc\": \"/** @deprecated\\n */\" },\n    \"type\": {\n      \"rowStart\": \"number\",\n      \"floatingStart\": \"string\",\n      \"rowEnd\": \"number\",\n      \"floatingEnd\": \"string\",\n      \"columnStart\": \"string | Column\",\n      \"columnEnd\": \"string | Column\"\n    }\n  },\n  \"CellValue\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"object | string | number\"\n  },\n  \"IRichCellEditorParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"value\": \"any\",\n      \"keyPress\": \"number | null\",\n      \"charPress\": \"string | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"cellStartedEdit\": \"boolean\",\n      \"context\": \"any\",\n      \"$scope\": \"any\",\n      \"onKeyDown\": \"(event: KeyboardEvent) => void\",\n      \"stopEditing\": \"(suppressNavigateAfterEdit?: boolean) => void\",\n      \"eGridCell\": \"HTMLElement\",\n      \"parseValue\": \"(value: any) => any\",\n      \"formatValue\": \"(value: any) => any\",\n      \"values\": \"CellValue[]\",\n      \"cellHeight\": \"number\",\n      \"cellRenderer\": \"{ new (): ICellRendererComp; } | ICellRendererFunc | string\",\n      \"searchDebounceDelay?\": \"number\"\n    },\n    \"docs\": {\n      \"value\": \"/** Current value of the cell */\",\n      \"keyPress\": \"/** Key code of key that started the edit, eg 'Enter' or 'Delete' - non-printable\\n * characters appear here */\",\n      \"charPress\": \"/** The string that started the edit, eg 'a' if letter 'a' was pressed, or 'A' if\\n * shift + letter 'a' only printable characters appear here */\",\n      \"column\": \"/** Grid column */\",\n      \"colDef\": \"/** Column definition */\",\n      \"node\": \"/** Row node for the cell */\",\n      \"data\": \"/** Row data */\",\n      \"rowIndex\": \"/** Editing row index */\",\n      \"cellStartedEdit\": \"/** If doing full row edit, this is true if the cell is the one that started the edit\\n * (eg it is the cell the use double clicked on, or pressed a key on etc). */\",\n      \"context\": \"/** Context  as set on gridOptions.context */\",\n      \"$scope\": \"/** AngularJS scope - null if not using AngularJS, this is legacy and not used if not */\",\n      \"onKeyDown\": \"/** callback to tell grid a key was pressed - useful to pass control key events (tab,\\n * arrows etc) back to grid - however you do */\",\n      \"stopEditing\": \"/** Callback to tell grid to stop editing the current cell. pass 'false' to prevent\\n * navigation moving to the next cell if grid property enterMovesDownAfterEdit=true */\",\n      \"eGridCell\": \"/** A reference to the DOM element representing the grid cell that your component\\n * will live inside. Useful if you want to add event listeners or classes at this level.\\n * This is the DOM element that gets browser focus when selecting cells. */\",\n      \"parseValue\": \"/** Utility function to parse a value using the column's colDef.valueParser */\",\n      \"formatValue\": \"/** Utility function to format a value using the column's colDef.valueFormatter */\"\n    }\n  },\n  \"RowBounds\": {\n    \"meta\": {},\n    \"type\": { \"rowTop\": \"number\", \"rowHeight\": \"number\", \"rowIndex?\": \"number\" }\n  },\n  \"IRowModel\": {\n    \"meta\": {},\n    \"type\": {\n      \"getRow(index: number)\": \"RowNode | undefined\",\n      \"getRowNode(id: string)\": \"RowNode | undefined\",\n      \"getRowCount()\": \"number\",\n      \"getTopLevelRowCount()\": \"number\",\n      \"getTopLevelRowDisplayedIndex(topLevelIndex: number)\": \"number\",\n      \"getRowIndexAtPixel(pixel: number)\": \"number\",\n      \"isRowPresent(rowNode: RowNode)\": \"boolean\",\n      \"getRowBounds(index: number)\": \"RowBounds | null\",\n      \"isEmpty()\": \"boolean\",\n      \"isRowsToRender()\": \"boolean\",\n      \"getNodesInRangeForSelection(first: RowNode, last: RowNode | null)\": \"RowNode[]\",\n      \"forEachNode(callback: (rowNode: RowNode, index: number) => void)\": \"void\",\n      \"getType()\": \"string\",\n      \"isLastRowIndexKnown()\": \"boolean\",\n      \"ensureRowHeightsValid(startPixel: number, endPixel: number, startLimitIndex: number, endLimitIndex: number)\": \"boolean\",\n      \"start()\": \"void\"\n    },\n    \"docs\": {\n      \"getRow(index: number)\": \"/** Returns the rowNode at the given index. */\",\n      \"getRowNode(id: string)\": \"/** Returns the rowNode for given id. */\",\n      \"getRowCount()\": \"/** This is legacy, not used by AG Grid, but keeping for backward compatibility */\",\n      \"getRowIndexAtPixel(pixel: number)\": \"/** Returns the row index at the given pixel */\",\n      \"isRowPresent(rowNode: RowNode)\": \"/** Returns true if the provided rowNode is in the list of rows to render */\",\n      \"getRowBounds(index: number)\": \"/** Returns row top and bottom for a given row */\",\n      \"isEmpty()\": \"/** Returns true if this model has no rows, regardless of model filter. EG if rows present, but filtered\\n * out, this still returns false. If it returns true, then the grid shows the 'no rows' overlay - but we\\n * don't show that overlay if the rows are just filtered out. */\",\n      \"isRowsToRender()\": \"/** Returns true if no rows (either no rows at all, or the rows are filtered out). This is what the grid\\n * uses to know if there are rows to render or not. */\",\n      \"getNodesInRangeForSelection(first: RowNode, last: RowNode | null)\": \"/** Returns all rows in range that should be selected. If there is a gap in range (non ClientSideRowModel) then\\n * then no rows should be returned */\",\n      \"forEachNode(callback: (rowNode: RowNode, index: number) => void)\": \"/** Iterate through each node. What this does depends on the model type. For clientSide, goes through\\n * all nodes. For serverSide, goes through what's loaded in memory. */\",\n      \"getType()\": \"/** The base class returns the type. We use this instead of 'instanceof' as the client might provide\\n * their own implementation of the models in the future. */\",\n      \"isLastRowIndexKnown()\": \"/** It tells us if this row model knows about the last row that it can produce. This is used by the\\n * PaginationPanel, if last row is not found, then the 'last' button is disabled and the last page is\\n * not shown. This is always true for ClientSideRowModel. It toggles for InfiniteRowModel. */\",\n      \"ensureRowHeightsValid(startPixel: number, endPixel: number, startLimitIndex: number, endLimitIndex: number)\": \"/** Used by CSRM only - is makes sure there are now estimated row heights within the range. */\",\n      \"start()\": \"/** Gets called after grid is initialised. What happens depends on row model. Client Side will take rowData\\n * from gridOptions, the other row models will start calling their datasources. */\"\n    }\n  },\n  \"IRowNodeBlock\": {\n    \"meta\": {},\n    \"type\": {\n      \"addEventListener(eventType: string, listener: EventListener, async?: boolean, options?: AddEventListenerOptions)\": \"void\",\n      \"removeEventListener(eventType: string, listener: EventListener, async?: boolean, options?: AddEventListenerOptions)\": \"void\",\n      \"getDisplayIndexStart()\": \"number\",\n      \"getDisplayIndexEnd()\": \"number\",\n      \"getLastAccessed()\": \"number\",\n      \"getState()\": \"string\",\n      \"isAnyNodeOpen(rowCount: number)\": \"boolean\",\n      \"getBlockNumber()\": \"number\",\n      \"forEachNodeDeep(callback: (rowNode: RowNode, index: number) => void, sequence: NumberSequence, rowCount: number)\": \"void\",\n      \"forEachNodeShallow(callback: (rowNode: RowNode, index: number) => void, sequence: NumberSequence, rowCount: number)\": \"void\",\n      \"load()\": \"void\"\n    }\n  },\n  \"StageExecuteParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"rowNode\": \"RowNode\",\n      \"rowNodeTransaction?\": \"RowNodeTransaction | null\",\n      \"rowNodeTransactions?\": \"RowNodeTransaction[] | null\",\n      \"rowNodeOrder?\": \"{ [id: string]: number; }\",\n      \"changedPath?\": \"ChangedPath\",\n      \"afterColumnsChanged?\": \"boolean\"\n    }\n  },\n  \"IRowNodeStage\": {\n    \"meta\": {},\n    \"type\": { \"execute(params: StageExecuteParams)\": \"any\" }\n  },\n  \"IServerSideGetRowsRequest\": {\n    \"meta\": {},\n    \"type\": {\n      \"startRow\": \"number\",\n      \"endRow\": \"number\",\n      \"rowGroupCols\": \"ColumnVO[]\",\n      \"valueCols\": \"ColumnVO[]\",\n      \"pivotCols\": \"ColumnVO[]\",\n      \"pivotMode\": \"boolean\",\n      \"groupKeys\": \"string[]\",\n      \"filterModel\": \"any\",\n      \"sortModel\": \"any\"\n    }\n  },\n  \"IServerSideGetRowsParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"request\": \"IServerSideGetRowsRequest\",\n      \"parentNode\": \"RowNode\",\n      \"successCallback(rowsThisPage: any[], lastRow: number)\": \"void\",\n      \"success(params: LoadSuccessParams)\": \"void\",\n      \"failCallback()\": \"void\",\n      \"fail()\": \"void\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\"\n    }\n  },\n  \"IServerSideDatasource\": {\n    \"meta\": {},\n    \"type\": {\n      \"getRows(params: IServerSideGetRowsParams)\": \"void\",\n      \"destroy?()\": \"void\"\n    }\n  },\n  \"IServerSideRowModel\": {\n    \"meta\": {},\n    \"type\": {\n      \"getRow(index: number)\": \"RowNode | undefined\",\n      \"getRowNode(id: string)\": \"RowNode | undefined\",\n      \"getRowCount()\": \"number\",\n      \"getTopLevelRowCount()\": \"number\",\n      \"getTopLevelRowDisplayedIndex(topLevelIndex: number)\": \"number\",\n      \"getRowIndexAtPixel(pixel: number)\": \"number\",\n      \"isRowPresent(rowNode: RowNode)\": \"boolean\",\n      \"getRowBounds(index: number)\": \"RowBounds | null\",\n      \"isEmpty()\": \"boolean\",\n      \"isRowsToRender()\": \"boolean\",\n      \"getNodesInRangeForSelection(first: RowNode, last: RowNode | null)\": \"RowNode[]\",\n      \"forEachNode(callback: (rowNode: RowNode, index: number) => void)\": \"void\",\n      \"getType()\": \"string\",\n      \"isLastRowIndexKnown()\": \"boolean\",\n      \"ensureRowHeightsValid(startPixel: number, endPixel: number, startLimitIndex: number, endLimitIndex: number)\": \"boolean\",\n      \"start()\": \"void\",\n      \"refreshStore(params: RefreshStoreParams)\": \"void\",\n      \"onRowHeightChanged()\": \"void\",\n      \"getStoreState()\": \"ServerSideStoreState[]\",\n      \"retryLoads()\": \"void\",\n      \"expandAll(value: boolean)\": \"void\",\n      \"setDatasource(datasource: IServerSideDatasource)\": \"void\",\n      \"forEachNodeAfterFilterAndSort(callback: (node: RowNode, index: number) => void)\": \"void\"\n    },\n    \"docs\": {\n      \"getRow(index: number)\": \"/** Returns the rowNode at the given index. */\",\n      \"getRowNode(id: string)\": \"/** Returns the rowNode for given id. */\",\n      \"getRowCount()\": \"/** This is legacy, not used by AG Grid, but keeping for backward compatibility */\",\n      \"getRowIndexAtPixel(pixel: number)\": \"/** Returns the row index at the given pixel */\",\n      \"isRowPresent(rowNode: RowNode)\": \"/** Returns true if the provided rowNode is in the list of rows to render */\",\n      \"getRowBounds(index: number)\": \"/** Returns row top and bottom for a given row */\",\n      \"isEmpty()\": \"/** Returns true if this model has no rows, regardless of model filter. EG if rows present, but filtered\\n * out, this still returns false. If it returns true, then the grid shows the 'no rows' overlay - but we\\n * don't show that overlay if the rows are just filtered out. */\",\n      \"isRowsToRender()\": \"/** Returns true if no rows (either no rows at all, or the rows are filtered out). This is what the grid\\n * uses to know if there are rows to render or not. */\",\n      \"getNodesInRangeForSelection(first: RowNode, last: RowNode | null)\": \"/** Returns all rows in range that should be selected. If there is a gap in range (non ClientSideRowModel) then\\n * then no rows should be returned */\",\n      \"forEachNode(callback: (rowNode: RowNode, index: number) => void)\": \"/** Iterate through each node. What this does depends on the model type. For clientSide, goes through\\n * all nodes. For serverSide, goes through what's loaded in memory. */\",\n      \"getType()\": \"/** The base class returns the type. We use this instead of 'instanceof' as the client might provide\\n * their own implementation of the models in the future. */\",\n      \"isLastRowIndexKnown()\": \"/** It tells us if this row model knows about the last row that it can produce. This is used by the\\n * PaginationPanel, if last row is not found, then the 'last' button is disabled and the last page is\\n * not shown. This is always true for ClientSideRowModel. It toggles for InfiniteRowModel. */\",\n      \"ensureRowHeightsValid(startPixel: number, endPixel: number, startLimitIndex: number, endLimitIndex: number)\": \"/** Used by CSRM only - is makes sure there are now estimated row heights within the range. */\",\n      \"start()\": \"/** Gets called after grid is initialised. What happens depends on row model. Client Side will take rowData\\n * from gridOptions, the other row models will start calling their datasources. */\"\n    }\n  },\n  \"IServerSideTransactionManager\": {\n    \"meta\": {},\n    \"type\": {\n      \"applyTransaction(transaction: ServerSideTransaction)\": \"ServerSideTransactionResult | undefined\",\n      \"applyTransactionAsync(transaction: ServerSideTransaction, callback?: (res: ServerSideTransactionResult) => void)\": \"void\",\n      \"flushAsyncTransactions()\": \"void\"\n    }\n  },\n  \"RefreshStoreParams\": {\n    \"meta\": {},\n    \"type\": { \"route?\": \"string[]\", \"purge?\": \"boolean\" }\n  },\n  \"IServerSideStore\": {\n    \"meta\": {},\n    \"type\": {\n      \"clearDisplayIndexes()\": \"void\",\n      \"getDisplayIndexEnd()\": \"number | undefined\",\n      \"isDisplayIndexInStore(displayIndex: number)\": \"boolean\",\n      \"setDisplayIndexes(displayIndexSeq: NumberSequence, nextRowTop: { value: number; })\": \"void\",\n      \"forEachNodeDeep(callback: (rowNode: RowNode, index: number) => void, sequence?: NumberSequence)\": \"void\",\n      \"forEachNodeDeepAfterFilterAndSort(callback: (rowNode: RowNode, index: number) => void, sequence?: NumberSequence)\": \"void\",\n      \"retryLoads()\": \"void\",\n      \"getRowUsingDisplayIndex(displayRowIndex: number, dontCreateBlock?: boolean)\": \"RowNode | undefined\",\n      \"getRowBounds(index: number)\": \"RowBounds | null\",\n      \"isPixelInRange(pixel: number)\": \"boolean\",\n      \"getRowIndexAtPixel(pixel: number)\": \"number | null\",\n      \"getChildStore(keys: string[])\": \"IServerSideStore | null\",\n      \"refreshAfterSort(params: StoreRefreshAfterParams)\": \"void\",\n      \"refreshAfterFilter(params: StoreRefreshAfterParams)\": \"void\",\n      \"applyTransaction(transaction: ServerSideTransaction)\": \"ServerSideTransactionResult\",\n      \"refreshStore(purge: boolean)\": \"void\",\n      \"getRowCount()\": \"number\",\n      \"getTopLevelRowDisplayedIndex(topLevelIndex: number)\": \"number\",\n      \"isLastRowIndexKnown()\": \"boolean\",\n      \"getRowNodesInRange(firstInRange: RowNode, lastInRange: RowNode)\": \"RowNode[]\",\n      \"addStoreStates(result: ServerSideStoreState[])\": \"void\"\n    }\n  },\n  \"StoreRefreshAfterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"valueColChanged\": \"boolean\",\n      \"secondaryColChanged\": \"boolean\",\n      \"alwaysReset\": \"boolean\",\n      \"changedColumns\": \"string[]\"\n    }\n  },\n  \"ServerSideStoreState\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"ServerSideStoreType\",\n      \"route\": \"string[]\",\n      \"rowCount\": \"number\",\n      \"lastRowIndexKnown?\": \"boolean\",\n      \"info?\": \"any\",\n      \"maxBlocksInCache?\": \"number\",\n      \"cacheBlockSize?\": \"number\"\n    }\n  },\n  \"SetFilterValuesFuncParams\": {\n    \"meta\": {},\n    \"type\": { \"success\": \"(values: string[]) => void\", \"colDef\": \"ColDef\" }\n  },\n  \"SetFilterValuesFunc\": { \"meta\": {}, \"type\": {} },\n  \"SetFilterValues\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"SetFilterValuesFunc | any[]\"\n  },\n  \"ISetFilterParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"api\": \"GridApi\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"rowModel\": \"IRowModel\",\n      \"filterChangedCallback\": \"(additionalEventAttributes?: any) => void\",\n      \"filterModifiedCallback\": \"() => void\",\n      \"valueGetter\": \"(rowNode: RowNode) => any\",\n      \"doesRowPassOtherFilter\": \"(rowNode: RowNode) => boolean\",\n      \"context\": \"any\",\n      \"clearButton?\": \"boolean\",\n      \"resetButton?\": \"boolean\",\n      \"applyButton?\": \"boolean\",\n      \"buttons?\": \"FilterButtonType[]\",\n      \"closeOnApply?\": \"boolean\",\n      \"newRowsAction?\": \"string\",\n      \"debounceMs?\": \"number\",\n      \"suppressRemoveEntries?\": \"boolean\",\n      \"values?\": \"SetFilterValues\",\n      \"refreshValuesOnOpen?\": \"boolean\",\n      \"cellHeight?\": \"number\",\n      \"suppressSorting?\": \"boolean\",\n      \"cellRenderer?\": \"{ new (): ICellRendererComp; } | ICellRendererFunc | string\",\n      \"suppressMiniFilter?\": \"boolean\",\n      \"applyMiniFilterWhileTyping?\": \"boolean\",\n      \"suppressSelectAll?\": \"boolean\",\n      \"defaultToNothingSelected?\": \"boolean\",\n      \"suppressSyncValuesAfterDataChange?\": \"boolean\",\n      \"comparator?\": \"(a: any, b: any) => number\",\n      \"textFormatter?\": \"(from: string) => string\",\n      \"valueFormatter?\": \"(params: ValueFormatterParams) => string\",\n      \"selectAllOnMiniFilter?\": \"boolean\",\n      \"syncValuesLikeExcel?\": \"boolean\",\n      \"showTooltips?\": \"boolean\",\n      \"excelMode?\": \"'mac' | 'windows'\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"clearButton?\": \"/** @deprecated\\n */\",\n      \"resetButton?\": \"/** @deprecated\\n */\",\n      \"applyButton?\": \"/** @deprecated\\n */\",\n      \"newRowsAction?\": \"/** @deprecated\\n */\",\n      \"suppressRemoveEntries?\": \"/** @deprecated\\n */\",\n      \"suppressSyncValuesAfterDataChange?\": \"/** @deprecated\\n */\",\n      \"selectAllOnMiniFilter?\": \"/** @deprecated\\n */\",\n      \"syncValuesLikeExcel?\": \"/** @deprecated\\n */\"\n    }\n  },\n  \"ISideBar\": {\n    \"meta\": {},\n    \"type\": {\n      \"refresh()\": \"void\",\n      \"setDisplayed(show: boolean)\": \"void\",\n      \"setSideBarPosition(position?: 'left' | 'right')\": \"void\",\n      \"isToolPanelShowing()\": \"boolean\",\n      \"openToolPanel(key: string)\": \"void\",\n      \"getToolPanelInstance(key: string)\": \"IToolPanel | undefined\",\n      \"close()\": \"void\",\n      \"openedItem()\": \"string | null\",\n      \"isDisplayed()\": \"boolean\"\n    }\n  },\n  \"IStatusBarService\": {\n    \"meta\": {},\n    \"type\": {\n      \"registerStatusPanel(key: string, component: IStatusPanelComp)\": \"void\",\n      \"getStatusPanel(key: string)\": \"IStatusPanelComp\"\n    }\n  },\n  \"StatusPanelDef\": {\n    \"meta\": {},\n    \"type\": {\n      \"statusPanel?\": \"{ new (): IStatusPanelComp; } | string\",\n      \"statusPanelFramework?\": \"any\",\n      \"align?\": \"string\",\n      \"key?\": \"string\",\n      \"statusPanelParams?\": \"any\"\n    }\n  },\n  \"IStatusPanelParams\": {\n    \"meta\": {},\n    \"type\": { \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\", \"context\": \"any\" },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"IStatusPanel\": {\n    \"meta\": {},\n    \"type\": { \"getFrameworkComponentInstance?()\": \"any\" },\n    \"docs\": {\n      \"getFrameworkComponentInstance?()\": \"/** If using a framework, returns the underlying component instance, so you can call methods\\n * on it if you want. */\"\n    }\n  },\n  \"IStatusPanelComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"getGui()\": \"HTMLElement\",\n      \"destroy?()\": \"void\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"void\",\n      \"init?(params: IStatusPanelParams)\": \"AgPromise<void> | void\",\n      \"getFrameworkComponentInstance?()\": \"any\"\n    },\n    \"docs\": {\n      \"getGui()\": \"/** Return the DOM element of your component, this is what the grid puts into the DOM */\",\n      \"destroy?()\": \"/** Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here */\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"/** A hook to perform any necessary operation just after the GUI for this component has been rendered\\n * on the screen.\\n * If a parent popup is closed and reopened (e.g. for filters), this method is called each time the component is shown.\\n * This is useful for any\\n * logic that requires attachment before executing, such as putting focus on a particular DOM\\n * element. The params has one callback method 'hidePopup', which you can call at any later\\n * point to hide the popup - good if you have an 'Apply' button and you want to hide the popup\\n * after it is pressed. */\",\n      \"init?(params: IStatusPanelParams)\": \"/** The init(params) method is called on the component once. See below for details on the parameters. */\",\n      \"getFrameworkComponentInstance?()\": \"/** If using a framework, returns the underlying component instance, so you can call methods\\n * on it if you want. */\"\n    }\n  },\n  \"IToolPanelParams\": {\n    \"meta\": {},\n    \"type\": { \"api\": \"GridApi\", \"columnApi\": \"ColumnApi\" }\n  },\n  \"IToolPanel\": { \"meta\": {}, \"type\": { \"refresh()\": \"void\" } },\n  \"IToolPanelComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"getGui()\": \"HTMLElement\",\n      \"destroy?()\": \"void\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"void\",\n      \"init?(params: IToolPanelParams)\": \"AgPromise<void> | void\",\n      \"refresh()\": \"void\"\n    },\n    \"docs\": {\n      \"getGui()\": \"/** Return the DOM element of your component, this is what the grid puts into the DOM */\",\n      \"destroy?()\": \"/** Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here */\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"/** A hook to perform any necessary operation just after the GUI for this component has been rendered\\n * on the screen.\\n * If a parent popup is closed and reopened (e.g. for filters), this method is called each time the component is shown.\\n * This is useful for any\\n * logic that requires attachment before executing, such as putting focus on a particular DOM\\n * element. The params has one callback method 'hidePopup', which you can call at any later\\n * point to hide the popup - good if you have an 'Apply' button and you want to hide the popup\\n * after it is pressed. */\",\n      \"init?(params: IToolPanelParams)\": \"/** The init(params) method is called on the component once. See below for details on the parameters. */\"\n    }\n  },\n  \"ToolPanelColumnCompParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"suppressRowGroups\": \"boolean\",\n      \"suppressValues\": \"boolean\",\n      \"suppressPivots\": \"boolean\",\n      \"suppressPivotMode\": \"boolean\",\n      \"suppressColumnFilter\": \"boolean\",\n      \"suppressColumnSelectAll\": \"boolean\",\n      \"suppressColumnExpandAll\": \"boolean\",\n      \"contractColumnSelection\": \"boolean\",\n      \"suppressSyncLayoutWithGrid\": \"boolean\"\n    }\n  },\n  \"IPrimaryColsPanel\": {\n    \"meta\": {},\n    \"type\": {\n      \"getGui()\": \"HTMLElement\",\n      \"init(allowDragging: boolean, params: ToolPanelColumnCompParams, eventType: ColumnEventType)\": \"void\",\n      \"onExpandAll()\": \"void\",\n      \"onCollapseAll()\": \"void\",\n      \"expandGroups(groupIds?: string[])\": \"void\",\n      \"collapseGroups(groupIds?: string[])\": \"void\",\n      \"setColumnLayout(colDefs: (ColDef | ColGroupDef)[])\": \"void\",\n      \"syncLayoutWithGrid()\": \"void\"\n    }\n  },\n  \"IViewportDatasource\": {\n    \"meta\": {},\n    \"type\": {\n      \"init(params: IViewportDatasourceParams)\": \"void\",\n      \"setViewportRange(firstRow: number, lastRow: number)\": \"void\",\n      \"destroy?()\": \"void\"\n    },\n    \"docs\": {\n      \"init(params: IViewportDatasourceParams)\": \"/** Gets called exactly once before viewPort is used. Passes methods to be used to tell viewPort of data loads / changes. */\",\n      \"setViewportRange(firstRow: number, lastRow: number)\": \"/** Tell the viewport what the scroll position of the grid is, so it knows what rows it has to get */\",\n      \"destroy?()\": \"/** Gets called once when viewPort is no longer used. If you need to do any cleanup, do it here. */\"\n    }\n  },\n  \"IViewportDatasourceParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"setRowCount\": \"(count: number, keepRenderedRows: boolean) => void\",\n      \"setRowData\": \"(rowData: { [key: number]: any; }) => void\",\n      \"getRow\": \"(rowIndex: number) => RowNode\"\n    },\n    \"docs\": {\n      \"setRowCount\": \"/** datasource calls this method when the total row count changes. This in turn sets the height of the grids vertical scroll. */\",\n      \"setRowData\": \"/** datasource calls this when new data arrives. The grid then updates the provided rows. The rows are mapped [rowIndex]=>rowData]. */\",\n      \"getRow\": \"/** datasource calls this when it wants a row node - typically used when it wants to update the row node */\"\n    }\n  },\n  \"XmlElement\": {\n    \"meta\": {},\n    \"type\": {\n      \"name\": \"string\",\n      \"properties?\": \"XmlAttributes\",\n      \"children?\": \"XmlElement[]\",\n      \"textNode?\": \"string | null\"\n    }\n  },\n  \"HeaderElement\": {\n    \"meta\": {},\n    \"type\": {\n      \"[key: string]\": \"string | undefined\",\n      \"version?\": \"string\",\n      \"standalone?\": \"string\",\n      \"encoding?\": \"string\"\n    }\n  },\n  \"XmlAttributes\": {\n    \"meta\": {},\n    \"type\": {\n      \"prefixedAttributes?\": \"PrefixedXmlAttributes[]\",\n      \"rawMap?\": \"any\"\n    }\n  },\n  \"PrefixedXmlAttributes\": {\n    \"meta\": {},\n    \"type\": { \"prefix\": \"string\", \"map\": \"any\" }\n  },\n  \"IDetailCellRenderer\": {\n    \"meta\": {},\n    \"type\": {\n      \"addOrRemoveCssClass(cssClassName: string, on: boolean)\": \"void\",\n      \"addOrRemoveDetailGridCssClass(cssClassName: string, on: boolean)\": \"void\",\n      \"setDetailGrid(gridOptions: GridOptions)\": \"void\",\n      \"setRowData(rowData: any[])\": \"void\"\n    }\n  },\n  \"IDetailCellRendererParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"fullWidth?\": \"boolean\",\n      \"pinned?\": \"string | null\",\n      \"value\": \"any\",\n      \"valueFormatted\": \"any\",\n      \"data\": \"any\",\n      \"node\": \"RowNode\",\n      \"colDef?\": \"ColDef\",\n      \"column?\": \"Column\",\n      \"$scope\": \"any\",\n      \"rowIndex\": \"number\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\",\n      \"eGridCell\": \"HTMLElement\",\n      \"eParentOfValue\": \"HTMLElement\",\n      \"getValue?\": \"() => any\",\n      \"setValue?\": \"(value: any) => void\",\n      \"formatValue?\": \"(value: any) => any\",\n      \"refreshCell?\": \"() => void\",\n      \"registerRowDragger\": \"(rowDraggerElement: HTMLElement, dragStartPixels?: number, value?: string) => void\",\n      \"detailGridOptions\": \"GridOptions\",\n      \"getDetailRowData\": \"GetDetailRowData\",\n      \"refreshStrategy\": \"'rows' | 'everything' | 'nothing'\",\n      \"agGridReact\": \"any\",\n      \"frameworkComponentWrapper\": \"any\",\n      \"$compile\": \"any\",\n      \"pinned\": \"string\",\n      \"template\": \"string | TemplateFunc\",\n      \"autoHeight\": \"boolean\",\n      \"suppressRefresh\": \"boolean\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"registerRowDragger\": \"/** registerRowDragger: Function\\n * @param rowDraggerElement The HTMLElement to be used as Row Dragger\\n * @param dragStartPixels The amount of pixels required to start the drag (Default: 4)\\n * @param value The value to be displayed while dragging. Note: Only relevant with Full Width Rows.\\n */\",\n      \"autoHeight\": \"/** @deprecated\\n */\",\n      \"suppressRefresh\": \"/** @deprecated\\n */\"\n    }\n  },\n  \"GetDetailRowData\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"GetDetailRowDataParams\" },\n      \"returnType\": \"void\"\n    }\n  },\n  \"GetDetailRowDataParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"successCallback(rowData: any[])\": \"void\"\n    }\n  },\n  \"TemplateFunc\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"ICellRendererParams\" },\n      \"returnType\": \"string\"\n    }\n  },\n  \"IDetailCellRendererCtrl\": {\n    \"meta\": {},\n    \"type\": {\n      \"init(comp: IDetailCellRenderer, params: IDetailCellRendererParams)\": \"void\",\n      \"registerDetailWithMaster(api: GridApi, columnApi: ColumnApi)\": \"void\",\n      \"refresh()\": \"boolean\"\n    }\n  },\n  \"RowDataTransaction\": {\n    \"meta\": {},\n    \"type\": {\n      \"addIndex?\": \"number | null\",\n      \"add?\": \"any[] | null\",\n      \"remove?\": \"any[] | null\",\n      \"update?\": \"any[] | null\"\n    }\n  },\n  \"RowNodeTransaction\": {\n    \"meta\": {},\n    \"type\": { \"add\": \"RowNode[]\", \"remove\": \"RowNode[]\", \"update\": \"RowNode[]\" }\n  },\n  \"ServerSideTransaction\": {\n    \"meta\": {},\n    \"type\": {\n      \"route?\": \"string[]\",\n      \"addIndex?\": \"number\",\n      \"add?\": \"any[]\",\n      \"remove?\": \"any[]\",\n      \"update?\": \"any[]\"\n    }\n  },\n  \"ServerSideTransactionResult\": {\n    \"meta\": {},\n    \"type\": {\n      \"status\": \"ServerSideTransactionResultStatus\",\n      \"add?\": \"RowNode[]\",\n      \"remove?\": \"RowNode[]\",\n      \"update?\": \"RowNode[]\"\n    }\n  },\n  \"ServerSideTransactionResultStatus\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\n      \"StoreNotFound = 'StoreNotFound'\",\n      \"StoreLoading = 'StoreLoading'\",\n      \"StoreWaitingToLoad = 'StoreWaitingToLoad'\",\n      \"StoreLoadingFailed = 'StoreLoadingFailed'\",\n      \"StoreWrongType = 'StoreWrongType'\",\n      \"Applied = 'Applied'\",\n      \"Cancelled = 'Cancelled'\"\n    ]\n  },\n  \"TabbedLayoutParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"items\": \"TabbedItem[]\",\n      \"cssClass?\": \"string\",\n      \"onItemClicked?\": \"Function\",\n      \"onActiveItemClicked?\": \"Function\"\n    }\n  },\n  \"TabbedItem\": {\n    \"meta\": {},\n    \"type\": {\n      \"title\": \"Element\",\n      \"titleLabel\": \"string\",\n      \"bodyPromise\": \"AgPromise<HTMLElement>\",\n      \"name\": \"string\",\n      \"afterAttachedCallback?\": \"(params: IAfterGuiAttachedParams) => void\"\n    }\n  },\n  \"TabbedItemWrapper\": {\n    \"meta\": {},\n    \"type\": { \"tabbedItem\": \"TabbedItem\", \"eHeaderButton\": \"HTMLElement\" }\n  },\n  \"TaskItem\": {\n    \"meta\": {},\n    \"type\": { \"task\": \"() => void\", \"index\": \"number\", \"createOrder\": \"number\" }\n  },\n  \"TaskList\": {\n    \"meta\": {},\n    \"type\": { \"list\": \"TaskItem[]\", \"sorted\": \"boolean\" }\n  },\n  \"SimpleHttpRequestParams\": { \"meta\": {}, \"type\": { \"url\": \"string\" } },\n  \"ModuleNames\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\n      \"CommunityCoreModule = \\\"@ag-grid-community/core\\\"\",\n      \"CommunityAllModules = \\\"@ag-grid-community/all\\\"\",\n      \"InfiniteRowModelModule = \\\"@ag-grid-community/infinite-row-model\\\"\",\n      \"ClientSideRowModelModule = \\\"@ag-grid-community/client-side-row-model\\\"\",\n      \"CsvExportModule = \\\"@ag-grid-community/csv-export\\\"\",\n      \"EnterpriseCoreModule = \\\"@ag-grid-enterprise/core\\\"\",\n      \"EnterpriseAllModules = \\\"@ag-grid-enterprise/all\\\"\",\n      \"RowGroupingModule = \\\"@ag-grid-enterprise/row-grouping\\\"\",\n      \"ColumnToolPanelModule = \\\"@ag-grid-enterprise/column-tool-panel\\\"\",\n      \"FiltersToolPanelModule = \\\"@ag-grid-enterprise/filter-tool-panel\\\"\",\n      \"MenuModule = \\\"@ag-grid-enterprise/menu\\\"\",\n      \"SetFilterModule = \\\"@ag-grid-enterprise/set-filter\\\"\",\n      \"MultiFilterModule = \\\"@ag-grid-enterprise/multi-filter\\\"\",\n      \"StatusBarModule = \\\"@ag-grid-enterprise/status-bar\\\"\",\n      \"SideBarModule = \\\"@ag-grid-enterprise/side-bar\\\"\",\n      \"RangeSelectionModule = \\\"@ag-grid-enterprise/range-selection\\\"\",\n      \"MasterDetailModule = \\\"@ag-grid-enterprise/master-detail\\\"\",\n      \"RichSelectModule = \\\"@ag-grid-enterprise/rich-select\\\"\",\n      \"GridChartsModule = \\\"@ag-grid-enterprise/charts\\\"\",\n      \"ViewportRowModelModule = \\\"@ag-grid-enterprise/viewport-row-model\\\"\",\n      \"ServerSideRowModelModule = \\\"@ag-grid-enterprise/server-side-row-model\\\"\",\n      \"ExcelExportModule = \\\"@ag-grid-enterprise/excel-export\\\"\",\n      \"ClipboardModule = \\\"@ag-grid-enterprise/clipboard\\\"\",\n      \"AngularModule = \\\"@ag-grid-community/angular\\\"\",\n      \"ReactModule = \\\"@ag-grid-community/react\\\"\",\n      \"VueModule = \\\"@ag-grid-community/vue\\\"\",\n      \"PolymerModule = \\\"@ag-grid-community/polymer\\\"\"\n    ]\n  },\n  \"ICellComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"addOrRemoveCssClass(cssClassName: string, on: boolean)\": \"void\",\n      \"setUserStyles(styles: any)\": \"void\",\n      \"setAriaSelected(selected: boolean | undefined)\": \"void\",\n      \"setAriaExpanded(expanded: boolean)\": \"void\",\n      \"getFocusableElement()\": \"HTMLElement\",\n      \"setLeft(left: string)\": \"void\",\n      \"setWidth(width: string)\": \"void\",\n      \"setAriaColIndex(index: number)\": \"void\",\n      \"setHeight(height: string)\": \"void\",\n      \"setZIndex(zIndex: string)\": \"void\",\n      \"setTabIndex(tabIndex: number)\": \"void\",\n      \"setRole(role: string)\": \"void\",\n      \"setColId(colId: string)\": \"void\",\n      \"setTitle(title: string | undefined)\": \"void\",\n      \"setUnselectable(value: 'on' | null)\": \"void\",\n      \"setTransition(value: string | undefined)\": \"void\",\n      \"setIncludeSelection(include: boolean)\": \"void\",\n      \"setIncludeRowDrag(include: boolean)\": \"void\",\n      \"setIncludeDndSource(include: boolean)\": \"void\",\n      \"setForceWrapper(force: boolean)\": \"void\",\n      \"getCellEditor()\": \"ICellEditor | null\",\n      \"getCellRenderer()\": \"ICellRenderer | null\",\n      \"getParentOfValue()\": \"HTMLElement | null\",\n      \"setRenderDetails(compDetails: UserCompDetails | undefined, valueToDisplay: any, forceNewCellRendererInstance: boolean)\": \"void\",\n      \"setEditDetails(compDetails?: UserCompDetails, popup?: boolean, position?: string)\": \"void\"\n    }\n  },\n  \"ILargeTextEditorParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"value\": \"any\",\n      \"keyPress\": \"number | null\",\n      \"charPress\": \"string | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"cellStartedEdit\": \"boolean\",\n      \"context\": \"any\",\n      \"$scope\": \"any\",\n      \"onKeyDown\": \"(event: KeyboardEvent) => void\",\n      \"stopEditing\": \"(suppressNavigateAfterEdit?: boolean) => void\",\n      \"eGridCell\": \"HTMLElement\",\n      \"parseValue\": \"(value: any) => any\",\n      \"formatValue\": \"(value: any) => any\",\n      \"maxLength\": \"number\",\n      \"rows\": \"number\",\n      \"cols\": \"number\"\n    },\n    \"docs\": {\n      \"value\": \"/** Current value of the cell */\",\n      \"keyPress\": \"/** Key code of key that started the edit, eg 'Enter' or 'Delete' - non-printable\\n * characters appear here */\",\n      \"charPress\": \"/** The string that started the edit, eg 'a' if letter 'a' was pressed, or 'A' if\\n * shift + letter 'a' only printable characters appear here */\",\n      \"column\": \"/** Grid column */\",\n      \"colDef\": \"/** Column definition */\",\n      \"node\": \"/** Row node for the cell */\",\n      \"data\": \"/** Row data */\",\n      \"rowIndex\": \"/** Editing row index */\",\n      \"cellStartedEdit\": \"/** If doing full row edit, this is true if the cell is the one that started the edit\\n * (eg it is the cell the use double clicked on, or pressed a key on etc). */\",\n      \"context\": \"/** Context  as set on gridOptions.context */\",\n      \"$scope\": \"/** AngularJS scope - null if not using AngularJS, this is legacy and not used if not */\",\n      \"onKeyDown\": \"/** callback to tell grid a key was pressed - useful to pass control key events (tab,\\n * arrows etc) back to grid - however you do */\",\n      \"stopEditing\": \"/** Callback to tell grid to stop editing the current cell. pass 'false' to prevent\\n * navigation moving to the next cell if grid property enterMovesDownAfterEdit=true */\",\n      \"eGridCell\": \"/** A reference to the DOM element representing the grid cell that your component\\n * will live inside. Useful if you want to add event listeners or classes at this level.\\n * This is the DOM element that gets browser focus when selecting cells. */\",\n      \"parseValue\": \"/** Utility function to parse a value using the column's colDef.valueParser */\",\n      \"formatValue\": \"/** Utility function to format a value using the column's colDef.valueFormatter */\"\n    }\n  },\n  \"ISelectCellEditorParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"value\": \"any\",\n      \"keyPress\": \"number | null\",\n      \"charPress\": \"string | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"cellStartedEdit\": \"boolean\",\n      \"context\": \"any\",\n      \"$scope\": \"any\",\n      \"onKeyDown\": \"(event: KeyboardEvent) => void\",\n      \"stopEditing\": \"(suppressNavigateAfterEdit?: boolean) => void\",\n      \"eGridCell\": \"HTMLElement\",\n      \"parseValue\": \"(value: any) => any\",\n      \"formatValue\": \"(value: any) => any\",\n      \"values\": \"any[]\"\n    },\n    \"docs\": {\n      \"value\": \"/** Current value of the cell */\",\n      \"keyPress\": \"/** Key code of key that started the edit, eg 'Enter' or 'Delete' - non-printable\\n * characters appear here */\",\n      \"charPress\": \"/** The string that started the edit, eg 'a' if letter 'a' was pressed, or 'A' if\\n * shift + letter 'a' only printable characters appear here */\",\n      \"column\": \"/** Grid column */\",\n      \"colDef\": \"/** Column definition */\",\n      \"node\": \"/** Row node for the cell */\",\n      \"data\": \"/** Row data */\",\n      \"rowIndex\": \"/** Editing row index */\",\n      \"cellStartedEdit\": \"/** If doing full row edit, this is true if the cell is the one that started the edit\\n * (eg it is the cell the use double clicked on, or pressed a key on etc). */\",\n      \"context\": \"/** Context  as set on gridOptions.context */\",\n      \"$scope\": \"/** AngularJS scope - null if not using AngularJS, this is legacy and not used if not */\",\n      \"onKeyDown\": \"/** callback to tell grid a key was pressed - useful to pass control key events (tab,\\n * arrows etc) back to grid - however you do */\",\n      \"stopEditing\": \"/** Callback to tell grid to stop editing the current cell. pass 'false' to prevent\\n * navigation moving to the next cell if grid property enterMovesDownAfterEdit=true */\",\n      \"eGridCell\": \"/** A reference to the DOM element representing the grid cell that your component\\n * will live inside. Useful if you want to add event listeners or classes at this level.\\n * This is the DOM element that gets browser focus when selecting cells. */\",\n      \"parseValue\": \"/** Utility function to parse a value using the column's colDef.valueParser */\",\n      \"formatValue\": \"/** Utility function to format a value using the column's colDef.valueFormatter */\"\n    }\n  },\n  \"ITextCellEditorParams\": {\n    \"meta\": {\n      \"doc\": \"/** useFormatter: used when the cell value needs formatting prior to editing, such as when using reference data and you\\n *                want to display text rather than code. */\"\n    },\n    \"type\": {\n      \"value\": \"any\",\n      \"keyPress\": \"number | null\",\n      \"charPress\": \"string | null\",\n      \"column\": \"Column\",\n      \"colDef\": \"ColDef\",\n      \"node\": \"RowNode\",\n      \"data\": \"any\",\n      \"rowIndex\": \"number\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"cellStartedEdit\": \"boolean\",\n      \"context\": \"any\",\n      \"$scope\": \"any\",\n      \"onKeyDown\": \"(event: KeyboardEvent) => void\",\n      \"stopEditing\": \"(suppressNavigateAfterEdit?: boolean) => void\",\n      \"eGridCell\": \"HTMLElement\",\n      \"parseValue\": \"(value: any) => any\",\n      \"formatValue\": \"(value: any) => any\",\n      \"useFormatter\": \"boolean\"\n    },\n    \"docs\": {\n      \"value\": \"/** Current value of the cell */\",\n      \"keyPress\": \"/** Key code of key that started the edit, eg 'Enter' or 'Delete' - non-printable\\n * characters appear here */\",\n      \"charPress\": \"/** The string that started the edit, eg 'a' if letter 'a' was pressed, or 'A' if\\n * shift + letter 'a' only printable characters appear here */\",\n      \"column\": \"/** Grid column */\",\n      \"colDef\": \"/** Column definition */\",\n      \"node\": \"/** Row node for the cell */\",\n      \"data\": \"/** Row data */\",\n      \"rowIndex\": \"/** Editing row index */\",\n      \"cellStartedEdit\": \"/** If doing full row edit, this is true if the cell is the one that started the edit\\n * (eg it is the cell the use double clicked on, or pressed a key on etc). */\",\n      \"context\": \"/** Context  as set on gridOptions.context */\",\n      \"$scope\": \"/** AngularJS scope - null if not using AngularJS, this is legacy and not used if not */\",\n      \"onKeyDown\": \"/** callback to tell grid a key was pressed - useful to pass control key events (tab,\\n * arrows etc) back to grid - however you do */\",\n      \"stopEditing\": \"/** Callback to tell grid to stop editing the current cell. pass 'false' to prevent\\n * navigation moving to the next cell if grid property enterMovesDownAfterEdit=true */\",\n      \"eGridCell\": \"/** A reference to the DOM element representing the grid cell that your component\\n * will live inside. Useful if you want to add event listeners or classes at this level.\\n * This is the DOM element that gets browser focus when selecting cells. */\",\n      \"parseValue\": \"/** Utility function to parse a value using the column's colDef.valueParser */\",\n      \"formatValue\": \"/** Utility function to format a value using the column's colDef.valueFormatter */\"\n    }\n  },\n  \"IGroupCellRenderer\": {\n    \"meta\": {},\n    \"type\": {\n      \"setInnerRenderer(compDetails: UserCompDetails | undefined, valueToDisplay: any)\": \"void\",\n      \"setChildCount(count: string)\": \"void\",\n      \"setCheckboxVisible(value: boolean)\": \"void\",\n      \"setExpandedDisplayed(value: boolean)\": \"void\",\n      \"setContractedDisplayed(value: boolean)\": \"void\",\n      \"addOrRemoveCssClass(cssClassName: string, on: boolean)\": \"void\"\n    }\n  },\n  \"GroupCellRendererParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"fullWidth?\": \"boolean\",\n      \"pinned?\": \"string | null\",\n      \"value\": \"any\",\n      \"valueFormatted\": \"any\",\n      \"data\": \"any\",\n      \"node\": \"RowNode\",\n      \"colDef?\": \"ColDef\",\n      \"column?\": \"Column\",\n      \"$scope\": \"any\",\n      \"rowIndex\": \"number\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\",\n      \"eGridCell\": \"HTMLElement\",\n      \"eParentOfValue\": \"HTMLElement\",\n      \"getValue?\": \"() => any\",\n      \"setValue?\": \"(value: any) => void\",\n      \"formatValue?\": \"(value: any) => any\",\n      \"refreshCell?\": \"() => void\",\n      \"registerRowDragger\": \"(rowDraggerElement: HTMLElement, dragStartPixels?: number, value?: string) => void\",\n      \"pinned\": \"string\",\n      \"fullWidth\": \"boolean\",\n      \"suppressPadding\": \"boolean\",\n      \"suppressDoubleClickExpand\": \"boolean\",\n      \"suppressEnterExpand\": \"boolean\",\n      \"footerValueGetter\": \"any\",\n      \"suppressCount\": \"boolean\",\n      \"checkbox\": \"any\",\n      \"rowDrag?\": \"boolean\",\n      \"innerRenderer?\": \"{ new (): ICellRendererComp; } | ICellRendererFunc | string\",\n      \"innerRendererFramework?\": \"any\",\n      \"innerRendererParams?\": \"any\",\n      \"scope\": \"any\",\n      \"padding\": \"number\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"registerRowDragger\": \"/** registerRowDragger: Function\\n * @param rowDraggerElement The HTMLElement to be used as Row Dragger\\n * @param dragStartPixels The amount of pixels required to start the drag (Default: 4)\\n * @param value The value to be displayed while dragging. Note: Only relevant with Full Width Rows.\\n */\",\n      \"padding\": \"/** @deprecated\\n */\"\n    }\n  },\n  \"ICellRendererParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"fullWidth?\": \"boolean\",\n      \"pinned?\": \"string | null\",\n      \"value\": \"any\",\n      \"valueFormatted\": \"any\",\n      \"data\": \"any\",\n      \"node\": \"RowNode\",\n      \"colDef?\": \"ColDef\",\n      \"column?\": \"Column\",\n      \"$scope\": \"any\",\n      \"rowIndex\": \"number\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\",\n      \"eGridCell\": \"HTMLElement\",\n      \"eParentOfValue\": \"HTMLElement\",\n      \"getValue?\": \"() => any\",\n      \"setValue?\": \"(value: any) => void\",\n      \"formatValue?\": \"(value: any) => any\",\n      \"refreshCell?\": \"() => void\",\n      \"registerRowDragger\": \"(rowDraggerElement: HTMLElement, dragStartPixels?: number, value?: string) => void\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"registerRowDragger\": \"/** registerRowDragger: Function\\n * @param rowDraggerElement The HTMLElement to be used as Row Dragger\\n * @param dragStartPixels The amount of pixels required to start the drag (Default: 4)\\n * @param value The value to be displayed while dragging. Note: Only relevant with Full Width Rows.\\n */\"\n    }\n  },\n  \"ISetFilterCellRendererParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"value\": \"any\",\n      \"valueFormatted\": \"any\",\n      \"api\": \"GridApi\",\n      \"context\": \"any\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\"\n    }\n  },\n  \"ICellRenderer\": {\n    \"meta\": {},\n    \"type\": { \"refresh(params: ICellRendererParams)\": \"boolean\" },\n    \"docs\": {\n      \"refresh(params: ICellRendererParams)\": \"/** Get the cell to refresh. Return true if successful. Return false if not (or you don't have refresh logic),\\n * then the grid will refresh the cell for you. */\"\n    }\n  },\n  \"ICellRendererComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"getGui()\": \"HTMLElement\",\n      \"destroy?()\": \"void\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"void\",\n      \"init?(params: ICellRendererParams)\": \"AgPromise<void> | void\",\n      \"refresh(params: ICellRendererParams)\": \"boolean\"\n    },\n    \"docs\": {\n      \"getGui()\": \"/** Return the DOM element of your component, this is what the grid puts into the DOM */\",\n      \"destroy?()\": \"/** Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here */\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"/** A hook to perform any necessary operation just after the GUI for this component has been rendered\\n * on the screen.\\n * If a parent popup is closed and reopened (e.g. for filters), this method is called each time the component is shown.\\n * This is useful for any\\n * logic that requires attachment before executing, such as putting focus on a particular DOM\\n * element. The params has one callback method 'hidePopup', which you can call at any later\\n * point to hide the popup - good if you have an 'Apply' button and you want to hide the popup\\n * after it is pressed. */\",\n      \"init?(params: ICellRendererParams)\": \"/** The init(params) method is called on the component once. See below for details on the parameters. */\",\n      \"refresh(params: ICellRendererParams)\": \"/** Get the cell to refresh. Return true if successful. Return false if not (or you don't have refresh logic),\\n * then the grid will refresh the cell for you. */\"\n    }\n  },\n  \"ICellRendererFunc\": {\n    \"meta\": { \"isCallSignature\": true },\n    \"type\": {\n      \"arguments\": { \"params\": \"any\" },\n      \"returnType\": \"HTMLElement | string\"\n    }\n  },\n  \"ILoadingCellRendererParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"fullWidth?\": \"boolean\",\n      \"pinned?\": \"string | null\",\n      \"value\": \"any\",\n      \"valueFormatted\": \"any\",\n      \"data\": \"any\",\n      \"node\": \"RowNode\",\n      \"colDef?\": \"ColDef\",\n      \"column?\": \"Column\",\n      \"$scope\": \"any\",\n      \"rowIndex\": \"number\",\n      \"api\": \"GridApi\",\n      \"columnApi\": \"ColumnApi\",\n      \"context\": \"any\",\n      \"eGridCell\": \"HTMLElement\",\n      \"eParentOfValue\": \"HTMLElement\",\n      \"getValue?\": \"() => any\",\n      \"setValue?\": \"(value: any) => void\",\n      \"formatValue?\": \"(value: any) => any\",\n      \"refreshCell?\": \"() => void\",\n      \"registerRowDragger\": \"(rowDraggerElement: HTMLElement, dragStartPixels?: number, value?: string) => void\"\n    },\n    \"docs\": {\n      \"context\": \"/** The context as provided on `gridOptions.context` */\",\n      \"registerRowDragger\": \"/** registerRowDragger: Function\\n * @param rowDraggerElement The HTMLElement to be used as Row Dragger\\n * @param dragStartPixels The amount of pixels required to start the drag (Default: 4)\\n * @param value The value to be displayed while dragging. Note: Only relevant with Full Width Rows.\\n */\"\n    }\n  },\n  \"ILoadingCellRenderer\": {\n    \"meta\": {},\n    \"type\": { \"refresh(params: ICellRendererParams)\": \"boolean\" },\n    \"docs\": {\n      \"refresh(params: ICellRendererParams)\": \"/** Get the cell to refresh. Return true if successful. Return false if not (or you don't have refresh logic),\\n * then the grid will refresh the cell for you. */\"\n    }\n  },\n  \"IDate\": {\n    \"meta\": {},\n    \"type\": {\n      \"getDate()\": \"Date | null\",\n      \"setDate(date: Date | null)\": \"void\",\n      \"setInputPlaceholder?(placeholder: string)\": \"void\",\n      \"setInputAriaLabel?(placeholder: string)\": \"void\"\n    },\n    \"docs\": {\n      \"getDate()\": \"/** Returns the current date represented by this editor */\",\n      \"setDate(date: Date | null)\": \"/** Sets the date represented by this component */\"\n    }\n  },\n  \"IDateParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"onDateChanged\": \"() => void\",\n      \"filterParams\": \"IDateFilterParams\"\n    },\n    \"docs\": {\n      \"onDateChanged\": \"/** Method for component to tell AG Grid that the date has changed. */\"\n    }\n  },\n  \"IDateComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"getDate()\": \"Date | null\",\n      \"setDate(date: Date | null)\": \"void\",\n      \"setInputPlaceholder?(placeholder: string)\": \"void\",\n      \"setInputAriaLabel?(placeholder: string)\": \"void\",\n      \"getGui()\": \"HTMLElement\",\n      \"destroy?()\": \"void\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"void\",\n      \"init?(params: IDateParams)\": \"AgPromise<void> | void\"\n    },\n    \"docs\": {\n      \"getDate()\": \"/** Returns the current date represented by this editor */\",\n      \"setDate(date: Date | null)\": \"/** Sets the date represented by this component */\",\n      \"getGui()\": \"/** Return the DOM element of your component, this is what the grid puts into the DOM */\",\n      \"destroy?()\": \"/** Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here */\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"/** A hook to perform any necessary operation just after the GUI for this component has been rendered\\n * on the screen.\\n * If a parent popup is closed and reopened (e.g. for filters), this method is called each time the component is shown.\\n * This is useful for any\\n * logic that requires attachment before executing, such as putting focus on a particular DOM\\n * element. The params has one callback method 'hidePopup', which you can call at any later\\n * point to hide the popup - good if you have an 'Apply' button and you want to hide the popup\\n * after it is pressed. */\",\n      \"init?(params: IDateParams)\": \"/** The init(params) method is called on the component once. See below for details on the parameters. */\"\n    }\n  },\n  \"PositionableOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"popup?\": \"boolean\",\n      \"minWidth?\": \"number | null\",\n      \"width?\": \"number | string | null\",\n      \"minHeight?\": \"number | null\",\n      \"height?\": \"number | string | null\",\n      \"centered?\": \"boolean | null\",\n      \"calculateTopBuffer?\": \"() => number\",\n      \"forcePopupParentAsOffsetParent?\": \"boolean\",\n      \"x?\": \"number | null\",\n      \"y?\": \"number | null\"\n    },\n    \"docs\": {\n      \"forcePopupParentAsOffsetParent?\": \"/** Used for when a popup needs to be resized by an element within itself\\n * In that case, the feature will configured as `popup=false` but the offsetParent\\n * needs to be the popupParent. */\"\n    }\n  },\n  \"ResizableSides\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'topLeft' | 'top' | 'topRight' | 'right' | 'bottomRight' | 'bottom' | 'bottomLeft' | 'left'\"\n  },\n  \"ResizableStructure\": { \"meta\": {}, \"type\": {} },\n  \"MappedResizer\": {\n    \"meta\": {},\n    \"type\": { \"element\": \"HTMLElement\", \"dragSource?\": \"DragListenerParams\" }\n  },\n  \"ILoadingOverlayParams\": { \"meta\": {}, \"type\": { \"api\": \"GridApi\" } },\n  \"ILoadingOverlayComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"getGui()\": \"HTMLElement\",\n      \"destroy?()\": \"void\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"void\",\n      \"init?(params: ILoadingOverlayParams)\": \"AgPromise<void> | void\"\n    },\n    \"docs\": {\n      \"getGui()\": \"/** Return the DOM element of your component, this is what the grid puts into the DOM */\",\n      \"destroy?()\": \"/** Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here */\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"/** A hook to perform any necessary operation just after the GUI for this component has been rendered\\n * on the screen.\\n * If a parent popup is closed and reopened (e.g. for filters), this method is called each time the component is shown.\\n * This is useful for any\\n * logic that requires attachment before executing, such as putting focus on a particular DOM\\n * element. The params has one callback method 'hidePopup', which you can call at any later\\n * point to hide the popup - good if you have an 'Apply' button and you want to hide the popup\\n * after it is pressed. */\",\n      \"init?(params: ILoadingOverlayParams)\": \"/** The init(params) method is called on the component once. See below for details on the parameters. */\"\n    }\n  },\n  \"INoRowsOverlayParams\": { \"meta\": {}, \"type\": { \"api\": \"GridApi\" } },\n  \"INoRowsOverlayComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"getGui()\": \"HTMLElement\",\n      \"destroy?()\": \"void\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"void\",\n      \"init?(params: INoRowsOverlayParams)\": \"AgPromise<void> | void\"\n    },\n    \"docs\": {\n      \"getGui()\": \"/** Return the DOM element of your component, this is what the grid puts into the DOM */\",\n      \"destroy?()\": \"/** Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here */\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"/** A hook to perform any necessary operation just after the GUI for this component has been rendered\\n * on the screen.\\n * If a parent popup is closed and reopened (e.g. for filters), this method is called each time the component is shown.\\n * This is useful for any\\n * logic that requires attachment before executing, such as putting focus on a particular DOM\\n * element. The params has one callback method 'hidePopup', which you can call at any later\\n * point to hide the popup - good if you have an 'Apply' button and you want to hide the popup\\n * after it is pressed. */\",\n      \"init?(params: INoRowsOverlayParams)\": \"/** The init(params) method is called on the component once. See below for details on the parameters. */\"\n    }\n  },\n  \"LoadingType\": { \"meta\": { \"isEnum\": true }, \"type\": [\"Loading\", \"NoRows\"] },\n  \"RowCssClassCalculatorParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"rowNode\": \"RowNode\",\n      \"rowIsEven\": \"boolean\",\n      \"rowLevel\": \"number\",\n      \"fullWidthRow?\": \"boolean\",\n      \"firstRowOnPage\": \"boolean\",\n      \"lastRowOnPage\": \"boolean\",\n      \"printLayout\": \"boolean\",\n      \"expandable\": \"boolean\",\n      \"pinned?\": \"string | null\",\n      \"extraCssClass?\": \"string\",\n      \"rowFocused?\": \"boolean\",\n      \"fadeRowIn?\": \"boolean\",\n      \"scope?\": \"any\"\n    }\n  },\n  \"RowType\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\n      \"Normal = 'Normal'\",\n      \"FullWidth = 'FullWidth'\",\n      \"FullWidthLoading = 'FullWidthLoading'\",\n      \"FullWidthGroup = 'FullWidthGroup'\",\n      \"FullWidthDetail = 'FullWidthDetail'\"\n    ]\n  },\n  \"IRowComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"setDisplay(value?: string)\": \"void\",\n      \"setDomOrder(domOrder: boolean)\": \"void\",\n      \"addOrRemoveCssClass(cssClassName: string, on: boolean)\": \"void\",\n      \"setCellCtrls(cellCtrls: CellCtrl[])\": \"void\",\n      \"showFullWidth(compDetails: UserCompDetails)\": \"void\",\n      \"getFullWidthCellRenderer()\": \"ICellRenderer | null | undefined\",\n      \"setAriaExpanded(on: boolean)\": \"void\",\n      \"setAriaSelected(selected: boolean | undefined)\": \"void\",\n      \"setHeight(height: string)\": \"void\",\n      \"setTop(top: string)\": \"void\",\n      \"setTransform(transform: string)\": \"void\",\n      \"setRowIndex(rowIndex: string)\": \"void\",\n      \"setAriaRowIndex(rowIndex: number)\": \"void\",\n      \"setRowId(rowId: string)\": \"void\",\n      \"setRowBusinessKey(businessKey: string)\": \"void\",\n      \"setTabIndex(tabIndex: number)\": \"void\",\n      \"setAriaLabel(label: string | undefined)\": \"void\",\n      \"setUserStyles(styles: any)\": \"void\",\n      \"setRole(role: string)\": \"void\"\n    }\n  },\n  \"RowGui\": {\n    \"meta\": {},\n    \"type\": {\n      \"rowComp\": \"IRowComp\",\n      \"element\": \"HTMLElement\",\n      \"pinned\": \"string | null\"\n    }\n  },\n  \"CellCtrlListAndMap\": {\n    \"meta\": {},\n    \"type\": { \"list\": \"CellCtrl[]\", \"map\": \"{ [key: string]: CellCtrl; }\" }\n  },\n  \"IRowDragItem\": {\n    \"meta\": {},\n    \"type\": {\n      \"rowNode?\": \"RowNode\",\n      \"rowNodes?\": \"RowNode[]\",\n      \"columns?\": \"Column[]\",\n      \"visibleState?\": \"{ [key: string]: boolean; }\",\n      \"defaultTextValue\": \"string\"\n    },\n    \"docs\": {\n      \"rowNode?\": \"/** When dragging a row, this contains the row node being dragged\\n * When dragging multiple rows, this contains the row that started the drag. */\",\n      \"rowNodes?\": \"/** When dragging multiple rows, this contains all rows being dragged */\",\n      \"columns?\": \"/** When dragging columns, this contains the columns being dragged */\",\n      \"visibleState?\": \"/** When dragging columns, this contains the visible state of the columns */\"\n    }\n  },\n  \"RowCtrlMap\": { \"meta\": {}, \"type\": { \"[key: string]\": \"RowCtrl\" } },\n  \"RefreshViewParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"recycleRows?\": \"boolean\",\n      \"animate?\": \"boolean\",\n      \"suppressKeepFocus?\": \"boolean\",\n      \"onlyBody?\": \"boolean\",\n      \"newData?\": \"boolean\",\n      \"newPage?\": \"boolean\"\n    }\n  },\n  \"ITooltipParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"location\": \"string\",\n      \"api?\": \"GridApi\",\n      \"columnApi?\": \"ColumnApi\",\n      \"context?\": \"any\",\n      \"colDef?\": \"ColDef | ColGroupDef | null\",\n      \"column?\": \"Column | ColumnGroup\",\n      \"value?\": \"any\",\n      \"valueFormatted?\": \"any\",\n      \"rowIndex?\": \"number\",\n      \"node?\": \"RowNode\",\n      \"data?\": \"any\"\n    }\n  },\n  \"ITooltipComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"getGui()\": \"HTMLElement\",\n      \"destroy?()\": \"void\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"void\",\n      \"init?(params: ITooltipParams)\": \"AgPromise<void> | void\"\n    },\n    \"docs\": {\n      \"getGui()\": \"/** Return the DOM element of your component, this is what the grid puts into the DOM */\",\n      \"destroy?()\": \"/** Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here */\",\n      \"afterGuiAttached?(params?: IAfterGuiAttachedParams)\": \"/** A hook to perform any necessary operation just after the GUI for this component has been rendered\\n * on the screen.\\n * If a parent popup is closed and reopened (e.g. for filters), this method is called each time the component is shown.\\n * This is useful for any\\n * logic that requires attachment before executing, such as putting focus on a particular DOM\\n * element. The params has one callback method 'hidePopup', which you can call at any later\\n * point to hide the popup - good if you have an 'Apply' button and you want to hide the popup\\n * after it is pressed. */\",\n      \"init?(params: ITooltipParams)\": \"/** The init(params) method is called on the component once. See below for details on the parameters. */\"\n    }\n  },\n  \"LoadCompleteEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"success\": \"boolean\", \"block\": \"RowNodeBlock\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"LoadSuccessParams\": {\n    \"meta\": {},\n    \"type\": { \"rowData\": \"any[]\", \"rowCount?\": \"number\", \"storeInfo?\": \"any\" }\n  },\n  \"SortOption\": {\n    \"meta\": {},\n    \"type\": { \"sort\": \"string\", \"column\": \"Column\" }\n  },\n  \"SortedRowNode\": {\n    \"meta\": {},\n    \"type\": { \"currentPos\": \"number\", \"rowNode\": \"RowNode\" }\n  },\n  \"SortModelItem\": {\n    \"meta\": {},\n    \"type\": { \"colId\": \"string\", \"sort\": \"string\" }\n  },\n  \"LayoutView\": {\n    \"meta\": {},\n    \"type\": {\n      \"updateLayoutClasses(layoutClass: string, params: UpdateLayoutClassesParams)\": \"void\"\n    }\n  },\n  \"LayoutCssClasses\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\n      \"AUTO_HEIGHT = 'ag-layout-auto-height'\",\n      \"NORMAL = 'ag-layout-normal'\",\n      \"PRINT = 'ag-layout-print'\"\n    ]\n  },\n  \"UpdateLayoutClassesParams\": {\n    \"meta\": {},\n    \"type\": { \"autoHeight\": \"boolean\", \"normal\": \"boolean\", \"print\": \"boolean\" }\n  },\n  \"GenericFunction\": { \"meta\": {}, \"type\": {} },\n  \"PickByTypeKeyFilter\": { \"meta\": { \"typeParams\": [\"T\", \"C\"] }, \"type\": {} },\n  \"KeysByType\": { \"meta\": { \"typeParams\": [\"T\", \"C\"] }, \"type\": {} },\n  \"ValuesByType\": { \"meta\": { \"typeParams\": [\"T\", \"C\"] }, \"type\": {} },\n  \"PickByType\": { \"meta\": { \"typeParams\": [\"T\", \"C\"] }, \"type\": {} },\n  \"MethodsOf\": { \"meta\": { \"typeParams\": [\"T\"] }, \"type\": {} },\n  \"InterfaceOf\": { \"meta\": { \"typeParams\": [\"T\"] }, \"type\": {} },\n  \"PartiallyMockedInterfaceOf\": { \"meta\": { \"typeParams\": [\"T\"] }, \"type\": {} },\n  \"CellValueChange\": {\n    \"meta\": {},\n    \"type\": {\n      \"rowPinned\": \"string | null\",\n      \"rowIndex\": \"number\",\n      \"columnId\": \"string\",\n      \"oldValue\": \"any\",\n      \"newValue\": \"any\"\n    }\n  },\n  \"LastFocusedCell\": {\n    \"meta\": {},\n    \"type\": {\n      \"rowPinned?\": \"string | null\",\n      \"rowIndex\": \"number\",\n      \"columnId\": \"string\"\n    }\n  },\n  \"ColumnSortState\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'ascending' | 'descending' | 'none'\"\n  },\n  \"PathItem\": {\n    \"meta\": {},\n    \"type\": { \"rowNode\": \"RowNode\", \"children\": \"PathItem[] | null\" }\n  },\n  \"ResolveAndRejectCallback\": { \"meta\": { \"typeParams\": [\"T\"] }, \"type\": {} },\n  \"AgPromiseStatus\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\"IN_PROGRESS\", \"RESOLVED\"]\n  },\n  \"FieldElement\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement\"\n  },\n  \"IInputField\": {\n    \"meta\": {},\n    \"type\": {\n      \"label?\": \"HTMLElement | string\",\n      \"labelWidth?\": \"number | 'flex'\",\n      \"labelSeparator?\": \"string\",\n      \"labelAlignment?\": \"LabelAlignment\",\n      \"value?\": \"any\",\n      \"width?\": \"number\"\n    }\n  },\n  \"LabelAlignment\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'left' | 'right' | 'top'\"\n  },\n  \"IAgLabel\": {\n    \"meta\": {},\n    \"type\": {\n      \"label?\": \"HTMLElement | string\",\n      \"labelWidth?\": \"number | 'flex'\",\n      \"labelSeparator?\": \"string\",\n      \"labelAlignment?\": \"LabelAlignment\"\n    }\n  },\n  \"ChangeEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"selected\": \"boolean\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ColorPickerConfig\": {\n    \"meta\": {},\n    \"type\": {\n      \"label?\": \"HTMLElement | string\",\n      \"labelWidth?\": \"number | 'flex'\",\n      \"labelSeparator?\": \"string\",\n      \"labelAlignment?\": \"LabelAlignment\",\n      \"color\": \"string\"\n    }\n  },\n  \"DialogOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"popup?\": \"boolean\",\n      \"minWidth?\": \"number | null\",\n      \"width?\": \"number | string | null\",\n      \"minHeight?\": \"number | null\",\n      \"height?\": \"number | string | null\",\n      \"centered?\": \"boolean | null\",\n      \"calculateTopBuffer?\": \"() => number\",\n      \"forcePopupParentAsOffsetParent?\": \"boolean\",\n      \"x?\": \"number | null\",\n      \"y?\": \"number | null\",\n      \"component?\": \"Component\",\n      \"hideTitleBar?\": \"boolean | null\",\n      \"closable?\": \"boolean | null\",\n      \"resizable?\": \"boolean | ResizableStructure\",\n      \"title?\": \"string | null\",\n      \"cssIdentifier?\": \"string | null\",\n      \"eWrapper?\": \"HTMLElement\",\n      \"modal?\": \"boolean\",\n      \"movable?\": \"boolean\",\n      \"alwaysOnTop?\": \"boolean\",\n      \"maximizable?\": \"boolean\"\n    },\n    \"docs\": {\n      \"forcePopupParentAsOffsetParent?\": \"/** Used for when a popup needs to be resized by an element within itself\\n * In that case, the feature will configured as `popup=false` but the offsetParent\\n * needs to be the popupParent. */\"\n    }\n  },\n  \"GroupItem\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"Component | HTMLElement\"\n  },\n  \"Align\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'start' | 'end' | 'center' | 'stretch'\"\n  },\n  \"Direction\": {\n    \"meta\": { \"isTypeAlias\": true },\n    \"type\": \"'horizontal' | 'vertical'\"\n  },\n  \"AgGroupComponentParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"title?\": \"string\",\n      \"enabled?\": \"boolean\",\n      \"suppressEnabledCheckbox?\": \"boolean\",\n      \"suppressOpenCloseIcons?\": \"boolean\",\n      \"cssIdentifier?\": \"string\",\n      \"items?\": \"GroupItem[]\",\n      \"alignItems?\": \"Align\",\n      \"direction?\": \"Direction\"\n    }\n  },\n  \"IInputRange\": {\n    \"meta\": {},\n    \"type\": {\n      \"label?\": \"HTMLElement | string\",\n      \"labelWidth?\": \"number | 'flex'\",\n      \"labelSeparator?\": \"string\",\n      \"labelAlignment?\": \"LabelAlignment\",\n      \"value?\": \"any\",\n      \"width?\": \"number\",\n      \"min?\": \"number\",\n      \"max?\": \"number\",\n      \"step?\": \"number\"\n    }\n  },\n  \"ITextInputField\": {\n    \"meta\": {},\n    \"type\": {\n      \"label?\": \"HTMLElement | string\",\n      \"labelWidth?\": \"number | 'flex'\",\n      \"labelSeparator?\": \"string\",\n      \"labelAlignment?\": \"LabelAlignment\",\n      \"value?\": \"any\",\n      \"width?\": \"number\",\n      \"allowedCharPattern?\": \"string\"\n    }\n  },\n  \"ListOption\": {\n    \"meta\": {},\n    \"type\": { \"value\": \"string\", \"text?\": \"string\" }\n  },\n  \"PanelOptions\": {\n    \"meta\": {},\n    \"type\": {\n      \"popup?\": \"boolean\",\n      \"minWidth?\": \"number | null\",\n      \"width?\": \"number | string | null\",\n      \"minHeight?\": \"number | null\",\n      \"height?\": \"number | string | null\",\n      \"centered?\": \"boolean | null\",\n      \"calculateTopBuffer?\": \"() => number\",\n      \"forcePopupParentAsOffsetParent?\": \"boolean\",\n      \"x?\": \"number | null\",\n      \"y?\": \"number | null\",\n      \"component?\": \"Component\",\n      \"hideTitleBar?\": \"boolean | null\",\n      \"closable?\": \"boolean | null\",\n      \"resizable?\": \"boolean | ResizableStructure\",\n      \"title?\": \"string | null\",\n      \"cssIdentifier?\": \"string | null\"\n    },\n    \"docs\": {\n      \"forcePopupParentAsOffsetParent?\": \"/** Used for when a popup needs to be resized by an element within itself\\n * In that case, the feature will configured as `popup=false` but the offsetParent\\n * needs to be the popupParent. */\"\n    }\n  },\n  \"VisibleChangedEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"visible\": \"boolean\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"ManagedFocusCallbacks\": {\n    \"meta\": {},\n    \"type\": {\n      \"shouldStopEventPropagation?\": \"(e: KeyboardEvent) => boolean\",\n      \"onTabKeyDown?\": \"(e: KeyboardEvent) => void\",\n      \"handleKeyDown?\": \"(e: KeyboardEvent) => void\",\n      \"onFocusIn?\": \"(e: FocusEvent) => void\",\n      \"onFocusOut?\": \"(e: FocusEvent) => void\"\n    }\n  },\n  \"PopupEventParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"originalMouseEvent?\": \"MouseEvent | Touch | null\",\n      \"mouseEvent?\": \"MouseEvent\",\n      \"touchEvent?\": \"TouchEvent\",\n      \"keyboardEvent?\": \"KeyboardEvent\"\n    }\n  },\n  \"AgPopup\": {\n    \"meta\": {},\n    \"type\": {\n      \"element\": \"HTMLElement\",\n      \"wrapper\": \"HTMLElement\",\n      \"hideFunc\": \"() => void\",\n      \"stopAnchoringPromise\": \"AgPromise<Function>\",\n      \"instanceId\": \"number\"\n    }\n  },\n  \"Rect\": {\n    \"meta\": {},\n    \"type\": {\n      \"top\": \"number\",\n      \"left\": \"number\",\n      \"right\": \"number\",\n      \"bottom\": \"number\"\n    }\n  },\n  \"DIRECTION\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\"vertical\", \"horizontal\"]\n  },\n  \"AddPopupParams\": {\n    \"meta\": {},\n    \"type\": {\n      \"modal?\": \"boolean\",\n      \"eChild\": \"any\",\n      \"closeOnEsc?\": \"boolean\",\n      \"closedCallback?\": \"(e?: MouseEvent | TouchEvent | KeyboardEvent) => void\",\n      \"click?\": \"MouseEvent | Touch | null\",\n      \"alwaysOnTop?\": \"boolean\",\n      \"afterGuiAttached?\": \"(params: IAfterGuiAttachedParams) => void\",\n      \"positionCallback?\": \"() => void\",\n      \"anchorToElement?\": \"HTMLElement\"\n    }\n  },\n  \"AddPopupResult\": {\n    \"meta\": {},\n    \"type\": {\n      \"hideFunc\": \"() => void\",\n      \"stopAnchoringPromise\": \"AgPromise<Function>\"\n    }\n  },\n  \"ITabGuard\": {\n    \"meta\": {},\n    \"type\": { \"setTabIndex(tabIndex?: string)\": \"void\" }\n  },\n  \"TooltipParentComp\": {\n    \"meta\": {},\n    \"type\": {\n      \"getTooltipParams()\": \"ITooltipParams\",\n      \"getGui()\": \"HTMLElement\"\n    }\n  },\n  \"TooltipStates\": {\n    \"meta\": { \"isEnum\": true },\n    \"type\": [\"NOTHING\", \"WAITING_TO_SHOW\", \"SHOWING\"]\n  },\n  \"TapEvent\": {\n    \"meta\": {},\n    \"type\": { \"type\": \"string\", \"touchStart\": \"Touch\" },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"LongTapEvent\": {\n    \"meta\": {},\n    \"type\": {\n      \"type\": \"string\",\n      \"touchStart\": \"Touch\",\n      \"touchEvent\": \"TouchEvent\"\n    },\n    \"docs\": { \"type\": \"/** Event identifier */\" }\n  },\n  \"VirtualListModel\": {\n    \"meta\": {},\n    \"type\": {\n      \"getRowCount()\": \"number\",\n      \"getRow(index: number)\": \"any\",\n      \"isRowSelected?(index: number)\": \"boolean | undefined\"\n    }\n  }\n}\n"}}]}}}