import type { BaseCellEditor, BaseDate, BaseDateParams, BaseFilter, BaseFilterParams, BaseFloatingFilter, BaseMenuItem, BaseMenuItemParams, BaseToolPanelParams, FilterDisplayParams, FloatingFilterDisplayParams, ICellEditorParams, ICellRendererParams, IColumnSelectionLabelRendererParams, IDetailCellRendererParams, IDragAndDropImageParams, IExportingOverlayParams, IFilter, IFloatingFilterParams, IGroupCellRendererParams, IHeaderGroupParams, IHeaderParams, ILoadingCellRendererParams, ILoadingOverlayParams, INoMatchingRowsOverlayParams, INoRowsOverlayParams, IOverlayParams, IStatusPanelParams, ITooltipParams, SharedFilterUi } from 'ag-grid-community'; /** Props provided to custom cell editor components */ export interface CustomCellEditorProps extends ICellEditorParams { /** The value in the cell when editing started. May be `null` or `undefined` — for example on group rows or * when the `field` is absent from the row data; the component must handle this. */ initialValue: TValue | null | undefined; /** The current value for the editor. May be `null` or `undefined` if the editor has been cleared; the * component must handle this. */ value: TValue | null | undefined; /** Callback that should be called every time the value in the editor changes. */ onValueChange: (value: TValue | null | undefined) => void; } /** Props provided to custom date components */ export interface CustomDateProps extends BaseDateParams { /** The current date for the component. */ date: Date | null; /** Callback that should be called every time the date in the component changes. */ onDateChange: (date: Date | null) => void; } /** Props provided to custom filter components */ export interface CustomFilterProps extends BaseFilterParams { /** The current filter model for the component. */ model: TModel | null; /** Callback that should be called every time the model in the component changes. */ onModelChange: (model: TModel | null) => void; /** * Callback that can be optionally called every time the filter UI changes. * The grid will respond with emitting a FilterModifiedEvent. * Apart from emitting the event, the grid takes no further action. */ onUiChange: () => void; } /** Props provided to custom filter components when `enableFilterHandlers = true` */ export interface CustomFilterDisplayProps extends FilterDisplayParams { } /** Props provided to custom floating filter components */ export interface CustomFloatingFilterProps

extends IFloatingFilterParams { /** The current filter model for the component. */ model: TModel | null; /** Callback that should be called every time the model in the component changes. */ onModelChange: (model: TModel | null) => void; } /** Props provided to custom floating filter components when `enableFilterHandlers = true` */ export interface CustomFloatingFilterDisplayProps extends FloatingFilterDisplayParams { } /** Props provided to custom tool panel components */ export interface CustomToolPanelProps extends BaseToolPanelParams { /** * The current state for the component (used in grid state). * Initially set to the same value as `initialState` */ state: TState | undefined; /** * If using grid state, callback that should be called every time the state in the component changes. * If not using grid state, not required. */ onStateChange: (model: TState | undefined) => void; } /** Props provided to custom menu item components */ export interface CustomMenuItemProps extends BaseMenuItemParams { /** The active status of the item (is it currently hovered with the mouse, or navigated to via the keyboard). */ active: boolean; /** If the item is a sub menu, whether it is currently opened or closed. */ expanded: boolean; /** Callback that should be called every time the active status is updated (if providing custom behaviour). */ onActiveChange: (active: boolean) => void; } /** Props provided to custom Drag and Drop Image components */ export interface CustomDragAndDropImageProps extends IDragAndDropImageParams { /** The label provided by the grid about the item being dragged. */ label: string; /** The name of the icon provided by the grid about the current drop target. */ icon: string | null; /** `true` if the grid is attempting to scroll horizontally while dragging. */ shake: boolean; } export interface CustomInnerHeaderProps extends IHeaderParams { } export interface CustomInnerHeaderGroupProps extends IHeaderGroupParams { } /** Props provided to custom overlay components */ export type CustomOverlayProps = IOverlayParams; /** Props provided to custom loading overlay component */ export interface CustomLoadingOverlayProps extends ILoadingOverlayParams { } /** Props provided to custom exporting overlay component */ export interface CustomExportingOverlayProps extends IExportingOverlayParams { } /** Props provided to custom no-rows overlay component */ export interface CustomNoRowsOverlayProps extends INoRowsOverlayParams { } /** Props provided to custom no-matching-rows overlay component */ export interface CustomNoMatchingRowsOverlayProps extends INoMatchingRowsOverlayParams { } /** Props provided to custom status panel components */ export interface CustomStatusPanelProps extends IStatusPanelParams { } /** Props provided to custom cell renderer components */ export interface CustomCellRendererProps extends ICellRendererParams { } /** Props provided to custom column selection label renderer components. */ export interface CustomColumnSelectionLabelProps extends IColumnSelectionLabelRendererParams { } /** Props provided to custom detail cell renderer components */ export interface CustomDetailCellRendererProps extends IDetailCellRendererParams { } /** Props provided to custom group cell renderer components */ export interface CustomGroupCellRendererProps extends IGroupCellRendererParams { } /** Props provided to custom header components */ export interface CustomHeaderProps extends IHeaderParams { } /** Props provided to custom header group components */ export interface CustomHeaderGroupProps extends IHeaderGroupParams { } /** Props provided to custom loading cell renderer components */ export interface CustomLoadingCellRendererProps extends ILoadingCellRendererParams { } /** Props provided to custom tooltip components */ export interface CustomTooltipProps extends ITooltipParams { } /** Callbacks for custom cell editor components */ export interface CustomCellEditorCallbacks extends BaseCellEditor { } /** Callbacks for custom date components */ export interface CustomDateCallbacks extends BaseDate { } /** Callbacks for custom filter components */ export interface CustomFilterCallbacks extends BaseFilter { } /** Callbacks for custom filter components when using `enableFilterHandlers = true` */ export interface CustomFilterDisplayCallbacks extends SharedFilterUi { } /** Callbacks for custom floating filter components */ export interface CustomFloatingFilterCallbacks extends BaseFloatingFilter { } /** Callbacks for custom menu item components */ export interface CustomMenuItemCallbacks extends BaseMenuItem { } /** Hook to allow custom cell editor component callbacks to be provided to the grid */ export declare function useGridCellEditor(callbacks: CustomCellEditorCallbacks): void; /** Hook to allow custom date component callbacks to be provided to the grid */ export declare function useGridDate(callbacks: CustomDateCallbacks): void; /** Hook to allow custom filter component callbacks to be provided to the grid */ export declare function useGridFilter(callbacks: CustomFilterCallbacks): void; /** Hook to allow custom filter component callbacks to be provided to the grid when using `enableFilterHandlers = true` */ export declare function useGridFilterDisplay(callbacks: CustomFilterDisplayCallbacks): void; /** Hook to allow custom floating filter component callbacks to be provided to the grid */ export declare function useGridFloatingFilter(callbacks: CustomFloatingFilterCallbacks): void; /** Hook to allow custom menu item component callbacks to be provided to the grid */ export declare function useGridMenuItem(callbacks: CustomMenuItemCallbacks): void;