-
Notifications
You must be signed in to change notification settings - Fork 1
/
index.d.ts
1328 lines (1131 loc) · 64.5 KB
/
index.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
declare module 'dx-react-grid-grommet'{
import * as React from 'react';
import {
Column
} from '@devexpress/dx-react-grid';
// -------------------------------------------------------------------------------------------------
// ColumnChooser
// -------------------------------------------------------------------------------------------------
import {
ColumnChooser as ColumnChooserBase,
} from '@devexpress/dx-react-grid';
export namespace ColumnChooser {
/** Describes properties passed to a component that renders the column chooser overlay. */
export type OverlayProps = ColumnChooserBase.OverlayProps;
}
export namespace ColumnChooser {
/** Describes properties passed to a component that renders the button that invokes the column chooser. */
export type ToggleButtonProps = ColumnChooserBase.ToggleButtonProps;
}
export namespace ColumnChooser {
/** Describes properties passed to a component that renders the column chooser container. */
export type ContainerProps = ColumnChooserBase.ContainerProps;
}
export namespace ColumnChooser {
/** Describes properties passed to a component that renders a column chooser item. */
export type ItemProps = ColumnChooserBase.ItemProps;
}
export interface ColumnChooserProps {
/** A component that renders the column chooser overlay. */
overlayComponent?: React.ComponentType<ColumnChooserBase.OverlayProps>;
/** A component that renders a button that invokes the column chooser. */
toggleButtonComponent?: React.ComponentType<ColumnChooserBase.ToggleButtonProps>;
/** A component that renders the column chooser container. */
containerComponent?: React.ComponentType<ColumnChooserBase.ContainerProps>;
/** A component that renders a column chooser item. */
itemComponent?: React.ComponentType<ColumnChooserBase.ItemProps>;
/** An object that specifies localization messages. */
messages?: ColumnChooserBase.LocalizationMessages;
}
/** The ColumnChooser plugin allows a user to toggle grid columns' visibility at runtime. The column chooser lists columns with checkboxes that control a corresponding column's visibility. */
export declare const ColumnChooser: React.ComponentType<ColumnChooserProps> & {
/** A component that renders a button that invokes the column chooser. */
ToggleButton: React.ComponentType<ColumnChooserBase.ToggleButtonProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders the column chooser overlay. */
Overlay: React.ComponentType<ColumnChooserBase.OverlayProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders the column chooser container. */
Container: React.ComponentType<ColumnChooserBase.ContainerProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a column chooser item. */
Item: React.ComponentType<ColumnChooserBase.ItemProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// DragDropProvider
// -------------------------------------------------------------------------------------------------
import {
DragDropProvider as DragDropProviderBase,
} from '@devexpress/dx-react-grid';
export namespace DragDropProvider {
/** Describes properties of the component that renders a container for columns being dragged. */
export type ContainerProps = DragDropProviderBase.ContainerProps;
}
export namespace DragDropProvider {
/** Describes properties of the component that renders a column being dragged. */
export type ColumnProps = DragDropProviderBase.ColumnProps;
}
export interface DragDropProviderProps {
/** A component that renders a container for columns being dragged. */
containerComponent?: React.ComponentType<DragDropProviderBase.ContainerProps>;
/** A component that renders a column being dragged. */
columnComponent?: React.ComponentType<DragDropProviderBase.ColumnProps>;
}
/** A plugin that implements the drag-and-drop functionality and visualizes columns that are being dragged. */
export declare const DragDropProvider: React.ComponentType<DragDropProviderProps> & {
/** A component that renders a container for columns being dragged. */
Container: React.ComponentType<DragDropProviderBase.ContainerProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a column being dragged. */
Column: React.ComponentType<DragDropProviderBase.ColumnProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// ExportPanel
// -------------------------------------------------------------------------------------------------
import {
ExportPanel as ExportPanelBase,
} from '@devexpress/dx-react-grid';
export namespace ExportPanel {
/** Properties passed to the `toggleButtonComponent`. */
export type ToggleButtonProps = ExportPanelBase.ToggleButtonProps;
}
export namespace ExportPanel {
/** Properties passed to the `menuComponent`. */
export type MenuProps = ExportPanelBase.MenuProps;
}
export namespace ExportPanel {
/** Properties passed to the `menuItemComponent`. */
export type MenuItemProps = ExportPanelBase.MenuItemProps;
}
export interface ExportPanelProps {
/** A component that renders a button that opens the export menu. */
toggleButtonComponent?: React.ComponentType<ExportPanelBase.ToggleButtonProps>;
/** A component that renders the export menu. */
menuComponent?: React.ComponentType<ExportPanelBase.MenuProps>;
/** A component that renders a menu item. */
menuItemComponent?: React.ComponentType<ExportPanelBase.MenuItemProps>;
/** A function that initiates the export. */
startExport?: (options: object) => void;
/** Localization messages. */
messages?: ExportPanelBase.LocalizationMessages;
}
/** A plugin that renders the Export Panel. */
export declare const ExportPanel: React.ComponentType<ExportPanelProps> & {
/** A component that renders a button that opens the export menu. */
ToggleButton: React.ComponentType<ExportPanelBase.ToggleButtonProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders the export menu. */
Menu: React.ComponentType<ExportPanelBase.MenuProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a menu item. */
MenuItem: React.ComponentType<ExportPanelBase.MenuItemProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// Grid
// -------------------------------------------------------------------------------------------------
import {
Grid as GridBase,
} from '@devexpress/dx-react-grid';
export namespace Grid {
/** Describes properties passed to a component that renders the grid root layout. */
export type RootProps = GridBase.RootProps;
}
export interface GridProps {
/** An array containing custom data. A user defines the access to this data. Refer to Data Accessors for details. */
rows: ReadonlyArray<any>;
/** Specifies for which row fields columns are created. */
columns: ReadonlyArray<Column>;
/** Specifies the function used to get a unique row identifier. Define this function if the identifier is different than the row index. */
getRowId?: (row: any) => number | string;
/** Specifies the function used to get a cell's value. */
getCellValue?: (row: any, columnName: string) => any;
/** A component that renders the grid root layout. */
rootComponent?: React.ComponentType<GridBase.RootProps>;
}
/** The Grid is a root container component designed to process and display data specified via the `rows` property. You can use the `columns` property to configure columns.The Grid's functionality is implemented in several plugins specified as child components.The Grid is a PluginHost and can contain only other plugins and plugin primitives. */
export declare const Grid: React.ComponentType<GridProps> & {
/** A component that renders the grid root layout. */
Root: React.ComponentType<GridBase.RootProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// GroupingPanel
// -------------------------------------------------------------------------------------------------
import {
GroupingPanel as GroupingPanelBase,
} from '@devexpress/dx-react-grid';
export namespace GroupingPanel {
/** Describes properties passed to a component that renders a group panel container. */
export type ContainerProps = GroupingPanelBase.ContainerProps;
}
export namespace GroupingPanel {
/** Describes properties passed to a group panel item template when it is being rendered. */
export type ItemProps = GroupingPanelBase.ItemProps;
}
export namespace GroupingPanel {
/** Describes properties passed to a component that renders an empty group panel message. */
export type EmptyMessageProps = GroupingPanelBase.EmptyMessageProps;
}
export interface GroupingPanelProps {
/** Specifies whether to render controls that toggle the column's sorting state. Requires the SortingState dependency. */
showSortingControls?: boolean;
/** Specifies whether column headers display a button that cancels grouping by that column. */
showGroupingControls?: boolean;
/** A component that renders a group panel container. */
containerComponent?: React.ComponentType<GroupingPanelBase.ContainerProps>;
/** A component that renders a group panel item. */
itemComponent?: React.ComponentType<GroupingPanelBase.ItemProps>;
/** A component that renders an empty group panel message. */
emptyMessageComponent?: React.ComponentType<GroupingPanelBase.EmptyMessageProps>;
/** An object that specifies the localization messages. */
messages?: GroupingPanelBase.LocalizationMessages;
}
/** A plugin that renders the Grouping Panel in the Grid's header. This panel displays grouped columns and allows a user to modify grouping options.Optionally, the plugin allows an end-user to change grouped columns' sorting order and render sorting indicators. */
export declare const GroupingPanel: React.ComponentType<GroupingPanelProps> & {
/** A component that renders a grouping panel container. */
Container: React.ComponentType<GroupingPanelBase.ContainerProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a grouping panel item. */
Item: React.ComponentType<GroupingPanelBase.ItemProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders an empty grouping panel message. */
EmptyMessage: React.ComponentType<GroupingPanelBase.EmptyMessageProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// PagingPanel
// -------------------------------------------------------------------------------------------------
import {
PagingPanel as PagingPanelBase,
} from '@devexpress/dx-react-grid';
export namespace PagingPanel {
/** Describes the container component properties. */
export type ContainerProps = PagingPanelBase.ContainerProps;
}
export interface PagingPanelProps {
/** A component that renders the paging panel. */
containerComponent?: React.ComponentType<PagingPanelBase.ContainerProps>;
/** The page sizes that a user can select. */
pageSizes?: Array<number>;
/** An object that specifies the localization messages. */
messages?: PagingPanelBase.LocalizationMessages;
}
/** A plugin that renders the paging panel used for navigation through data pages. The panel occupies the entire Grid footer. */
export declare const PagingPanel: React.ComponentType<PagingPanelProps> & {
/** A component that renders the paging panel. */
Container: React.ComponentType<PagingPanelBase.ContainerProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// SearchPanel
// -------------------------------------------------------------------------------------------------
import {
SearchPanel as SearchPanelBase,
} from '@devexpress/dx-react-grid';
export namespace SearchPanel {
/** Describes properties passed to a component that renders the Search Panel root element. */
export type InputProps = SearchPanelBase.InputProps;
}
export interface SearchPanelProps {
/** A component that renders the Search Panel input element. */
inputComponent?: React.ComponentType<SearchPanelBase.InputProps>;
/** An object that specifies localization messages. */
messages?: SearchPanelBase.LocalizationMessages;
}
/** A plugin that renders the Search Panel. */
export declare const SearchPanel: React.ComponentType<SearchPanelProps> & {
/** A component that renders the Search Panel input element. */
Input: React.ComponentType<SearchPanelBase.InputProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// TableBandHeader
// -------------------------------------------------------------------------------------------------
import {
TableBandHeader as TableBandHeaderBase,
} from '@devexpress/dx-react-grid';
export namespace TableBandHeader {
/** Describes properties passed to a component that renders a table band cell. */
export type CellProps = TableBandHeaderBase.CellProps;
}
export namespace TableBandHeader {
/** Describes properties of column bands that the TableBandHeader plugin renders. */
export type ColumnBands = TableBandHeaderBase.ColumnBands;
}
export interface TableBandHeaderProps {
/** A component that renders a band cell. */
cellComponent?: React.ComponentType<TableBandHeaderBase.CellProps>;
/** A component that renders a band cells' row. */
rowComponent?: React.ComponentType<TableBase.RowProps>;
/** Specifies column bands for multi-level table header. */
columnBands?: Array<TableBandHeaderBase.ColumnBands>;
}
/** A plugin that renders the banded cells. */
export declare const TableBandHeader: React.ComponentType<TableBandHeaderProps> & {
/** The band row type's identifier. */
ROW_TYPE: symbol;
} & {
/** A component that renders a band cell. */
Cell: React.ComponentType<TableBase.CellProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a band cells' row. */
Row: React.ComponentType<TableBase.RowProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// TableColumnReordering
// -------------------------------------------------------------------------------------------------
import {
TableColumnReordering as TableColumnReorderingBase,
} from '@devexpress/dx-react-grid';
export interface TableColumnReorderingProps {
/** The column order. */
order?: Array<string>;
/** The initial column order in the uncontrolled mode. */
defaultOrder?: Array<string>;
/** Handles changes to the column order. */
onOrderChange?: (nextOrder: Array<string>) => void;
}
/** A plugin that manages the displayed columns' order. */
export declare const TableColumnReordering: React.ComponentType<TableColumnReorderingProps>;
// -------------------------------------------------------------------------------------------------
// TableColumnResizing
// -------------------------------------------------------------------------------------------------
import {
TableColumnResizing as TableColumnResizingBase,
} from '@devexpress/dx-react-grid';
export namespace TableColumnResizing {
/** Describes additional column properties that the plugin can handle. */
export type ColumnExtension = TableColumnResizingBase.ColumnExtension;
}
export interface TableColumnResizingProps {
/** Specifies column widths. */
columnWidths?: Array<TableColumnWidthInfo>;
/** Specifies a column's minimum width. */
minColumnWidth?: number;
/** Specifies a column's maximum width. */
maxColumnWidth?: number;
/** Specifies initial column widths in uncontrolled mode. */
defaultColumnWidths?: Array<TableColumnWidthInfo>;
/** Handles column width changes. */
onColumnWidthsChange?: (nextColumnWidths: Array<TableColumnWidthInfo>) => void;
/** Additional column properties that the plugin can handle. */
columnExtensions?: Array<TableColumnResizingBase.ColumnExtension>;
/** Specifies the resizing mode: `widget` or `nextColumn`. In `widget` mode, `auto` and percentage values cannot be used to specify column widths. */
resizingMode?: string;
}
/** A plugin that manages table column widths. */
export declare const TableColumnResizing: React.ComponentType<TableColumnResizingProps>;
// -------------------------------------------------------------------------------------------------
// TableColumnVisibility
// -------------------------------------------------------------------------------------------------
import {
TableColumnVisibility as TableColumnVisibilityBase,
} from '@devexpress/dx-react-grid';
export namespace TableColumnVisibility {
/** Describes the empty message component's properties. */
export type EmptyMessageProps = TableColumnVisibilityBase.EmptyMessageProps;
}
export namespace TableColumnVisibility {
/** Describes additional column properties that the plugin can handle. */
export type ColumnExtension = TableColumnVisibilityBase.ColumnExtension;
}
export interface TableColumnVisibilityProps {
/** Hidden column names. */
hiddenColumnNames?: Array<string>;
/** Names of initially hidden columns in the uncontrolled mode. */
defaultHiddenColumnNames?: Array<string>;
/** Specifies whether an end-user can change column visibility. */
columnTogglingEnabled?: boolean;
/** Additional column properties that the plugin can handle. */
columnExtensions?: Array<TableColumnVisibilityBase.ColumnExtension>;
/** Handles hidden columns adding or removing. */
onHiddenColumnNamesChange?: (hiddenColumnNames: Array<string>) => void;
/** A component that renders a message that is displayed when all columns are hidden. */
emptyMessageComponent?: React.ComponentType<TableColumnVisibilityBase.EmptyMessageProps>;
/** An object that specifies localization messages. */
messages?: TableColumnVisibilityBase.LocalizationMessages;
}
/** A plugin that manages Grid columns' visibility. */
export declare const TableColumnVisibility: React.ComponentType<TableColumnVisibilityProps> & {
/** A component that renders a message displayed when all columns are hidden. */
EmptyMessage: React.ComponentType<TableColumnVisibilityBase.EmptyMessageProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// TableEditColumn
// -------------------------------------------------------------------------------------------------
import {
TableEditColumn as TableEditColumnBase,
} from '@devexpress/dx-react-grid';
export namespace TableEditColumn {
/** Describes properties passed to a data row's command cell component. */
export type CellProps = TableEditColumnBase.CellProps;
}
export namespace TableEditColumn {
/** Describes properties passed to a component that renders a command cell within the header row. */
export type HeaderCellProps = TableEditColumnBase.HeaderCellProps;
}
export namespace TableEditColumn {
/** Describes properties passed to a component that renders command control within a command cell. */
export type CommandProps = TableEditColumnBase.CommandProps;
}
export interface TableEditColumnProps {
/** A component that renders a command cell within a data row. */
cellComponent?: React.ComponentType<TableEditColumnBase.CellProps>;
/** A component that renders a command cell within the header row. */
headerCellComponent?: React.ComponentType<TableEditColumnBase.HeaderCellProps>;
/** A component that renders command control within a command cell. */
commandComponent?: React.ComponentType<TableEditColumnBase.CommandProps>;
/** Specifies whether to render the 'New' command within the header row's command cell. */
showAddCommand?: boolean;
/** Specifies whether to render the 'Edit' command within the data row's command cell. */
showEditCommand?: boolean;
/** Specifies whether to render the 'Delete' command within the data row's command cell. */
showDeleteCommand?: boolean;
/** Specifies the command column's width. */
width?: number | string;
/** An object that specifies the localization messages. */
messages?: TableEditColumnBase.LocalizationMessages;
}
/** A plugin that renders a command column. This column contains controls used for row editing, creating, or deleting and committing/canceling changes. */
export declare const TableEditColumn: React.ComponentType<TableEditColumnProps> & {
/** The edit column type's identifier. */
COLUMN_TYPE: symbol;
} & {
/** A component that renders a command control within a command cell. */
Command: React.ComponentType<TableEditColumnBase.CommandProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a command cell within a data row. */
Cell: React.ComponentType<TableEditColumnBase.CellProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a command cell within the header row. */
HeaderCell: React.ComponentType<TableEditColumnBase.HeaderCellProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// TableEditRow
// -------------------------------------------------------------------------------------------------
import {
TableEditRow as TableEditRowBase,
} from '@devexpress/dx-react-grid';
export namespace TableEditRow {
/** Describes properties passed to a component that renders an editable cell. */
export type CellProps = TableEditRowBase.CellProps;
}
export namespace TableEditRow {
/** Describes properties passed to a component that renders an editable row. */
export type RowProps = TableEditRowBase.RowProps;
}
export interface TableEditRowProps {
/** A component that renders an editable cell. */
cellComponent?: React.ComponentType<TableEditRowBase.CellProps>;
/** A component that renders an editable row. */
rowComponent?: React.ComponentType<TableEditRowBase.RowProps>;
/** Specifies the editable row's height. */
rowHeight?: number;
}
/** A plugin that renders a row being edited. */
export declare const TableEditRow: React.ComponentType<TableEditRowProps> & {
/** The added row type's identifier. */
ADDED_ROW_TYPE: symbol;
/** The edit row type's identifier. */
EDIT_ROW_TYPE: symbol;
} & {
/** A component that renders an editable cell. */
Cell: React.ComponentType<TableEditRowBase.CellProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders an editable row. */
Row: React.ComponentType<TableEditRowBase.RowProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// TableFilterRow
// -------------------------------------------------------------------------------------------------
import {
TableFilterRow as TableFilterRowBase,
} from '@devexpress/dx-react-grid';
export namespace TableFilterRow {
/** Describes properties passed to a component that renders a filter cell. */
export type CellProps = TableFilterRowBase.CellProps;
}
export namespace TableFilterRow {
/** Describes properties passed to a component that renders a filter selector. */
export type FilterSelectorProps = TableFilterRowBase.FilterSelectorProps;
}
export namespace TableFilterRow {
/** Describes properties passed to a component that renders a filter selector icon. */
export type IconProps = TableFilterRowBase.IconProps;
}
export namespace TableFilterRow {
/** Describes properties passed to a component that renders a filter editor. */
export type EditorProps = TableFilterRowBase.EditorProps;
}
export namespace TableFilterRow {
/** Describes properties passed to a component that renders a toggle button for a filter selector. */
export type ToggleButtonProps = TableFilterRowBase.ToggleButtonProps;
}
export interface TableFilterRowProps {
/** A component that renders a filter cell. */
cellComponent?: React.ComponentType<TableFilterRowBase.CellProps>;
/** A component that renders a filter row. */
rowComponent?: React.ComponentType<TableBase.RowProps>;
/** A component that renders a filter selector. */
filterSelectorComponent?: React.ComponentType<TableFilterRowBase.FilterSelectorProps>;
/** A component that renders filter selector icons. */
iconComponent?: React.ComponentType<TableFilterRowBase.IconProps>;
/** A component that renders a filter editor. */
editorComponent?: React.ComponentType<TableFilterRowBase.EditorProps>;
/** A component that renders a filter selector's toggle button. */
toggleButtonComponent?: React.ComponentType<TableFilterRowBase.ToggleButtonProps>;
/** Specifies whether the FilterSelector should be displayed. */
showFilterSelector?: boolean;
/** The filter row's height. */
rowHeight?: number;
/** An object that specifies localization messages. */
messages?: TableFilterRowBase.LocalizationMessages;
}
/** A plugin that renders a filter row. */
export declare const TableFilterRow: React.ComponentType<TableFilterRowProps> & {
/** The filter row type's identifier. */
ROW_TYPE: symbol;
} & {
/** A component that renders a filter row cell. */
Cell: React.ComponentType<TableFilterRowBase.CellProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a filter row. */
Row: React.ComponentType<TableBase.RowProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a filter selector. */
FilterSelector: React.ComponentType<TableFilterRowBase.FilterSelectorProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders filter selector icons. */
Icon: React.ComponentType<TableFilterRowBase.IconProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a filter editor. */
Editor: React.ComponentType<TableFilterRowBase.EditorProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a filter selector's toggle button. */
ToggleButton: React.ComponentType<TableFilterRowBase.ToggleButtonProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// TableFixedColumns
// -------------------------------------------------------------------------------------------------
import {
TableFixedColumns as TableFixedColumnsBase,
} from '@devexpress/dx-react-grid';
export namespace TableFixedColumns {
/** Describes properties passed to a component that renders a fixed column's cell. */
export type CellProps = TableFixedColumnsBase.CellProps;
}
export interface TableFixedColumnsProps {
/** Specifies names and types of the columns to be fixed to the left grid's side. */
leftColumns?: Array<string | symbol>;
/** Specifies names and types of the columns to be fixed to the right grid's side. */
rightColumns?: Array<string | symbol>;
/** A component that renders a fixed column's cell. */
cellComponent?: React.ComponentType<TableFixedColumnsBase.CellProps>;
}
/** A plugin that enables you to fix columns to the left and right sides of the grid. */
export declare const TableFixedColumns: React.ComponentType<TableFixedColumnsProps> & {
/** A component that renders a cell related to a fixed column. */
Cell: React.ComponentType<TableFixedColumnsBase.CellProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// TableGroupRow
// -------------------------------------------------------------------------------------------------
import {
TableGroupRow as TableGroupRowBase,
} from '@devexpress/dx-react-grid';
export namespace TableGroupRow {
/** Describes additional column properties that the plugin can handle. */
export type ColumnExtension = TableGroupRowBase.ColumnExtension;
}
export namespace TableGroupRow {
/** Describes a summary item to be displayed in a group caption. */
export type InlineSummaryItemInfo = TableGroupRowBase.InlineSummaryItemInfo;
}
export namespace TableGroupRow {
/** Describes properties passed to a component that renders a group cell. */
export type CellProps = TableGroupRowBase.CellProps;
}
export namespace TableGroupRow {
/** Describes properties passed to a component that renders a group row. */
export type RowProps = TableGroupRowBase.RowProps;
}
export namespace TableGroupRow {
/** Describes properties passed to a component that renders a group cell content. */
export type ContentProps = TableGroupRowBase.ContentProps;
}
export namespace TableGroupRow {
/** Describes properties passed to a component that renders a group expand icon. */
export type IconProps = TableGroupRowBase.IconProps;
}
export namespace TableGroupRow {
/** Describes properties passed to a component that renders a group indent cell. */
export type IndentCellProps = TableGroupRowBase.IndentCellProps;
}
export namespace TableGroupRow {
/** Describes properties passed to a component that renders a container for summary items to be displayed in a group caption. */
export type InlineSummaryProps = TableGroupRowBase.InlineSummaryProps;
}
export namespace TableGroupRow {
/** Describes properties passed to a component that renders a summary item in a group caption. */
export type InlineSummaryItemProps = TableGroupRowBase.InlineSummaryItemProps;
}
export namespace TableGroupRow {
/** Describes properties passed to a component that renders a cell for a summary item in an appropriate column. */
export type SummaryCellProps = TableGroupRowBase.SummaryCellProps;
}
export namespace TableGroupRow {
/** Describes properties passed to a component that renders a stub cell used to align summary items in their columns. */
export type StubCellProps = TableGroupRowBase.StubCellProps;
}
export interface TableGroupRowProps {
/** A Boolean value that specifies whether the grid's table displays a column by which data is grouped. */
showColumnsWhenGrouped?: boolean;
/** Additional column properties that the plugin can handle. */
columnExtensions?: Array<TableGroupRowBase.ColumnExtension>;
/** A component that renders a group cell. */
cellComponent?: React.ComponentType<TableGroupRowBase.CellProps>;
/** A component that renders a group row. */
rowComponent?: React.ComponentType<TableGroupRowBase.RowProps>;
/** A component that renders a group cell content. */
contentComponent?: React.ComponentType<TableGroupRowBase.ContentProps>;
/** A component that renders a group expand icon. */
iconComponent?: React.ComponentType<TableGroupRowBase.IconProps>;
/** A component that renders a group indent cell. */
indentCellComponent?: React.ComponentType<TableGroupRowBase.IndentCellProps>;
/** A component that renders a container for group summary items in a group caption. */
inlineSummaryComponent?: React.ComponentType<TableGroupRowBase.InlineSummaryProps>;
/** A component that renders a single group summary item in a group caption. */
inlineSummaryItemComponent?: React.ComponentType<TableGroupRowBase.InlineSummaryItemProps>;
/** A component that renders a cell for a group summary item in an appropriate column. */
summaryCellComponent?: React.ComponentType<TableGroupRowBase.SummaryCellProps>;
/** A component that renders a group summary item in its column. */
summaryItemComponent?: React.ComponentType<TableSummaryRowBase.ItemProps>;
/** A component that renders a stub cell used to align summary items in their columns. */
stubCellComponent?: React.ComponentType<TableGroupRowBase.StubCellProps>;
/** Summary types that the `DataTypeProvider` plugin should not format. */
formatlessSummaryTypes?: Array<string>;
/** Localization messages. */
messages?: TableGroupRowBase.LocalizationMessages;
/** The group indent column's width. */
indentColumnWidth?: number;
/** The group cell's left padding value. */
contentCellPadding?: string;
}
/** A plugin that renders group rows and enables them to expand and collapse. */
export declare const TableGroupRow: React.ComponentType<TableGroupRowProps> & {
/** The group column type's identifier. */
COLUMN_TYPE: symbol;
/** The group row type's identifier. */
ROW_TYPE: symbol;
} & {
/** A component that renders a group row. */
Row: React.ComponentType<TableGroupRowBase.RowProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a group cell. */
Cell: React.ComponentType<TableGroupRowBase.CellProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a group cell content. */
Content: React.ComponentType<TableGroupRowBase.ContentProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a group expand icon. */
Icon: React.ComponentType<TableGroupRowBase.IconProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a container for group summary items in a group caption. */
InlineSummary: React.ComponentType<TableGroupRowBase.InlineSummaryProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a single group summary item in a group caption. */
InlineSummaryItem: React.ComponentType<TableGroupRowBase.InlineSummaryItemProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a cell for a group summary item in an appropriate column. */
SummaryCell: React.ComponentType<TableGroupRowBase.SummaryCellProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a group summary item in its column. */
SummaryItem: React.ComponentType<TableSummaryRowBase.ItemProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// TableHeaderRow
// -------------------------------------------------------------------------------------------------
import {
TableHeaderRow as TableHeaderRowBase,
} from '@devexpress/dx-react-grid';
export namespace TableHeaderRow {
/** Describes properties used to render a table header cell. */
export type CellProps = TableHeaderRowBase.CellProps;
}
export namespace TableHeaderRow {
/** Describes properties used to render a sort label. */
export type SortLabelProps = TableHeaderRowBase.SortLabelProps;
}
export namespace TableHeaderRow {
/** Describes properties used to render a cell content. */
export type ContentProps = TableHeaderRowBase.ContentProps;
}
export namespace TableHeaderRow {
/** Describes properties used to render a group button. */
export type GroupButtonProps = TableHeaderRowBase.GroupButtonProps;
}
export interface TableHeaderRowProps {
/** A component that renders a header cell. */
cellComponent?: React.ComponentType<TableHeaderRowBase.CellProps>;
/** A component that renders a header row. */
rowComponent?: React.ComponentType<TableBase.RowProps>;
/** A component that renders a header cell's content. */
contentComponent?: React.ComponentType<TableHeaderRowBase.ContentProps>;
/** A component that renders a sort label. */
sortLabelComponent?: React.ComponentType<TableHeaderRowBase.SortLabelProps>;
/** A component that renders a title. */
titleComponent?: React.ComponentType<object>;
/** A component that renders a group button. */
groupButtonComponent?: React.ComponentType<TableHeaderRowBase.GroupButtonProps>;
/** Specifies whether to render controls that toggle the column's sorting state. Requires the SortingState dependency. */
showSortingControls?: boolean;
/** Specifies whether to display a button that groups data by column. Requires the GroupingState dependency. */
showGroupingControls?: boolean;
/** An object that specifies localization messages. */
messages?: TableHeaderRowBase.LocalizationMessages;
}
/** A plugin that renders the table's header row. The Column's `title` field specifies the column's title in the header row.The plugin also allows you to manage a column's sorting and grouping state and initiate column dragging. */
export declare const TableHeaderRow: React.ComponentType<TableHeaderRowProps> & {
/** The header row type's identifier. */
ROW_TYPE: symbol;
} & {
/** A component that renders a header row. */
Row: React.ComponentType<TableBase.RowProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a header cell. */
Cell: React.ComponentType<TableHeaderRowBase.CellProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a cell content. */
Content: React.ComponentType<TableHeaderRowBase.ContentProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a sort label. */
SortLabel: React.ComponentType<TableHeaderRowBase.SortLabelProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a title. */
Title: React.ComponentType<object & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a group button. */
GroupButton: React.ComponentType<TableHeaderRowBase.GroupButtonProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// TableInlineCellEditing
// -------------------------------------------------------------------------------------------------
import {
TableInlineCellEditing as TableInlineCellEditingBase,
} from '@devexpress/dx-react-grid';
export namespace TableInlineCellEditing {
/** Describes properties passed to a component that renders an editable cell. */
export type CellProps = TableInlineCellEditingBase.CellProps;
}
export interface TableInlineCellEditingProps {
/** A component that renders an editable cell. */
cellComponent?: React.ComponentType<TableInlineCellEditingBase.CellProps>;
/** The action that switches a cell to edit mode. */
startEditAction?: 'click' | 'doubleClick';
/** Specifies whether cell value should be selected when the cell switches to edit mode. */
selectTextOnEditStart?: boolean;
}
/** A plugin that renders a cell being edited. */
export declare const TableInlineCellEditing: React.ComponentType<TableInlineCellEditingProps> & {
/** A component that renders an editable cell. */
Cell: React.ComponentType<TableInlineCellEditingBase.CellProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// TableRowDetail
// -------------------------------------------------------------------------------------------------
import {
TableRowDetail as TableRowDetailBase,
} from '@devexpress/dx-react-grid';
export namespace TableRowDetail {
/** Describes properties passed to a component that renders a detail row's content. */
export type ContentProps = TableRowDetailBase.ContentProps;
}
export namespace TableRowDetail {
/** Describes properties passed to a component that renders a detail cell. */
export type CellProps = TableRowDetailBase.CellProps;
}
export namespace TableRowDetail {
/** Describes properties passed to a component that renders a detail row. */
export type RowProps = TableRowDetailBase.RowProps;
}
export namespace TableRowDetail {
/** Describes properties passed to a component that renders a cell containing the expand/collapse control. */
export type ToggleCellProps = TableRowDetailBase.ToggleCellProps;
}
export interface TableRowDetailProps {
/** A component that renders the detail row's content within the detail cell. */
contentComponent?: React.ComponentType<TableRowDetailBase.ContentProps>;
/** A component that renders a detail cell. */
cellComponent?: React.ComponentType<TableRowDetailBase.CellProps>;
/** A component that renders a detail row. */
rowComponent?: React.ComponentType<TableRowDetailBase.RowProps>;
/** A component that renders a cell containing the expand/collapse control. */
toggleCellComponent?: React.ComponentType<TableRowDetailBase.ToggleCellProps>;
/** Specifies the width of the column containing expand/collapse controls. */
toggleColumnWidth?: number;
/** Specifies the detail row height. */
rowHeight?: number;
}
/** A plugin that renders detail rows. */
export declare const TableRowDetail: React.ComponentType<TableRowDetailProps> & {
/** The detail column type's identifier. */
COLUMN_TYPE: symbol;
/** The detail row type's indentifier. */
ROW_TYPE: symbol;
} & {
/** A component that renders a detail cell. */
Cell: React.ComponentType<TableRowDetailBase.CellProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a detail row. */
Row: React.ComponentType<TableRowDetailBase.RowProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a cell containing the expand/collapse control. */
ToggleCell: React.ComponentType<TableRowDetailBase.ToggleCellProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// TableSelection
// -------------------------------------------------------------------------------------------------
import {
TableSelection as TableSelectionBase,
} from '@devexpress/dx-react-grid';
export namespace TableSelection {
/** Describes properties passed to a component that renders a cell containing the Select All checkbox. */
export type HeaderCellProps = TableSelectionBase.HeaderCellProps;
}
export namespace TableSelection {
/** Describes properties passed to a component that renders a cell containing a selection checkbox. */
export type CellProps = TableSelectionBase.CellProps;
}
export namespace TableSelection {
/** Properties passed to the `rowComponent`. */
export type RowProps = TableSelectionBase.RowProps;
}
export interface TableSelectionProps {
/** Specifies whether to highlight the selected rows. Note that `Table` plugin's `rowComponent` is ignored in this case. */
highlightRow?: boolean;
/** Specifies whether a user can select/deselect a row by clicking it. Note that `Table` plugin's `rowComponent` is ignored in this case. */
selectByRowClick?: boolean;
/** Specifies whether to render the Select All checkbox in the header row. */
showSelectAll?: boolean;
/** Specifies whether to render the selection column that displays selection checkboxes. */
showSelectionColumn?: boolean;
/** A component that renders a selection cell . */
cellComponent?: React.ComponentType<TableSelectionBase.CellProps>;
/** A component that renders a cell containing the Select All checkbox. */
headerCellComponent?: React.ComponentType<TableSelectionBase.HeaderCellProps>;
/** A component that renders a selected row. It is used instead of TableBase.Row when `highlightRow` or `selectByRowClick` is enabled. */
rowComponent?: React.ComponentType<TableSelectionBase.RowProps>;
/** The selection column's width. */
selectionColumnWidth?: number;
}
/** A plugin that visualizes table rows' selection state by rendering selection checkboxes and highlighting the selected rows. */
export declare const TableSelection: React.ComponentType<TableSelectionProps> & {
/** The selection column type's indentifier. */
COLUMN_TYPE: symbol;
} & {
/** A component that renders a cell with the selection control inside the heading row. */
HeaderCell: React.ComponentType<TableSelectionBase.HeaderCellProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
/** A component that renders a cell with selection control. */
Cell: React.ComponentType<TableSelectionBase.CellProps & { className?: string; style?: React.CSSProperties; [x: string]: any }>;
};
// -------------------------------------------------------------------------------------------------
// TableSummaryRow
// -------------------------------------------------------------------------------------------------
import {
TableSummaryRow as TableSummaryRowBase,
} from '@devexpress/dx-react-grid';
export namespace TableSummaryRow {
/** Describes properties passed to a component that renders a cell in a summary row. */
export type CellProps = TableSummaryRowBase.CellProps;
}
export namespace TableSummaryRow {
/** Describes properties passed to a component that renders a cell's content. */
export type ContentProps = TableSummaryRowBase.ContentProps;
}
export namespace TableSummaryRow {
/** Describes properties passed to a component that renders an indent used to identify a row's level. */
export type IndentProps = TableSummaryRowBase.IndentProps;
}
export namespace TableSummaryRow {
/** Describes properties passed to a component that renders a summary item. */
export type ItemProps = TableSummaryRowBase.ItemProps;
}
export interface TableSummaryRowProps {
/** An array of summary types that the `DataTypeProvider` plugin should not format. */
formatlessSummaryTypes?: Array<string>;
/** A component that renders the total summary row. */
totalRowComponent?: React.ComponentType<TableBase.RowProps>;
/** A component that renders a group summary row. */
groupRowComponent?: React.ComponentType<TableBase.RowProps>;
/** A component that renders a tree summary row. */
treeRowComponent?: React.ComponentType<TableBase.RowProps>;
/** A component that renders a total summary cell. */
totalCellComponent?: React.ComponentType<TableSummaryRowBase.CellProps>;
/** A component that renders a group summary cell. */
groupCellComponent?: React.ComponentType<TableSummaryRowBase.CellProps>;
/** A component that renders a tree summary cell. */
treeCellComponent?: React.ComponentType<TableSummaryRowBase.CellProps>;
/** A component that renders a summary cell within a tree column. */
treeColumnCellComponent?: React.ComponentType<TableSummaryRowBase.CellProps>;
/** A component that renders a summary cell's content within a tree column. */
treeColumnContentComponent?: React.ComponentType<TableSummaryRowBase.ContentProps>;
/** A component that renders an indent used to identify a tree row level within a tree column. */
treeColumnIndentComponent?: React.ComponentType<TableSummaryRowBase.IndentProps>;