@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,262 lines (1,188 loc) • 52.8 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 { 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 { 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 { averageAggregate }
export { AxisDataItem }
export { AxisRow }
/**
* 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 {
value: PivotGridAxis[];
target: PivotGridHandle | null;
syntheticEvent: React.SyntheticEvent;
}
/**
* Represents the [KendoReact PivotGridAxesEditor component]({% slug api_pivotgrid_pivotgridaxeseditorprops %}).
*/
export declare const PivotGridAxesEditor: React_2.ForwardRefExoticComponent<Omit<PivotGridAxesEditorProps, "ref"> & React_2.RefAttributes<PivotGridAxesEditorHandle | 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 PivotGridAxesEditor component.
*/
export declare interface PivotGridAxesEditorHandle {
props: PivotGridAxesEditorProps;
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>;
}
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 {
props: PivotGridAxisEditorProps;
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 {
target: PivotGridAxisFilterFieldsEditorHandle;
value: PivotGridField;
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 {
props: PivotGridAxisFilterFieldsEditorProps;
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 {
target: PivotGridAxisFilterFieldsEditorHandle;
value: boolean;
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 {
props: PivotGridCellProps;
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;
}
/**
* 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 {
props: PivotGridColumnProps;
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[];
}
/**
* 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 {
value: PivotGridAxis[];
target: PivotGridConfiguratorHandle | null;
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 {
props: PivotGridConfiguratorButtonProps;
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>;
}
/**
* 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 {
props: PivotGridConfiguratorEditorProps;
state: PivotGridConfiguratorState;
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.
*/
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 {
value: FilterDescriptor[];
target: PivotGridConfiguratorHandle | null;
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 {
props: PivotGridConfiguratorProps;
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.
*/
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 {
value: SortDescriptor[];
target: PivotGridConfiguratorHandle | null;
syntheticEvent: React.SyntheticEvent;
}
/**
* Represents the [KendoReact PivotGridContainer component]({% slug api_pivotgrid_pivotgridcontainerprops %}).
*/
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 {
element: HTMLDivElement | null;
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
*/
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 {
props: PivotGridFieldsEditorProps;
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 {
element: HTMLDivElement | null;
props: PivotGridProps;
columnHeaderRows: AxisRow[];
rowHeaderRows: AxisRow[];
dataCells: {
row: string[];
cells: PivotDataItem[];
}[];
rowHeaderBreadth: number;
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 {
props: PivotGridHeaderCellProps;
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;
}
/**
* 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.
*/
style?: React_2.CSSProperties;
/**
* Sets the `className` property of the top-most element of the PivotGrid in addition to the default `k-pivotgrid` class.
*/
className?: string;
/**
* Sets the `id` property of the top-most element of the PivotGrid.
*/
id?: string;
/**
* Sets the `tabIndex` property of the top-most element of the PivotGrid.
*/
tabIndex?: number;
/**
* If set to `true`, the user can use dedicated shortcuts to interact with the PivotGrid.
* By default, navigation is disabled.
*/
navigatable?: boolean;
/**
* Sets the `data` of the PivotGrid.
*/
data?: PivotDataItem[];
/**
* Sets the `columns` data of the PivotGrid.
*/
columns?: Tuple[];
/**
* Sets the `rows` data of the PivotGrid.
*/
rows?: Tuple[];
/**
* The configuration of the `column` axes.
*/
columnAxes?: PivotGridAxis[];
/**
* A callback, fired whenever the `columnAxes` property should change.
*/
onColumnAxesChange?: (event: PivotGridAxesChangeEvent) => void;
/**
* The configuration of the `row` axes.
*/
rowAxes?: PivotGridAxis[];
/**
* A callback, fired whenever the `rowAxes` property should change.
*/
onRowAxesChange?: (event: PivotGridAxesChangeEvent) => void;
/**
* Overrides the default `row` component.
*
* The default component is: [PivotGridRow]({% slug api_pivotgrid_pivotgridrow %}).
*
* For more information, refer to the [PivotGrid Customization]({% slug customization_pivotgrid %}) article.
*/
row?: CustomComponent<PivotGridRowProps>;
/**
* Overrides the default `column` component.
*
* The default component is: [PivotGridColumn]({% slug api_pivotgrid_pivotgridcolumn %}).
*
* For more information, refer to the [PivotGrid Customization]({% slug customization_pivotgrid %}) article.
*/
column?: CustomComponent<PivotGridColumnProps>;
/**
* Overrides the default `cell` component.
*
* The default component is: [PivotGridCell]({% slug api_pivotgrid_pivotgridcell %}).
*
* For more information, refer to the [PivotGrid Customization]({% slug customization_pivotgrid %}) article.
*/
cell?: CustomComponent<PivotGridCellProps>;
/**
* Overrides the default `headerCell` component.
*
* The default component is: [PivotGridHeaderCell]({% slug api_pivotgrid_pivotgridheadercell %}).
*
* For more information, refer to the [PivotGrid Customization]({% slug customization_pivotgrid %}) article.
*/
headerCell?: CustomComponent<PivotGridHeaderCellProps>;
/**
* Overrides the default column-headers `row` component.
*
* The default component is: [PivotGridRow]({% slug api_pivotgrid_pivotgridrow %}).
*
* For more information, refer to the [PivotGrid Customization]({% slug customization_pivotgrid %}) article.
*/
columnHeadersRow?: React_2.ComponentType<PivotGridRowProps>;
/**
* Overrides the default column-headers `column` component.
*
* The default component is: [PivotGridColumn]({% slug api_pivotgrid_pivotgridcolumn %}).
*
* For more information, refer to the [PivotGrid Customization]({% slug customization_pivotgrid %}) article.
*/
columnHeadersColumn?: React_2.ComponentType<PivotGridColumnProps>;
/**
* Overrides the default column-headers `headerCell` component.
*
* The default component is: [PivotGridHeaderCell]({% slug api_pivotgrid_pivotgridheadercell %}).
*
* For more information, refer to the [PivotGrid Customization]({% slug customization_pivotgrid %}) article.
*/
columnHeadersCell?: React_2.ComponentType<PivotGridHeaderCellProps>;
/**
* Overrides the default row-headers `row` component.
*
* The default component is: [PivotGridRow]({% slug api_pivotgrid_pivotgridrow %}).
*
* For more information, refer to the [PivotGrid Customization]({% slug customization_pivotgrid %}) article.
*/
rowHeadersRow?: React_2.ComponentType<PivotGridRowProps>;
/**
* Overrides the default row-headers `column` component.
*
* The default component is: [PivotGridColumn]({% slug api_pivotgrid_pivotgridcolumn %}).
*
* For more information, refer to the [PivotGrid Customization]({% slug customization_pivotgrid %}) article.
*/
rowHeadersColumn?: React_2.ComponentType<PivotGridColumnProps>;
/**
* Overrides the default row-headers `headerCell` component.
*
* The default component is: [PivotGridHeaderCell]({% slug api_pivotgrid_pivotgridheadercell %}).
*
* For more information, refer to the [PivotGrid Customization]({% slug customization_pivotgrid %}) article.
*/
rowHeadersCell?: React_2.ComponentType<PivotGridHeaderCellProps>;
/**
* Overrides the default data `row` component.
*
* The default component is: [PivotGridRow]({% slug api_pivotgrid_pivotgridrow %}).
*
* For more information, refer to the [PivotGrid Customization]({% slug customization_pivotgrid %}) article.
*/
dataRow?: React_2.ComponentType<PivotGridRowProps>;
/**
* Overrides the default data `column` component.
*
* The default component is: [PivotGridColumn]({% slug api_pivotgrid_pivotgridcolumn %}).
*
* For more information, refer to the [PivotGrid Customization]({% slug customization_pivotgrid %}) article.
*/
dataColumn?: React_2.ComponentType<PivotGridColumnProps>;
}
/**
* Represents the [KendoReact PivotGridRow component]({% slug api_pivotgrid_pivotgridrowprops %}).
*/
export declare const PivotGridRow: React_2.ForwardRefExoticComponent<PivotGridRowProps & React_2.RefAttributes<PivotGridRowHandle | 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 PivotGridRow component.
*/
export declare interface PivotGridRowHandle {
props: PivotGridRowProps;
element: HTMLTableRowElement | null;
}
/**
* Represents the props of the [KendoReact PivotGridRow component]({% slug api_pivotgrid_pivotgridrow %}).
*/
export declare interface PivotGridRowProps extends KendoMouse<PivotGridRowHandle, HTMLTableRowElement> {
/**
* Sets the `className` property of the top-most element of the PivotGridRow in addition to the default `k-pivotgrid-row` class.
*/
className?: string;
/**
* Sets the `id` property of the top-most element of the PivotGridRow.
*/
id?: string;
/**
* Sets the `children` property of the top-most element of the PivotGridRow.
*/
children?: React_2.ReactNode;
/**
* Sets the `style` property of the top-most element of the PivotGridRow.
*/
style?: React_2.CSSProperties;
/**
* Sets the `tabIndex` property of the top-most element of the PivotGridRow.
*/
tabIndex?: number;
/**
* Represents the `path` leading to the current `row`.
*/
path?: string[];
/**
* Sets the `role` property of the top-most element of the PivotGridRow.
*/
role?: string;
/**
* Sets the `aria-owns` property of the top-most element of the PivotGridRow.
*/
ariaOwns?: string;
}
/**
* represents the `data` structure of the [TreeView]({% slug api_treeview_treeview %}) component inside the `PivotGrid`.
*/
export declare interface PivotGridTreeViewData {
checked?: boolean;
value?: string;
dataItem?: PivotGridField[];
}
/**
* A [React higher-order component](https://reactjs.org/docs/higher-order-components.html) which provides data-binding to local data.
*/
export declare const PivotLocalDataService: (props: PivotLocalDataServiceProps) => any;
/**
* Represents the arguments of the [usePivotLocalDataService]({% slug api_pivotgrid_usepivotlocaldataservice %}) hook.
*/
export declare interface PivotLocalDataServiceArgs {
/**
* Represents the dimensions object of the [usePivotLocalDataService]({% slug api_pivotgrid_usepivotlocaldataservice %}) hook and the [PivotLocalDataService]({% slug api_pivotgrid_pivotlocaldataservice %}) component.
*/
dimensions: {
[key: string]: Dimension;
};
/**
* Represents the measures collection of the [usePivotLocalDataService]({% slug api_pivotgrid_usepivotlocaldataservice %}) hook and the [PivotLocalDataService]({% slug api_pivotgrid_pivotlocaldataservice %}) component.
*/
measures: Measure[];
/**
* Represents the local data of the [usePivotLocalDataService]({% slug api_pivotgrid_usepivotlocaldataservice %}) hook and the [PivotLocalDataService]({% slug api_pivotgrid_pivotlocaldataservice %}) component.
*/
data: any[];
/**
* Represents the default column axes configuration of the [usePivotLocalDataService]({% slug api_pivotgrid_usepivotlocaldataservice %}) hook and the [PivotLocalDataService]({% slug api_pivotgrid_pivotlocaldataservice %}) component.
*/
defaultColumnAxes: PivotGridAxis[];
/**
* Represents the default row axes configuration of the [usePivotLocalDataService]({% slug api_pivotgrid_usepivotlocaldataservice %}) hook and the [PivotLocalDataService]({% slug api_pivotgrid_pivotlocaldataservice %}) component.
*/
defaultRowAxes: PivotGridAxis[];
/**
* Represents the default measure axes configuration of the [usePivotLocalDataService]({% slug api_pivotgrid_usepivotlocaldataservice %}) hook and the [PivotLocalDataService]({% slug api_pivotgrid_pivotlocaldataservice %}) component.
*/
defaultMeasureAxes: PivotGridAxis[];
/**
* Represents the default sort descriptors of the [usePivotLocalDataService]({% slug api_pivotgrid_usepivotlocaldataservice %}) hook and the [PivotLocalDataService]({% slug api_pivotgrid_pivotlocaldataservice %}) component.
*/
defaultSort: SortDescriptor[];
/**
* Represents the default filter descriptors of the [usePivotLocalDataService]({% slug api_pivotgrid_usepivotlocaldataservice %}) hook and the [PivotLocalDataService]({% slug api_pivotgrid_pivotlocaldataservice %}) component.
*/
defaultFilter: FilterDescriptor[];
}
/**
* Represents the properties of the [PivotLocalDataService]({% slug api_pivotgrid_pivotlocaldataserv