@progress/kendo-react-pivotgrid
Version:
React PivotGrid (also called Pivot Table) can be data-bound to an OLAP service and customized extensively. KendoReact PivotGrid package
1,387 lines (1,318 loc) • 65.6 kB
text/typescript
/**
* @license
*-------------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the package root for more information
*-------------------------------------------------------------------------------------------
*/
import { Aggregate } from '@progress/kendo-pivotgrid-common';
import { AggregateType } from '@progress/kendo-pivotgrid-common';
import { averageAggregate } from '@progress/kendo-pivotgrid-common';
import { AxisDataItem } from '@progress/kendo-pivotgrid-common';
import { AxisRow } from '@progress/kendo-pivotgrid-common';
import { ButtonProps } from '@progress/kendo-react-buttons';
import { ChipListProps } from '@progress/kendo-react-buttons';
import { ChipProps } from '@progress/kendo-react-buttons';
import { ColumnMenuFormProps } from '@progress/kendo-react-data-tools';
import { ColumnMenuItemProps } from '@progress/kendo-react-data-tools';
import { ColumnMenuProps } from '@progress/kendo-react-data-tools';
import { createAggregate } from '@progress/kendo-pivotgrid-common';
import { CustomComponent } from '@progress/kendo-react-common';
import { Dimension } from '@progress/kendo-pivotgrid-common';
import { DimensionField } from '@progress/kendo-pivotgrid-common';
import { FieldProps } from '@progress/kendo-react-form';
import { FilterDescriptor } from '@progress/kendo-data-query';
import { FormElementProps } from '@progress/kendo-react-form';
import { FormProps } from '@progress/kendo-react-form';
import { FormRenderProps } from '@progress/kendo-react-form';
import { HierarchyField } from '@progress/kendo-pivotgrid-common';
import { IconProps } from '@progress/kendo-react-common';
import { KendoMouse } from '@progress/kendo-react-common';
import { KendoMouseEvent } from '@progress/kendo-react-common';
import { KPIField } from '@progress/kendo-pivotgrid-common';
import { KPIMeasureField } from '@progress/kendo-pivotgrid-common';
import { LabelProps } from '@progress/kendo-react-labels';
import { LevelField } from '@progress/kendo-pivotgrid-common';
import { maxAggregate } from '@progress/kendo-pivotgrid-common';
import { Measure } from '@progress/kendo-pivotgrid-common';
import { MeasureField } from '@progress/kendo-pivotgrid-common';
import { Member } from '@progress/kendo-pivotgrid-common';
import { MemberField } from '@progress/kendo-pivotgrid-common';
import { minAggregate } from '@progress/kendo-pivotgrid-common';
import { PIVOT_CONFIGURATOR_ACTION } from '@progress/kendo-pivotgrid-common';
import { PivotDataItem } from '@progress/kendo-pivotgrid-common';
import { PivotGridAxis } from '@progress/kendo-pivotgrid-common';
import { PivotGridConfiguratorState } from '@progress/kendo-pivotgrid-common';
import { PivotGridField } from '@progress/kendo-pivotgrid-common';
import * as React_2 from 'react';
import { SortDescriptor } from '@progress/kendo-data-query';
import { sumAggregate } from '@progress/kendo-pivotgrid-common';
import { SvgIconProps } from '@progress/kendo-react-common';
import { TreeViewProps } from '@progress/kendo-react-treeview';
import { Tuple } from '@progress/kendo-pivotgrid-common';
export { Aggregate }
export { AggregateType }
export { averageAggregate }
export { AxisDataItem }
export { AxisRow }
export { createAggregate }
/**
* Generates suitable data for Charting visualization.
*
* @param rows - The PivotGrid's rows prop.
* @param columns - The PivotGrid's columns prop.
* @param data - The PivotGrid's data prop.
* @returns - Suitable data for Charting visualization.
*/
export declare const dataCells: (rows?: Tuple[], columns?: Tuple[], data?: PivotDataItem[]) => {
row: string[];
cells: PivotDataItem[];
}[];
export { Dimension }
export { DimensionField }
declare enum EXTENDED_CONFIGURATOR_ACTION {
toggleExpansion = "PIVOT_CONFIGURATOR_ACTION_TOGGLE_EXPANSION"
}
export { HierarchyField }
export { KPIField }
export { KPIMeasureField }
export { LevelField }
export { maxAggregate }
export { Measure }
export { MeasureField }
export { Member }
export { MemberField }
export { minAggregate }
declare type PIVOT_CONFIGURATOR_ACTION_TYPE = PIVOT_CONFIGURATOR_ACTION | EXTENDED_CONFIGURATOR_ACTION;
export { PivotDataItem }
/**
* Represents the [KendoReact PivotGrid component]({% slug api_pivotgrid_pivotgridprops %}).
*/
export declare const PivotGrid: React_2.ForwardRefExoticComponent<PivotGridProps & React_2.RefAttributes<PivotGridHandle | null>>;
/**
* Represents the event arguments of the [`onColumnAxesChange`]({% slug api_pivotgrid_pivotgridprops %}#toc-oncolumnaxeschange) and [`onRowAxesChange`]({% slug api_pivotgrid_pivotgridprops %}#toc-onrowaxeschange) callbacks of the [`PivotGrid`]({% slug api_pivotgrid_pivotgrid %}) component.
*/
export declare interface PivotGridAxesChangeEvent {
/**
* The new axes configuration value.
*/
value: PivotGridAxis[];
/**
* The handle of the PivotGrid component.
*/
target: PivotGridHandle | null;
/**
* The DOM event that triggered the change.
*/
syntheticEvent: React.SyntheticEvent;
}
/**
* Represents the [KendoReact PivotGridAxesEditor component]({% slug api_pivotgrid_pivotgridaxeseditorprops %}).
*/
export declare const PivotGridAxesEditor: React_2.ForwardRefExoticComponent<PivotGridAxesEditorProps & React_2.RefAttributes<PivotGridAxesEditorHandle>>;
/**
* Represents the object which is passed to the [`ref`](https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom) callback of the PivotGridAxesEditor component.
*/
export declare interface PivotGridAxesEditorHandle {
/**
* The properties passed to the PivotGridAxesEditor component.
*/
props: PivotGridAxesEditorProps;
/**
* The DOM element of the PivotGridAxesEditor component.
*/
element: HTMLDivElement | null;
}
/**
* Represents the props of the [KendoReact PivotGridAxesEditor component]({% slug api_pivotgrid_pivotgridaxeseditor %}).
*/
export declare interface PivotGridAxesEditorProps extends FieldProps {
/**
* Represents the `value` of the AxesEditor.
*
* The `value` is an array of [PivotGridAxis]({% slug api_pivotgrid_pivotgridaxis %})
*/
value: PivotGridAxis[];
/**
* Indicates which of the three available axes are represented by the editor:
* - columnAxes
* - rowAxes
* - measureAxes
*/
field: string;
/**
* Overrides the default `chipList` component.
*
* The default component is: [KendoReactChipList]({% slug api_buttons_chiplist %}).
*/
chipList?: CustomComponent<ChipListProps>;
/**
* Sets the `className` props of the ClipList component.
*/
className?: string;
}
export { PivotGridAxis }
/**
* Represents the [KendoReact PivotGridAxisEditor component]({% slug api_pivotgrid_pivotgridaxiseditorprops %}).
*/
export declare const PivotGridAxisEditor: React_2.ForwardRefExoticComponent<PivotGridAxisEditorProps & React_2.RefAttributes<PivotGridAxisEditorHandle | null>>;
/**
* Represents the object which is passed to the [`ref`](https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom) callback of the PivotGridAxisEditor component.
*/
export declare interface PivotGridAxisEditorHandle {
/**
* The properties passed to the PivotGridAxisEditor component.
*/
props: PivotGridAxisEditorProps;
/**
* The DOM element of the PivotGridAxisEditor component.
*/
element: HTMLSpanElement | null;
}
/**
* Represents the props of the [KendoReact PivotGridAxisEditor component]({% slug api_pivotgrid_pivotgridaxiseditor %}).
*/
export declare interface PivotGridAxisEditorProps extends ChipProps {
/**
* Represents the `dataItem` of the AxisEditor.
*
* The `dataItem` is a single [PivotGridAxis]({% slug api_pivotgrid_pivotgridaxis %}) object.
*/
dataItem: PivotGridAxis;
/**
* Overrides the default `chip` component.
*
* The default component is: [KendoReactChip]({% slug api_buttons_chip %}).
*/
chip?: CustomComponent<ChipProps>;
/**
* Overrides the default `dropClue` component.
*
* The default component is: `(props) => <div className="k-grouping-dropclue" style={{ position: 'relative', zIndex: 10000 }} {...props}/>`
*/
dropClue?: CustomComponent<any>;
/**
* Overrides the default `columnMenuTextColumn` component.
*
* The default component is: [KendoReactColumnMenuTextColumn]({% slug api_data-tools_columnmenutextcolumn %}).
*/
columnMenuTextColumn?: CustomComponent<ColumnMenuProps>;
/**
* Overrides the default `filterFieldsEditor` component.
*
* The default component is: [PivotGridAxisFilterFieldsEditor]({% slug api_pivotgrid_pivotgridaxisfilterfieldseditor%}).
*/
filterFieldsEditor?: CustomComponent<PivotGridAxisFilterFieldsEditorProps>;
}
/**
* Represents the event arguments of the `PivotGridAxisFilterField` expand event.
*/
export declare interface PivotGridAxisFilterFieldExpandEvent {
/**
* The handle of the component that triggered the event.
*/
target: PivotGridAxisFilterFieldsEditorHandle;
/**
* The field that was expanded.
*/
value: PivotGridField;
/**
* The DOM event that triggered the expand.
*/
syntheticEvent: React_2.SyntheticEvent;
}
/**
* Represents the [KendoReact PivotGridAxisFilterFieldsEditor component]({% slug api_pivotgrid_pivotgridaxisfilterfieldseditorprops %}).
*/
export declare const PivotGridAxisFilterFieldsEditor: React_2.ForwardRefExoticComponent<PivotGridAxisFilterFieldsEditorProps & React_2.RefAttributes<PivotGridAxisFilterFieldsEditorHandle | null>>;
/**
* Represents the object which is passed to the [`ref`](https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom) callback of the PivotGridAxisFilterFieldsEditor component.
*/
export declare interface PivotGridAxisFilterFieldsEditorHandle {
/**
* The properties passed to the PivotGridAxisFilterFieldsEditor component.
*/
props: PivotGridAxisFilterFieldsEditorProps;
/**
* The DOM element of the PivotGridAxisFilterFieldsEditor component.
*/
element: HTMLDivElement | null;
}
/**
* Represents the props of the [KendoReact PivotGridAxisFilterFieldsEditor component]({% slug api_pivotgrid_pivotgridaxisfilterfieldseditor %}).
*/
export declare interface PivotGridAxisFilterFieldsEditorProps {
/**
* Sets the `className` property of the top-most element of the PivotGridAxisFilterFieldsEditor in addition to the default `k-columnmenu-item-wrapper` class.
*/
className?: string;
/**
* Sets the `id` property of the top-most element of the PivotGridAxisFilterFieldsEditor.
*/
id?: string;
/**
* Sets the `tabIndex` property of the top-most element of the PivotGridAxisFilterFieldsEditor.
*/
tabIndex?: number;
/**
* Sets the `style` property of the top-most element of the PivotGridAxisFilterFieldsEditor.
*/
style?: React_2.CSSProperties;
/**
* Sets the `data` of the PivotGridAxisFilterFieldsEditor.
*
* The `data` represents all fields available for filtering.
*/
data?: PivotGridField[];
/**
* Represents the `dataItem` of the AxisEditor.
*
* The `dataItem` is a single [PivotGridAxis]({% slug api_pivotgrid_pivotgridaxis %}) object.
*/
dataItem: PivotGridAxis;
/**
* Represents the initial filter value before additional operations are executed.
*/
defaultFilter?: FilterDescriptor;
/**
* Indicates which of the three available axes are represented by the editor:
* - columnAxes
* - rowAxes
* - measureAxes
*/
axes: string;
/**
* Overrides the default `columnMenuItem` component.
*
* The default component is: [KendoReactColumnMenuItem]({% slug api_data-tools_columnmenuitem %}).
*/
columnMenuItem?: CustomComponent<ColumnMenuItemProps>;
/**
* Overrides the default `columnMenuForm` component.
*
* The default component is: [KendoReactColumnMenuForm]({% slug api_data-tools_columnmenuform %}).
*/
columnMenuForm?: CustomComponent<ColumnMenuFormProps>;
/**
* Overrides the default `resetButton` component.
*
* The default component is: [KendoReactButton]({% slug api_buttons_button %}).
*/
resetButton?: CustomComponent<ButtonProps>;
/**
* Overrides the default `applyButton` component.
*
* The default component is: [KendoReactButton]({% slug api_buttons_button %}).
*/
applyButton?: CustomComponent<ButtonProps>;
/**
* Overrides the default `treeView` component.
*
* The default component is: [KendoReactTreeView]({% slug api_treeview_treeview %}).
*/
treeView?: CustomComponent<TreeViewProps>;
/**
* Overrides the default `treeView` component.
*
* The default component is: `() => <Skeleton shape={'rectangle'} style={{height: '20px', width:'calc(100% - 16px)', margin: 8}}/>`.
*/
noData?: CustomComponent<any>;
}
/**
* Represents the event arguments of the `PivotGridAxisFilterFields` expand-change event.
*/
export declare interface PivotGridAxisFilterFieldsExpandChangeEvent {
/**
* The handle of the component that triggered the event.
*/
target: PivotGridAxisFilterFieldsEditorHandle;
/**
* The expand state value.
*/
value: boolean;
/**
* The DOM event that triggered the change.
*/
syntheticEvent: React_2.SyntheticEvent;
}
/**
* Represents the [KendoReact PivotGridCell component]({% slug api_pivotgrid_pivotgridcellprops %}).
*/
export declare const PivotGridCell: React_2.ForwardRefExoticComponent<PivotGridCellProps & React_2.RefAttributes<PivotGridCellHandle | null>>;
/**
* Represents the object which is passed to the [`ref`](https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom) callback of the PivotGridCell component.
*/
export declare interface PivotGridCellHandle {
/**
* The properties passed to the PivotGridCell component.
*/
props: PivotGridCellProps;
/**
* The DOM element of the PivotGridCell component.
*/
element: HTMLTableCellElement | null;
}
/**
* Represents the props of the [KendoReact PivotGridCell component]({% slug api_pivotgrid_pivotgridcell %}).
*/
export declare interface PivotGridCellProps extends KendoMouse<PivotGridCellHandle, HTMLTableCellElement> {
/**
* Represents the `dataItem` of the PivotGridCell.
*
* The `dataItem` is a single [PivotDataItem]({% slug api_pivotgrid_pivotdataitem %}) object.
*/
dataItem: PivotDataItem;
/**
* Sets the `id` property of the top-most element of the PivotGridCell.
*/
id?: string;
/**
* Sets the `className` property of the top-most element of the PivotGridCell in addition to the default `k-pivotgrid-cell` class.
*/
className?: string;
/**
* Sets the `tabIndex` property of the top-most element of the PivotGridCell.
*/
tabIndex?: number;
/**
* Sets the `children` property of the top-most element of the PivotGridCell.
*/
children?: React_2.ReactNode;
/**
* Sets the `style` property of the top-most element of the PivotGridCell.
*/
style?: React_2.CSSProperties;
/**
* Represents the columns `path` leading to the current cell.
*/
columnPath?: string[];
/**
* Represents the row `path` leading to the current cell.
*/
rowPath?: string[];
/**
* Indicates if the current cell represents a `total` value.
*/
total?: boolean;
/**
* Sets the `role` property of the top-most element of the PivotGridCell.
*/
role?: string;
/**
* Sets the `aria-describedby` property of the top-most element of the PivotGridCell.
*/
ariaDescribedby?: string;
/**
* Fires when the user clicks the PivotGridCell.
*/
onClick?: (args: any) => void;
/**
* Fires when the user double-clicks the PivotGridCell.
*/
onDoubleClick?: (args: any) => void;
/**
* Fires when the user presses a mouse button while the cursor is over the PivotGridCell.
*/
onMouseDown?: (args: any) => void;
/**
* Fires when the cursor enters the PivotGridCell area.
*/
onMouseEnter?: (args: any) => void;
/**
* Fires when the cursor leaves the PivotGridCell area.
*/
onMouseLeave?: (args: any) => void;
/**
* Fires when the cursor moves within the PivotGridCell area.
*/
onMouseMove?: (args: any) => void;
/**
* Fires when the cursor moves outside the PivotGridCell area.
*/
onMouseOut?: (args: any) => void;
/**
* Fires when the cursor moves over the PivotGridCell area.
*/
onMouseOver?: (args: any) => void;
/**
* Fires when the user releases a mouse button while the cursor is over the PivotGridCell.
*/
onMouseUp?: (args: any) => void;
}
/**
* Represents the [KendoReact PivotGridColumn component]({% slug api_pivotgrid_pivotgridcolumnprops %}).
*/
export declare const PivotGridColumn: React_2.ForwardRefExoticComponent<PivotGridColumnProps & React_2.RefAttributes<PivotGridColumnHandle | null>>;
/**
* Represents the object which is passed to the [`ref`](https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom) callback of the PivotGridColumn component.
*/
export declare interface PivotGridColumnHandle {
/**
* The properties passed to the PivotGridColumn component.
*/
props: PivotGridColumnProps;
/**
* The DOM element of the PivotGridColumn component.
*/
element: HTMLTableColElement | null;
}
/**
* Represents the props of the [KendoReact PivotGridColumn component]({% slug api_pivotgrid_pivotgridcolumn %}).
*/
export declare interface PivotGridColumnProps extends KendoMouse<PivotGridColumnHandle, HTMLTableColElement> {
/**
* Sets the `className` property of the top-most element of the PivotGridColumn in addition to the default `k-pivotgrid-row` class.
*/
className?: string;
/**
* Sets the `id` property of the top-most element of the PivotGridColumn.
*/
id?: string;
/**
* Sets the `children` property of the top-most element of the PivotGridColumn.
*/
children?: React_2.ReactNode;
/**
* Sets the `style` property of the top-most element of the PivotGridColumn.
*/
style?: React_2.CSSProperties;
/**
* Sets the `tabIndex` property of the top-most element of the PivotGridColumn.
*/
tabIndex?: number;
/**
* Represents the `path` leading to the current `column`.
*/
path?: string[];
/**
* Fires when the user clicks the PivotGridColumn.
*/
onClick?: (args: any) => void;
/**
* Fires when the user double-clicks the PivotGridColumn.
*/
onDoubleClick?: (args: any) => void;
/**
* Fires when the user presses a mouse button while the cursor is over the PivotGridColumn.
*/
onMouseDown?: (args: any) => void;
/**
* Fires when the cursor enters the PivotGridColumn area.
*/
onMouseEnter?: (args: any) => void;
/**
* Fires when the cursor leaves the PivotGridColumn area.
*/
onMouseLeave?: (args: any) => void;
/**
* Fires when the cursor moves within the PivotGridColumn area.
*/
onMouseMove?: (args: any) => void;
/**
* Fires when the cursor moves outside the PivotGridColumn area.
*/
onMouseOut?: (args: any) => void;
/**
* Fires when the cursor moves over the PivotGridColumn area.
*/
onMouseOver?: (args: any) => void;
/**
* Fires when the user releases a mouse button while the cursor is over the PivotGridColumn.
*/
onMouseUp?: (args: any) => void;
}
/**
* Represents the [KendoReact PivotGridConfigurator component]({% slug api_pivotgrid_pivotgridconfiguratorprops %}).
*/
export declare const PivotGridConfigurator: React_2.ForwardRefExoticComponent<PivotGridConfiguratorProps & React_2.RefAttributes<PivotGridConfiguratorHandle | null>>;
/**
* Represents the available PivotGridConfigurator actions.
*
* Can be one of:
* - [PivotGridConfiguratorSelectionAction]({% slug api_pivotgrid_pivotgridconfiguratorselectionaction %})
* - [PivotGridConfiguratorMultipleSelectionAction]({% slug api_pivotgrid_pivotgridconfiguratormultipleselectionaction %})
* - [PivotGridConfiguratorRemoveAction]({% slug api_pivotgrid_pivotgridconfiguratorremoveaction %})
* - [PivotGridConfiguratorSortAction]({% slug api_pivotgrid_pivotgridconfiguratorsortaction %})
* - [PivotGridConfiguratorFilterAction]({% slug api_pivotgrid_pivotgridconfiguratorfilteraction %})
* - [PivotConfiguratorDragAction]({% slug api_pivotgrid_pivotconfiguratordragaction %})
* - [PivotConfiguratorDropAction]({% slug api_pivotgrid_pivotconfiguratordropaction %})
* - [PivotGridConfiguratorDropZoneAction]({% slug api_pivotgrid_pivotgridconfiguratordropzoneaction %})
* - [PivotGridConfiguratorDropTargetAction]({% slug api_pivotgrid_pivotgridconfiguratordroptargetaction %})
* - [PivotGridConfiguratorDropDirectionAction]({% slug api_pivotgrid_pivotgridconfiguratordropdirectionaction %})
* - [PivotGridConfiguratorExpandAction]({% slug api_pivotgrid_pivotgridconfiguratorexpandaction %})
*
* The following `falsy` values will be ignored:
* - `null`
* - `false`
* - `undefined`
*
* @hidden
*/
declare interface PivotGridConfiguratorAction {
type: PIVOT_CONFIGURATOR_ACTION_TYPE;
payload: any;
override?: PivotGridConfiguratorEditorState;
}
/**
* Represents the event arguments of the [`onColumnAxesChange`]({% slug api_pivotgrid_pivotgridconfiguratorprops %}#toc-oncolumnaxeschange), [`onRowAxesChange`]({% slug api_pivotgrid_pivotgridconfiguratorprops %}#toc-onrowaxeschange) and [`onMeasureAxesChange`]({% slug api_pivotgrid_pivotgridconfiguratorprops %}#toc-onmeasureaxeschange) callbacks of the [`PivotGridConfigurator`]({% slug api_pivotgrid_pivotgridconfigurator %}) component.
*/
export declare interface PivotGridConfiguratorAxesChangeEvent {
/**
* The new axes configuration value.
*/
value: PivotGridAxis[];
/**
* The handle of the PivotGridConfigurator component.
*/
target: PivotGridConfiguratorHandle | null;
/**
* The DOM event that triggered the change.
*/
syntheticEvent: React.SyntheticEvent;
}
/**
* Represents the [KendoReact PivotGridConfiguratorButton component]({% slug api_pivotgrid_pivotgridconfiguratorbuttonprops %}).
*/
export declare const PivotGridConfiguratorButton: React_2.ForwardRefExoticComponent<PivotGridConfiguratorButtonProps & React_2.RefAttributes<PivotGridConfiguratorButtonHandle | null>>;
/**
* Represents the object which is passed to the [`ref`](https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom) callback of the PivotGridConfiguratorButton component.
*/
export declare interface PivotGridConfiguratorButtonHandle {
/**
* The properties passed to the PivotGridConfiguratorButton component.
*/
props: PivotGridConfiguratorButtonProps;
/**
* The DOM element of the PivotGridConfiguratorButton component.
*/
element: HTMLDivElement | null;
}
/**
* Represents the props of the [KendoReact PivotGridConfiguratorButton component]({% slug api_pivotgrid_pivotgridconfiguratorbutton %}).
*/
export declare interface PivotGridConfiguratorButtonProps extends KendoMouse<PivotGridConfiguratorButtonHandle, HTMLDivElement> {
/**
* Sets the `className` property of the top-most element of the PivotGridConfiguratorButton in addition to the default `k-pivotgrid-configurator-button` class.
*/
className?: string;
/**
* Sets the `id` property of the top-most element of the PivotGridConfiguratorButton.
*/
id?: string;
/**
* Sets the `tabIndex` property of the top-most element of the PivotGridConfiguratorButton.
*/
tabIndex?: number;
/**
* Sets the `style` property of the top-most element of the PivotGridConfiguratorButton.
*/
style?: React_2.CSSProperties;
/**
* Overrides the default `icon` component.
*
* The default component is: [KendoReactIcon]({% slug api_common_icon %}).
*/
icon?: CustomComponent<IconProps & SvgIconProps>;
/**
* Fires when the user clicks the PivotGridConfiguratorButton.
*/
onClick?: (args: any) => void;
/**
* Fires when the user double-clicks the PivotGridConfiguratorButton.
*/
onDoubleClick?: (args: any) => void;
/**
* Fires when the user presses a mouse button while the cursor is over the PivotGridConfiguratorButton.
*/
onMouseDown?: (args: any) => void;
/**
* Fires when the cursor enters the PivotGridConfiguratorButton area.
*/
onMouseEnter?: (args: any) => void;
/**
* Fires when the cursor leaves the PivotGridConfiguratorButton area.
*/
onMouseLeave?: (args: any) => void;
/**
* Fires when the cursor moves within the PivotGridConfiguratorButton area.
*/
onMouseMove?: (args: any) => void;
/**
* Fires when the cursor moves outside the PivotGridConfiguratorButton area.
*/
onMouseOut?: (args: any) => void;
/**
* Fires when the cursor moves over the PivotGridConfiguratorButton area.
*/
onMouseOver?: (args: any) => void;
/**
* Fires when the user releases a mouse button while the cursor is over the PivotGridConfiguratorButton.
*/
onMouseUp?: (args: any) => void;
}
/**
* Represents the [KendoReact PivotGridConfiguratorEditor component]({% slug api_pivotgrid_pivotgridconfiguratoreditorprops %}).
*/
export declare const PivotGridConfiguratorEditor: React_2.ForwardRefExoticComponent<PivotGridConfiguratorEditorProps & React_2.RefAttributes<PivotGridConfiguratorEditorHandle>>;
/**
* Represents the object which is passed to the [`ref`](https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom) callback of the PivotGridConfiguratorEditor component.
*/
export declare interface PivotGridConfiguratorEditorHandle {
/**
* The properties passed to the PivotGridConfiguratorEditor component.
*/
props: PivotGridConfiguratorEditorProps;
/**
* The current state of the PivotGridConfiguratorEditor component.
*/
state: PivotGridConfiguratorState;
/**
* The DOM element of the PivotGridConfiguratorEditor component.
*/
element: HTMLDivElement;
}
/**
* Represents the props of the [KendoReact PivotGridConfiguratorEditor component]({% slug api_pivotgrid_pivotgridconfiguratoreditor %}).
*/
export declare interface PivotGridConfiguratorEditorProps extends FormRenderProps {
/**
* Sets the `data` of the PivotGridConfiguratorEditor.
*
* The `data` represents all fields available in the configurator.
*/
data: PivotGridField[];
/**
* Renders the PivotGridConfiguratorEditor in `horizontal` orientation.
*
* @default false
*/
horizontal?: boolean;
/**
* Overrides the default `fieldsLabel` component.
*
* The default component is: [KendoReactLabel]({% slug api_labels_label %}).
*/
fieldsLabel?: CustomComponent<FieldProps & LabelProps>;
/**
* Overrides the default `fieldsEditor` component.
*
* The default component is: [PivotGridFieldsEditor]({% slug api_pivotgrid_pivotgridfieldseditor %}).
*/
fieldsEditor?: CustomComponent<PivotGridFieldsEditorProps>;
/**
* Overrides the default `columnAxesLabel` component.
*
* The default component is: [KendoReactLabel]({% slug api_labels_label %}).
*/
columnAxesLabel?: CustomComponent<FieldProps & LabelProps>;
/**
* Overrides the default `columnAxesEditor` component.
*
* The default component is: [PivotGridAxesEditor]({% slug api_pivotgrid_pivotgridaxeseditor %}).
*/
columnAxesEditor?: CustomComponent<PivotGridAxesEditorProps>;
/**
* Overrides the default `rowAxesLabel` component.
*
* The default component is: [KendoReactLabel]({% slug api_labels_label %}).
*/
rowAxesLabel?: CustomComponent<FieldProps & LabelProps>;
/**
* Overrides the default `rowAxesEditor` component.
*
* The default component is: [PivotGridAxesEditor]({% slug api_pivotgrid_pivotgridaxeseditor %}).
*/
rowAxesEditor?: CustomComponent<PivotGridAxesEditorProps>;
/**
* Overrides the default `measureAxesLabel` component.
*
* The default component is: [KendoReactLabel]({% slug api_labels_label %}).
*/
measureAxesLabel?: CustomComponent<FieldProps & LabelProps>;
/**
* Overrides the default `measureAxesEditor` component.
*
* The default component is: [PivotGridAxesEditor]({% slug api_pivotgrid_pivotgridaxeseditor %}).
*/
measureAxesEditor?: CustomComponent<PivotGridAxesEditorProps>;
/**
* A callback, fired whenever a `FieldEditorField` is expanded.
*/
onFieldsEditorFieldExpand?: (event: PivotGridFieldsEditorFieldExpandEvent & {
currentTarget: PivotGridConfiguratorEditorHandle;
}) => void;
/**
* An action callback. Used to define the component behavior when a `FieldsEditorFieldExpand` is triggered.
*
* Internal state change will be triggered depending on the specific action types.
*
* @hidden
*/
onFieldsEditorFieldExpandAction?: (event: PivotGridFieldsEditorFieldCheckEvent & {
currentTarget: PivotGridConfiguratorEditorHandle;
}, props: PivotGridConfiguratorEditorProps, state: PivotGridConfiguratorEditorState) => PivotGridConfiguratorAction | PivotGridConfiguratorAction[];
/**
* A callback, fired whenever a `FieldEditorField` is checked.
*/
onFieldsEditorFieldCheck?: (event: PivotGridFieldsEditorFieldCheckEvent & {
currentTarget: PivotGridConfiguratorEditorHandle;
}) => void;
/**
* An action callback. Used to define the component behavior when a `FieldsEditorFieldCheck` is triggered.
*
* Internal state change will be triggered depending on the specific action types.
*
* @hidden
*/
onFieldsEditorFieldCheckAction?: (event: PivotGridFieldsEditorFieldCheckEvent & {
currentTarget: PivotGridConfiguratorEditorHandle;
}, props: PivotGridConfiguratorEditorProps, state: PivotGridConfiguratorEditorState) => PivotGridConfiguratorAction | PivotGridConfiguratorAction[];
/**
* A callback, fired whenever an `AxisFilterField` is expanded.
*/
onAxisFilterFieldExpand?: (event: PivotGridAxisFilterFieldExpandEvent & {
currentTarget: PivotGridConfiguratorEditorHandle;
}) => void;
/**
* A callback, fired whenever `expanded` state of the AxisFilterFields is changed.
*/
onAxisFilterFieldsExpandChange?: (event: PivotGridAxisFilterFieldsExpandChangeEvent) => void;
}
/**
* @hidden
*/
declare interface PivotGridConfiguratorEditorState extends PivotGridConfiguratorState {
expanded: PivotGridField[];
}
/**
* Represents the event arguments of the [`onFilterChange`]({% slug api_pivotgrid_pivotgridconfiguratorprops %}#toc-onfilterchange) callbacks of the [`PivotGridConfigurator`]({% slug api_pivotgrid_pivotgridconfigurator %}) component.
*/
export declare interface PivotGridConfiguratorFilterChangeEvent {
/**
* The new filter descriptors value.
*/
value: FilterDescriptor[];
/**
* The handle of the PivotGridConfigurator component.
*/
target: PivotGridConfiguratorHandle | null;
/**
* The DOM event that triggered the change.
*/
syntheticEvent: React.SyntheticEvent;
}
/**
* Represents the object which is passed to the [`ref`](https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom) callback of the PivotGridConfigurator component.
*/
export declare interface PivotGridConfiguratorHandle {
/**
* The properties passed to the PivotGridConfigurator component.
*/
props: PivotGridConfiguratorProps;
/**
* The DOM element of the PivotGridConfigurator component.
*/
element: HTMLDivElement | null;
}
/**
* Represents the props of the [KendoReact PivotGridConfigurator component]({% slug api_pivotgrid_pivotgridconfigurator %}).
*/
export declare interface PivotGridConfiguratorProps {
/**
* Sets the `className` property of the top-most element of the PivotGridConfigurator in addition to the default `k-pivotgrid-configurator` class.
*/
className?: string;
/**
* Sets the `id` property of the top-most element of the PivotGridConfigurator.
*/
id?: string;
/**
* Sets the `tabIndex` property of the top-most element of the PivotGridConfigurator.
*/
tabIndex?: number;
/**
* Sets the `style` property of the top-most element of the PivotGridConfigurator.
*/
style?: React_2.CSSProperties;
/**
* Renders the PivotGridConfigurator in `horizontal` orientation.
*
* @default false
*/
horizontal?: boolean;
/**
* Sets the `data` of the PivotGridConfigurator.
*
* The `data` represents all fields available in the configurator.
*/
data?: PivotGridField[];
/**
* The configuration of the `column` axes.
*/
columnAxes?: PivotGridAxis[];
/**
* A callback, fired whenever the `columnAxes` property should change.
*/
onColumnAxesChange?: (event: PivotGridConfiguratorAxesChangeEvent) => void;
/**
* The configuration of the `row` axes.
*/
rowAxes?: PivotGridAxis[];
/**
* A callback, fired whenever the `rowAxes` property should change.
*/
onRowAxesChange?: (event: PivotGridConfiguratorAxesChangeEvent) => void;
/**
* The configuration of the `measure` axes.
*/
measureAxes?: PivotGridAxis[];
/**
* A callback, fired whenever the `measureAxes` property should change.
*/
onMeasureAxesChange?: (event: PivotGridConfiguratorAxesChangeEvent) => void;
/**
* The descriptors by which the data is sorted.
*/
sort?: SortDescriptor[];
/**
* A callback, fired whenever the `sort` property should change.
*/
onSortChange?: (event: PivotGridConfiguratorSortChangeEvent) => void;
/**
* The descriptors by which the data is filtered.
*/
filter?: FilterDescriptor[];
/**
* A callback, fired whenever the `filter` property should change.
*/
onFilterChange?: (event: PivotGridConfiguratorFilterChangeEvent) => void;
/**
* A callback, fired whenever a `field` is expanded.
*/
onFieldsEditorFieldExpand?: (event: PivotGridFieldsEditorFieldExpandEvent) => void;
/**
* A callback, fired whenever a `field` is checked.
*/
onFieldsEditorFieldCheck?: (event: PivotGridFieldsEditorFieldCheckEvent) => void;
/**
* A callback, fired whenever an `AxisFilterField` is expanded.
*/
onAxisFilterFieldExpand?: (event?: PivotGridAxisFilterFieldExpandEvent) => void;
/**
* A callback, fired whenever the `expanded` state of the `AxisFilterFields` is changed.
*/
onAxisFilterFieldsExpandChange?: (event?: PivotGridAxisFilterFieldsExpandChangeEvent) => void;
/**
* Overrides the default `editor` component.
*
* The default component is: [PivotGridConfiguratorEditor]({% slug api_pivotgrid_pivotgridconfiguratoreditor %}).
*/
editor?: CustomComponent<PivotGridConfiguratorEditorProps>;
/**
* Overrides the default `form` component.
*
* The default component is: [KendoReactForm]({% slug api_form_form %}).
*/
form?: CustomComponent<FormProps>;
/**
* Overrides the default `formElement` component.
*
* The default component is: [KendoReactFormElement]({% slug api_form_formelement %}).
*/
formElement?: CustomComponent<FormElementProps>;
}
/**
* Represents the event arguments of the [`onSortChange`]({% slug api_pivotgrid_pivotgridconfiguratorprops %}#toc-onsortchange) callbacks of the [`PivotGridConfigurator`]({% slug api_pivotgrid_pivotgridconfigurator %}) component.
*/
export declare interface PivotGridConfiguratorSortChangeEvent {
/**
* The new sort descriptors value.
*/
value: SortDescriptor[];
/**
* The handle of the PivotGridConfigurator component.
*/
target: PivotGridConfiguratorHandle | null;
/**
* The DOM event that triggered the change.
*/
syntheticEvent: React.SyntheticEvent;
}
/**
* Represents the [KendoReact PivotGridContainer component]({% slug api_pivotgrid_pivotgridcontainerprops %}).
*
* @remarks
* Supported children components are: {@link PivotGrid}, {@link PivotGridConfigurator}, {@link PivotGridConfiguratorButton}, {@link Loader}.
*/
export declare const PivotGridContainer: React_2.ForwardRefExoticComponent<PivotGridContainerProps & React_2.RefAttributes<PivotGridContainerHandle | null>>;
/**
* Represents the object which is passed to the [`ref`](https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom) callback of the PivotGridContainer component.
*/
export declare interface PivotGridContainerHandle {
/**
* The DOM element of the PivotGridContainer component.
*/
element: HTMLDivElement | null;
/**
* The properties passed to the PivotGridContainer component.
*/
props: PivotGridContainerProps;
}
/**
* Represents the props of the [KendoReact PivotGridContainer component]({% slug api_pivotgrid_pivotgridcontainer %}).
*/
export declare interface PivotGridContainerProps {
/**
* Sets the `id` property of the top-most element of the PivotGridContainer.
*/
id?: string;
/**
* Sets the `tabIndex` property of the top-most element of the PivotGridContainer.
*/
tabIndex?: number;
/**
* Sets the `className` property of the top-most element of the PivotGridContainer in addition to the default `k-d-flex k-pos-relative` class.
*/
className?: string;
/**
* Sets the `children` property of the top-most element of the PivotGridContainer.
*/
children?: React_2.ReactNode;
/**
* Sets the `style` property of the top-most element of the PivotGridContainer.
*/
style?: React_2.CSSProperties;
/**
* Sets the configurator position in the container.
* The available values are:
* - top
* - left
* - right
* - bottom
*
* @default 'right'
*/
configuratorPosition?: 'top' | 'left' | 'right' | 'bottom';
}
/**
* Represents the [KendoReact PivotGridFieldsEditor component]({% slug api_pivotgrid_pivotgridfieldseditorprops %}).
*/
export declare const PivotGridFieldsEditor: React_2.ForwardRefExoticComponent<PivotGridFieldsEditorProps & React_2.RefAttributes<PivotGridFieldsEditorHandle | null>>;
/**
* @hidden
*/
export declare interface PivotGridFieldsEditorFieldCheckEvent {
target: PivotGridFieldsEditorHandle;
value: PivotGridField;
syntheticEvent: React_2.SyntheticEvent;
}
/**
* @hidden
*/
export declare interface PivotGridFieldsEditorFieldExpandEvent {
target: PivotGridFieldsEditorHandle;
value: PivotGridField;
syntheticEvent: React_2.SyntheticEvent;
}
/**
* Represents the object which is passed to the [`ref`](https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom) callback of the PivotGridFieldsEditor component.
*/
export declare interface PivotGridFieldsEditorHandle {
/**
* The properties passed to the PivotGridFieldsEditor component.
*/
props: PivotGridFieldsEditorProps;
/**
* The DOM element of the PivotGridFieldsEditor component.
*/
element: HTMLDivElement | null;
}
/**
* Represents the props of the [KendoReact PivotGridFieldsEditor component]({% slug api_pivotgrid_pivotgridfieldseditor %}).
*/
export declare interface PivotGridFieldsEditorProps {
/**
* Sets the `data` of the PivotGridConfiguratorEditor.
*
* The `data` represents all fields available in the configurator.
*/
data?: PivotGridField[];
/**
* The configuration of the `row` axes.
*/
rowAxes?: PivotGridAxis[];
/**
* The configuration of the `column` axes.
*/
columnAxes?: PivotGridAxis[];
/**
* The configuration of the `measure` axes.
*/
measureAxes?: PivotGridAxis[];
/**
* A callback, fired whenever an `expand` is triggered.
*/
onExpand?: (args: PivotGridFieldsEditorFieldExpandEvent) => void;
/**
* A callback, fired whenever a `check` is triggered.
*/
onCheck?: (args: PivotGridFieldsEditorFieldCheckEvent) => void;
/**
* Overrides the default `treeView` component.
*
* The default component is: [KendoReactTreeView]({% slug api_treeview_treeview %}).
*/
treeView?: CustomComponent<TreeViewProps>;
/**
* Overrides the default `noData` component.
*
* The default component is: `() => <div>NO DATA</div>`
*/
noData?: CustomComponent<any>;
}
/**
* Represents the object which is passed to the [`ref`](https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom) callback of the PivotGrid component.
*/
export declare interface PivotGridHandle {
/**
* The DOM element of the PivotGrid component.
*/
element: HTMLDivElement | null;
/**
* The current properties of the PivotGrid component.
*/
props: PivotGridProps;
/**
* The rows that make up the column headers.
*/
columnHeaderRows: AxisRow[];
/**
* The rows that make up the row headers.
*/
rowHeaderRows: AxisRow[];
/**
* The data cells organized by row and column.
*/
dataCells: {
row: string[];
cells: PivotDataItem[];
}[];
/**
* The width of the row header area in pixels.
*/
rowHeaderBreadth: number;
/**
* The height of the column header area in pixels.
*/
columnHeaderBreadth: number;
}
/**
* Represents the [KendoReact PivotGridHeaderCell component]({% slug api_pivotgrid_pivotgridheadercellprops %}).
*/
export declare const PivotGridHeaderCell: React_2.ForwardRefExoticComponent<PivotGridHeaderCellProps & React_2.RefAttributes<PivotGridHeaderCellHandle | null>>;
/**
* Represents the object which is passed to the [`ref`](https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom) callback of the PivotGridHeaderCell component.
*/
export declare interface PivotGridHeaderCellHandle {
/**
* The properties passed to the PivotGridHeaderCell component.
*/
props: PivotGridHeaderCellProps;
/**
* The DOM element of the PivotGridHeaderCell component.
*/
element: HTMLTableHeaderCellElement | null;
}
/**
* Represents the props of the [KendoReact PivotGridHeaderCell component]({% slug api_pivotgrid_pivotgridheadercell %}).
*/
export declare interface PivotGridHeaderCellProps extends KendoMouse<PivotGridHeaderCellHandle, HTMLTableHeaderCellElement> {
/**
* Represents the `dataItem` of the PivotGridHeaderCell.
*
* The `dataItem` is a single [AxisDataItem]({% slug api_pivotgrid_axisdataitem %}) object.
*/
dataItem: AxisDataItem;
/**
* Sets the `id` property of the top-most element of the PivotGridHeaderCell.
*/
id?: string;
/**
* Sets the `className` property of the top-most element of the PivotGridHeaderCell in addition to the default `k-pivotgrid-cell` class.
*/
className?: string;
/**
* Sets the `tabIndex` property of the top-most element of the PivotGridHeaderCell.
*/
tabIndex?: number;
/**
* Sets the `children` property of the top-most element of the PivotGridHeaderCell.
*/
children?: React_2.ReactNode;
/**
* Sets the `style` property of the top-most element of the PivotGridHeaderCell.
*/
style?: React_2.CSSProperties;
/**
* Represents the calculated `rowSpan` property of the cell.
*/
rowSpan?: number;
/**
* Represents the calculated `colSpan` property of the cell.
*/
colSpan?: number;
/**
* Represents the columns `path` leading to the current cell.
*/
columnPath?: string[];
/**
* Represents the row `path` leading to the current cell.
*/
rowPath?: string[];
/**
* Indicates if the current cell represents a `total` value.
*/
total?: boolean;
/**
* Indicates if the current cell represents the first level of a hierarchy.
*/
root?: boolean;
/**
* Indicates if the current cell can be expanded.
*/
expandable?: boolean;
/**
* Indicates if the current cell is expanded.
*/
expanded?: boolean;
/**
* @hidden
*/
first?: boolean;
/**
* Overrides the default `icon` component.
*
* The default component is: [KendoReactIcon]({% slug api_common_icon %}).
*/
icon?: CustomComponent<IconProps & SvgIconProps>;
/**
* A callback, fired whenever the `icon` is clicked.
*/
onIconClick?: (args: KendoMouseEvent<PivotGridHeaderCellHandle, HTMLSpanElement>) => void;
/**
* Sets the `role` property of the top-most element of the PivotGridHeaderCell.
*/
role?: string;
/**
* Fires when the user clicks the PivotGridHeaderCell.
*/
onClick?: (args: any) => void;
/**
* Fires when the user double-clicks the PivotGridHeaderCell.
*/
onDoubleClick?: (args: any) => void;
/**
* Fires when the user presses a mouse button while the cursor is over the PivotGridHeaderCell.
*/
onMouseDown?: (args: any) => void;
/**
* Fires when the cursor enters the PivotGridHeaderCell area.
*/
onMouseEnter?: (args: any) => void;
/**
* Fires when the cursor leaves the PivotGridHeaderCell area.
*/
onMouseLeave?: (args: any) => void;
/**
* Fires when the cursor moves within the PivotGridHeaderCell area.
*/
onMouseMove?: (args: any) => void;
/**
* Fires when the cursor moves outside the PivotGridHeaderCell area.
*/
onMouseOut?: (args: any) => void;
/**
* Fires when the cursor moves over the PivotGridHeaderCell area.
*/
onMouseOver?: (args: any) => void;
/**
* Fires when the user releases a mouse button while the cursor is over the PivotGridHeaderCell.
*/
onMouseUp?: (args: any) => void;
}
/**
* Represents the props of the [KendoReact PivotGrid component]({% slug api_pivotgrid_pivotgrid %}).
*/
export declare interface PivotGridProps {
/**
* Sets the `style` property of the top-most element of the PivotGrid.
*
* @example
* ```jsx
* <PivotGrid style={{ height: '500px' }} />
* ```
*/
style?: React_2.CSSProperties;
/**
* Sets the `className` property of the top-most element of the PivotGrid in addition to the default `k-pivotgrid` class.
*
* @example
* ```jsx
* <PivotGrid className="custom-class" />
* ```
*/
className?: string;
/**
* Sets the `id` property of the top-most element of the PivotGrid.
*
* @example
* ```jsx
* <PivotGrid id="pivotgrid-id" />
* ```
*/
id?: string;
/**
* Sets the `tabIndex` property of the top-most element of the PivotGrid.
*
* @example
* ```jsx
* <PivotGrid tabIndex={0} />
* ```
*/
tabIndex?: number;
/**
* If set to `true`, the user can use dedicated shortcuts to interact with the PivotGrid.
* By default, navigation is disabled.
*
* @default false
*
* @example
* ```jsx
* <PivotGrid navigatable={true} />
* ```
*/
navigatable?: boolean;
/**
* Sets the `data` of the PivotGrid.
*
* @example
* ```jsx
* <PivotGrid data={[{ field: 'value', data: 100 }]} />
* ```
*/
data?: PivotDataItem[];
/**
* Sets the `columns` data of the PivotGrid.
*
* @example
* ```jsx
* <PivotGrid columns={[['Category', 'Subcategory']]} />
* ```
*/
columns?: Tuple[];
/**
* Sets the `rows` data of the PivotGrid.
*
* @example
* ```jsx
* <PivotGrid rows={[['Region', 'C