import { GridExportDisplayOptions, GridValidRowModel } from '@mui/x-data-grid-pro'; import type { GridControlledStateEventLookupPro, GridApiCachesPro, GridEventLookupPro } from '@mui/x-data-grid-pro/typeOverloads'; import type { GridGroupingValueGetter, GridPastedValueParser } from "../models/index.js"; import type { GridRowGroupingModel, GridAggregationModel, GridAggregationCellMeta, GridAggregationHeaderMeta, GridCellSelectionModel, Conversation } from "../hooks/index.js"; import { GridRowGroupingInternalCache } from "../hooks/features/rowGrouping/gridRowGroupingInterfaces.js"; import { GridAggregationInternalCache } from "../hooks/features/aggregation/gridAggregationInterfaces.js"; import type { GridExcelExportOptions } from "../hooks/features/export/gridExcelExportInterface.js"; import type { GridPivotModel } from "../hooks/features/pivoting/gridPivotingInterfaces.js"; export interface GridControlledStateEventLookupPremium { /** * Fired when the aggregation model changes. */ aggregationModelChange: { params: GridAggregationModel; }; /** * Fired when the row grouping model changes. */ rowGroupingModelChange: { params: GridRowGroupingModel; }; /** * Fired when the selection state of one or multiple cells change. */ cellSelectionChange: { params: GridCellSelectionModel; }; /** * Fired when the state of the Excel export task changes */ excelExportStateChange: { params: 'pending' | 'finished'; }; /** * Fired when the pivot model changes. */ pivotModelChange: { params: GridPivotModel; }; pivotModeChange: { params: boolean; }; pivotPanelOpenChange: { params: boolean; }; /** * Fired when the AI Assistant conversation state changes. */ aiAssistantConversationsChange: { params: Conversation[]; }; /** * Fired when the AI Assistant active conversation index changes. */ aiAssistantActiveConversationIndexChange: { params: number; }; } interface GridEventLookupPremium extends GridEventLookupPro { /** * Fired when the clipboard paste operation starts. */ clipboardPasteStart: { params: { data: string[][]; }; }; /** * Fired when the clipboard paste operation ends. */ clipboardPasteEnd: {}; } export interface GridColDefPremium { /** * If `true`, the cells of the column can be aggregated based. * @default true */ aggregable?: boolean; /** * Limit the aggregation function usable on this column. * By default, the column will have all the aggregation functions that are compatible with its type. */ availableAggregationFunctions?: string[]; /** * Function that transforms a complex cell value into a key that be used for grouping the rows. * Not supported with the server-side row grouping. Use `dataSource.getGroupKey()` instead. * @returns {GridKeyValue | null | undefined} The cell key. */ groupingValueGetter?: GridGroupingValueGetter; /** * Function that takes the clipboard-pasted value and converts it to a value used internally. * @returns {V} The converted value. */ pastedValueParser?: GridPastedValueParser; /** * If `false`, the column will not be available for pivoting in the pivot panel. * @default true */ pivotable?: boolean; } export interface GridRenderCellParamsPremium { aggregation?: GridAggregationCellMeta; } export interface GridColumnHeaderParamsPremium { aggregation?: GridAggregationHeaderMeta; } export interface GridApiCachesPremium extends GridApiCachesPro { rowGrouping: GridRowGroupingInternalCache; aggregation: GridAggregationInternalCache; } declare module '@mui/x-data-grid-pro' { interface GridEventLookup extends GridEventLookupPremium {} interface GridControlledStateEventLookup extends GridControlledStateEventLookupPro, GridControlledStateEventLookupPremium {} interface GridRenderCellParams extends GridRenderCellParamsPremium {} interface GridColumnHeaderParams extends GridColumnHeaderParamsPremium {} interface GridApiCaches extends GridApiCachesPremium {} interface GridToolbarExportProps { excelOptions?: GridExcelExportOptions & GridExportDisplayOptions; } interface GridToolbarProps { excelOptions?: GridExcelExportOptions & GridExportDisplayOptions; } } declare module '@mui/x-data-grid-pro/internals' { interface GridApiCaches extends GridApiCachesPremium {} interface GridBaseColDef extends GridColDefPremium {} } export {};