@progress/kendo-vue-grid
Version:
694 lines (693 loc) • 30.8 kB
TypeScript
/**
* @license
*-------------------------------------------------------------------------------------------
* Copyright © 2026 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the package root for more information
*-------------------------------------------------------------------------------------------
*/
import { Page, SearchField, DetailExpandAction, GroupExpandAction, SelectDescriptor, DetailExpandDescriptor, GroupExpandDescriptor, PagerTargetEvent, TableSelectionChangeEvent, ClipboardActionType, ClipboardSettings, GridClipboardEvent } from '@progress/kendo-vue-data-tools';
import { ExtendedColumnProps } from './interfaces/ExtendedColumnProps';
import { SortDescriptor, CompositeFilterDescriptor, GroupDescriptor, State } from '@progress/kendo-data-query';
import { VirtualScroll } from './VirtualScroll';
import { GridExpandChangeEvent, GridItemChangeEvent, GridDragSelectionReleaseEvent, GridContextMenuEvent, GridContextMenuItemClickEvent } from './interfaces/events';
import { GridColumnProps } from './interfaces/GridColumnProps';
import { GridSearchBoxChangeEvent } from './GridSearchBox';
import { GridColumnState } from './interfaces/GridColumnState';
import { GridCellRenderModel } from './interfaces/GridCellRenderModel';
import { GridCellProps } from './interfaces/GridCellProps';
import { GridGroupableSettings } from './interfaces/GridGroupableSettings';
import { BaseCSVExportMethods } from './BaseCSVExport';
import { GridContextMenuOptions } from './contextMenu/GridContextMenu';
import { GridContextMenuItemNames } from './contextMenu/enums';
/**
* @hidden
*/
declare const Grid: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
toolbar: {
type: ObjectConstructor;
};
noRecords: {
type: ObjectConstructor;
};
id: import('vue').PropType<string>;
autoProcessData: import('vue').PropType<boolean | import('./utils/dataProcessing').AutoProcessDataConfig>;
topCacheCount: {
type: import('vue').PropType<number>;
default: number;
};
collapsedGroups: {
type: import('vue').PropType<any[][]>;
default: () => any[];
};
uniqueField: import('vue').PropType<string>;
totalGroupedHeight: import('vue').PropType<number>;
allGroupedItems: import('vue').PropType<import('@progress/kendo-data-query').DataResult>;
alternatePerGroup: import('vue').PropType<boolean>;
columns: import('vue').PropType<GridColumnProps[]>;
columnsState: {
type: import('vue').PropType<GridColumnState[]>;
default: () => any;
};
cells: import('vue').PropType<import('.').GridCellsSettings>;
contextMenu: import('vue').PropType<boolean | GridContextMenuOptions | ((options: import('./contextMenu/GridContextMenu').GridCellBaseOptions) => boolean | GridContextMenuOptions)>;
rows: import('vue').PropType<import('./interfaces/GridRowsSettings').GridRowsSettings>;
defaultColumnsState: {
type: import('vue').PropType<GridColumnState[]>;
default: () => any;
};
columnVirtualization: import('vue').PropType<boolean>;
dataItems: import('vue').PropType<any[] | import('@progress/kendo-data-query').DataResult>;
sortable: import('vue').PropType<import('.').GridSortSettings>;
defaultSort: import('vue').PropType<SortDescriptor[]>;
sort: import('vue').PropType<SortDescriptor[]>;
filterable: import('vue').PropType<boolean>;
filterOperators: import('vue').PropType<import('./interfaces/GridFilterOperators').GridFilterOperators>;
filterCellRender: import('vue').PropType<any>;
headerCellRender: import('vue').PropType<any>;
showLoader: {
type: import('vue').PropType<boolean>;
default: any;
};
loader: import('vue').PropType<string | Object | Function>;
lockGroups: import('vue').PropType<boolean>;
pinnable: import('vue').PropType<boolean>;
defaultPinnedTopRows: import('vue').PropType<any[]>;
defaultPinnedBottomRows: import('vue').PropType<any[]>;
pinnedTopRows: import('vue').PropType<any[]>;
pinnedBottomRows: import('vue').PropType<any[]>;
defaultFilter: import('vue').PropType<CompositeFilterDescriptor>;
filter: import('vue').PropType<CompositeFilterDescriptor>;
defaultSearch: import('vue').PropType<CompositeFilterDescriptor>;
search: import('vue').PropType<CompositeFilterDescriptor>;
searchFields: import('vue').PropType<(string | SearchField)[]>;
highlight: import('vue').PropType<{
[id: string]: boolean | {
[id: string]: boolean;
};
}>;
pageable: import('vue').PropType<any>;
pageSize: import('vue').PropType<number>;
total: import('vue').PropType<number>;
fixedScroll: import('vue').PropType<boolean>;
skip: import('vue').PropType<number>;
defaultSkip: import('vue').PropType<number>;
take: import('vue').PropType<number>;
defaultTake: import('vue').PropType<number>;
expandField: import('vue').PropType<string>;
expandColumn: import('vue').PropType<GridColumnProps>;
selectedField: import('vue').PropType<string>;
cellRender: import('vue').PropType<string | boolean | ((h: any, defaultRendering: any, props: GridCellProps, listeners: any) => any)>;
rowRender: import('vue').PropType<string | boolean | ((h: any, defaultRendering: any, defaultSlots: any, props: any, listeners: any) => any)>;
rowSpannable: import('vue').PropType<boolean | import('./interfaces/GridRowSpannableSettings').GridRowSpannableSettings>;
resizable: import('vue').PropType<boolean>;
reorderable: import('vue').PropType<boolean>;
group: import('vue').PropType<GroupDescriptor[]>;
defaultGroup: import('vue').PropType<GroupDescriptor[]>;
groupable: import('vue').PropType<boolean | GridGroupableSettings>;
groupExpand: import('vue').PropType<GroupExpandDescriptor[]>;
defaultGroupExpand: import('vue').PropType<GroupExpandDescriptor[]>;
detailExpand: import('vue').PropType<DetailExpandDescriptor>;
defaultDetailExpand: import('vue').PropType<DetailExpandDescriptor>;
editField: import('vue').PropType<string>;
rowClass: import('vue').PropType<Function>;
select: import('vue').PropType<SelectDescriptor>;
defaultSelect: import('vue').PropType<SelectDescriptor>;
selectable: import('vue').PropType<boolean | import('./interfaces/GridSelectableSettings').GridSelectableSettings>;
scrollable: {
type: import('vue').PropType<string>;
default: string;
};
size: {
type: import('vue').PropType<string>;
default: string;
validator: (value: string) => any;
};
dir: import('vue').PropType<string>;
pager: import('vue').PropType<string | boolean | Object | Function>;
rowHeight: import('vue').PropType<number>;
detailRowHeight: import('vue').PropType<number>;
detail: import('vue').PropType<any>;
columnMenu: import('vue').PropType<any>;
columnMenuAnimate: {
type: import('vue').PropType<boolean | import('@progress/kendo-vue-popup').PopupAnimation>;
default: () => boolean;
};
columnMenuIcon: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
name: StringConstructor;
icon: ObjectConstructor;
themeColor: {
type: StringConstructor;
};
size: {
type: StringConstructor;
};
flip: {
type: StringConstructor;
};
fillMode: {
type: StringConstructor;
};
variant: {
type: StringConstructor;
};
id: StringConstructor;
ariaLabel: StringConstructor;
title: StringConstructor;
viewBox: {
type: StringConstructor;
default: string;
};
tabIndex: NumberConstructor;
svgClassName: StringConstructor;
svgStyle: ObjectConstructor;
}>, {}, {}, {
wrapperClass(this: import('@progress/kendo-vue-common').SvgIconAll): {
[x: string]: any;
[x: number]: any;
'k-icon': boolean;
'k-svg-icon': boolean;
'k-flip-h': boolean;
'k-flip-v': boolean;
};
}, {
handleClick(e: any): void;
}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
click: any;
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
name: StringConstructor;
icon: ObjectConstructor;
themeColor: {
type: StringConstructor;
};
size: {
type: StringConstructor;
};
flip: {
type: StringConstructor;
};
fillMode: {
type: StringConstructor;
};
variant: {
type: StringConstructor;
};
id: StringConstructor;
ariaLabel: StringConstructor;
title: StringConstructor;
viewBox: {
type: StringConstructor;
default: string;
};
tabIndex: NumberConstructor;
svgClassName: StringConstructor;
svgStyle: ObjectConstructor;
}>> & Readonly<{
onClick?: (...args: any[] | unknown[]) => any;
}>, {
viewBox: string;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
dataItemKey: StringConstructor;
navigatable: {
type: import('vue').PropType<boolean>;
default: boolean;
};
onItemchange: import('vue').PropType<(event: GridItemChangeEvent) => void>;
onExpandchange: import('vue').PropType<(event: GridExpandChangeEvent) => void>;
onDatastatechange: import('vue').PropType<(event: import('./interfaces/events').GridDataStateChangeEvent) => void>;
onPagechange: import('vue').PropType<(event: import('./interfaces/events').GridPageChangeEvent) => void>;
onSortchange: import('vue').PropType<(event: import('./interfaces/events').GridSortChangeEvent) => void>;
onFilterchange: import('vue').PropType<(event: import('./interfaces/events').GridFilterChangeEvent) => void>;
onGroupchange: import('vue').PropType<(event: import('./interfaces/events').GridGroupChangeEvent) => void>;
onSearchchange: import('vue').PropType<(event: import('./interfaces/events').GridSearchChangeEvent) => void>;
onGroupexpandchange: import('vue').PropType<(event: import('./interfaces/events').GridGroupExpandChangeEvent) => void>;
onDetailexpandchange: import('vue').PropType<(event: import('./interfaces/events').GridDetailExpandChangeEvent) => void>;
onContextmenu: import('vue').PropType<(event: GridContextMenuEvent) => void>;
onContextmenuitemclick: import('vue').PropType<(event: GridContextMenuItemClickEvent) => void>;
clipboard: import('vue').PropType<boolean | ClipboardSettings>;
onClipboard: import('vue').PropType<(event: GridClipboardEvent) => void>;
csv: import('vue').PropType<boolean | import('.').GridCSVExportOptions>;
onCsvexport: import('vue').PropType<(data: any[]) => any[]>;
}>, {
rowIndexRef: import('vue').Ref<any, any>;
observerRef: IntersectionObserver;
dataRef: import('vue').Ref<any[], any[]>;
groupPanelDivRef: import('vue').Ref<any, any>;
dropElementClueRef: import('vue').Ref<any, any>;
dragElementClueRef: import('vue').Ref<any, any>;
headerRef: import('vue').Ref<any, any>;
footerRef: import('vue').Ref<any, any>;
gridNavRef: import('vue').Ref<any, any>;
colGroupRef: import('vue').Ref<any, any>;
scrollContainerRef: import('vue').Ref<any, any>;
tableBodyRef: import('vue').Ref<any, any>;
gridStateContext: any;
shouldUpdateLeftRightRef: import('vue').Ref<boolean, boolean>;
resizedRef: import('vue').Ref<boolean, boolean>;
currentColumnsState: GridColumnState[];
vsRef: VirtualScroll;
virtualSkipRef: import('vue').Ref<number, number>;
stickyHeaderItems: import('vue').Ref<any[], any[]>;
stickyHeaderRef: import('vue').Ref<any, any>;
stickyFooterItems: import('vue').Ref<any[], any[]>;
stickyFooterRef: import('vue').Ref<any, any>;
pinnedTopRef: import('vue').Ref<any, any>;
pinnedBottomRef: import('vue').Ref<any, any>;
csvExportRef: import('vue').Ref<{
save: () => void;
getBlob: () => Blob;
}, BaseCSVExportMethods | {
save: () => void;
getBlob: () => Blob;
}>;
sticky: import('vue').Ref<{
headerItems: any[];
footerItems: any[];
}, {
headerItems: any[];
footerItems: any[];
} | {
headerItems: any[];
footerItems: any[];
}>;
scrollToStickyGroup: (group: import('@progress/kendo-vue-data-tools').GroupState) => void;
updateStickyGroups: () => void;
}, {
isRtl: boolean;
context: any;
navigation: any;
showLicenseWatermark: boolean;
licenseMessage: any;
notHiddenColumns: any[];
contextMenuState: {
show: boolean;
offset: {
left: number;
top: number;
};
dataItem: any;
field: string;
};
}, {
gridId(): string;
idPrefix(): any;
groupExpandable(): import('@progress/kendo-vue-data-tools').TableGroupExpandableSettings;
hierarchClass(): string | {
[key: string]: boolean;
};
computedRowSpannable(): Required<import('./interfaces/GridRowSpannableSettings').GridRowSpannableSettings>;
computedSelectable(): Required<import('@progress/kendo-vue-data-tools').TableSelectableSettings>;
detailExpandable(): import('@progress/kendo-vue-data-tools').TableExpandableSettings;
nonscrollableWrapperClass(): {
[x: string]: any;
'k-grid': boolean;
'k-grid-md': boolean;
};
scrollableWrapperClass(): any;
gridTableClass(): {
[x: string]: any;
'k-table': boolean;
'k-grid-table': boolean;
'k-grid-md': boolean;
};
getCorrectHeight(): any;
currentGroupable(): any;
computedCollapsed(): any[];
getAriaRowCount(): any;
getAriaColCount(): any;
isVirtualScroll(): boolean;
pinnedSourceSet(): Set<unknown>;
sortedPinnedTopRows(): any;
sortedPinnedBottomRows(): any;
hasPinnedTopRows(): boolean;
hasPinnedBottomRows(): boolean;
contextMenuColumn(): any;
headMenuItems(): GridContextMenuItemNames[];
bodyMenuItems(): GridContextMenuItemNames[];
contextMenuItems(): any;
}, {
getCellPositionStyle(cellPosition: {
left?: number;
right?: number;
}, isRtl: boolean): Record<string, string>;
handleContextMenuOpen(event: MouseEvent, dataItem?: any, field?: string): void;
handleContextMenuClose(): void;
inActiveElement(): boolean;
handleClipboardEvent(clipboardType: ClipboardActionType, event: ClipboardEvent | Event, contextMenuActionSettings?: ClipboardSettings, dataItem?: any, field?: string): void;
handleContextMenuSelect(e: any): void;
renderContextMenu(): import("vue/jsx-runtime").JSX.Element;
filterPinContextMenuItems(items: any[]): any[];
handleContextMenuItemClick(e: {
event: any;
dataItem?: any;
field?: string;
}): void;
triggerCellContextMenu(nativeEvent: MouseEvent, dataItem?: any, field?: string): void;
handleIntersection(entries: IntersectionObserverEntry[]): void;
scrollIntoView(options: {
rowIndex: number;
}): void;
setCurrentOnTop(options: {
rowIndex: number;
}): void;
getTotal(): any;
exportAsCsv(): void;
getCsvBlob(): Blob | null;
readColumnElements(): ExtendedColumnProps[];
getResolvedFlatColumnsState(): GridColumnState[];
filterColumns(columns: ExtendedColumnProps[]): ExtendedColumnProps[][];
getFlatData(initialData: Array<any>, groupingFooter: 'always' | 'visible' | 'none', skip: number, group: any, expand?: DetailExpandDescriptor, groupExpand?: GroupExpandDescriptor[], dataItemKey?: string): {
flattedData: any[];
resolvedGroupsCount: number;
};
getColumnsEssentialProps(columns: any[]): string;
calculateMedia(): void;
filterHiddenColumns(columns: GridColumnProps[]): GridColumnProps[];
/**
* A getter of the current columns. Gets the current column width or current columns,
* or any other [`GridColumnProps`]({% slug api_grid_gridcolumnprops %}) for each defined column.
* Can be used on each Grid instance. To obtain the instance of the rendered Grid, use the `ref`
* callback. The following example demonstrates how to reorder the columns by dragging their handlers
* and check the properties afterwards. You can check the result in the browser console.
*/
getColumns(): GridColumnProps[];
setRefs(): void;
gridUnmounted(): void;
isAllData(): boolean;
resetVirtualSkip(): void;
virtualPageChange(page: Page, targetEvent?: PagerTargetEvent): void;
initializeVirtualization(): void;
setContainerHeight(): void;
setMinRowHeight(): void;
onRowHeightChanged(_value: number, _oldValue: number): void;
onHeaderScroll(event: Event): void;
scrollHandler(event: any): void;
rowClick(e: any, item: any): void;
rowDoubleClick(e: any, item: any): void;
loopGroupedItems(dataItems: any, func: any, level?: number, item?: any): any;
updateGroupCollapsed(event: {
dataItem: any;
event: any;
level: number;
field?: string;
value?: any;
}): any;
itemChange(event: {
dataItem: any;
event: any;
field?: string;
value?: any;
}): void;
cellClickHandler(event: any): void;
cellKeydownHandler(event: any): void;
navigationActionHandler(event: any): void;
editHandler(dataItem: any): void;
removeHandler(dataItem: any): void;
saveHandler(dataItem: any): void;
cancelHandler(dataItem: any): void;
selectionChangeHandler(options: {
event: {
event: any;
};
dataItem: any;
dataIndex: number;
columnIndex: number;
}): void;
onKeyboardSelectionChangeHandler(event: KeyboardEvent): void;
onHeaderSelectionChangeHandler(event: any): void;
selectionRelease(event: GridDragSelectionReleaseEvent): void;
clearSelection(event: TableSelectionChangeEvent): void;
raiseSelectionEvent(selectionEvent: TableSelectionChangeEvent, newSelectedState: SelectDescriptor): void;
moveToNextPage(event: KeyboardEvent): void;
moveToPrevPage(event: KeyboardEvent): void;
pageChangeHandler(page: Page, event: any): void;
sortChangeHandler(sort: SortDescriptor[], event: any): void;
filterChangeHandler(filter: CompositeFilterDescriptor, event: any): void;
groupChangeHandler(groups: GroupDescriptor[], event: any): void;
handleDetailExpandAction(action: DetailExpandAction, event: any): void;
handleGroupExpandAction(action: GroupExpandAction, event: any): void;
raiseDataEvent(handler: string, data: {}, moreData: State, event: any): void;
columnReorder(prev: number, next: number, event: any): void;
groupReorder(prevIndex: number, nextIndex: number, event: any): void;
columnToGroup(columnIndex: number, groupIndex: number, event: any): void;
resetTableWidth(): void;
setStickyFooterOffset(): void;
onResize(index: number, newWidth: number, oldWidth: number, event: any, end: boolean, colState: GridColumnState[], targetId?: string): void;
initColumnsState(columns: ExtendedColumnProps[], oldColumnsState: GridColumnState[]): void;
configureColumns(columns: ExtendedColumnProps[], groupCount: number): void;
initColumns(data: any[], groupCount: number): void;
resolveTitle(field: string): string;
findColumnByField(field: string): any;
searchColumn(column: any, field: String): any;
getDataState(): {
filter: any;
sort: any;
skip: any;
take: any;
group: any;
};
getArguments(event: any): {
event: any;
target: any;
};
getLeafDataItems(): any;
totalGroupedRows(gridData: Array<any>): number;
addSubItems(gridData: Array<any>, allRowsCount: number): number;
searchChange(event: GridSearchBoxChangeEvent): void;
getCellsToRender(dataItem: any, leafColumns: any[]): GridCellRenderModel[];
calcVirtualPageSize(): any;
getRowPinPosition(dataItem: any): string;
handleRowPin(action: string, dataItem: any): void;
pinnedSelectionRelease(event: GridDragSelectionReleaseEvent, dataItem: any): void;
}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
toolbar: {
type: ObjectConstructor;
};
noRecords: {
type: ObjectConstructor;
};
id: import('vue').PropType<string>;
autoProcessData: import('vue').PropType<boolean | import('./utils/dataProcessing').AutoProcessDataConfig>;
topCacheCount: {
type: import('vue').PropType<number>;
default: number;
};
collapsedGroups: {
type: import('vue').PropType<any[][]>;
default: () => any[];
};
uniqueField: import('vue').PropType<string>;
totalGroupedHeight: import('vue').PropType<number>;
allGroupedItems: import('vue').PropType<import('@progress/kendo-data-query').DataResult>;
alternatePerGroup: import('vue').PropType<boolean>;
columns: import('vue').PropType<GridColumnProps[]>;
columnsState: {
type: import('vue').PropType<GridColumnState[]>;
default: () => any;
};
cells: import('vue').PropType<import('.').GridCellsSettings>;
contextMenu: import('vue').PropType<boolean | GridContextMenuOptions | ((options: import('./contextMenu/GridContextMenu').GridCellBaseOptions) => boolean | GridContextMenuOptions)>;
rows: import('vue').PropType<import('./interfaces/GridRowsSettings').GridRowsSettings>;
defaultColumnsState: {
type: import('vue').PropType<GridColumnState[]>;
default: () => any;
};
columnVirtualization: import('vue').PropType<boolean>;
dataItems: import('vue').PropType<any[] | import('@progress/kendo-data-query').DataResult>;
sortable: import('vue').PropType<import('.').GridSortSettings>;
defaultSort: import('vue').PropType<SortDescriptor[]>;
sort: import('vue').PropType<SortDescriptor[]>;
filterable: import('vue').PropType<boolean>;
filterOperators: import('vue').PropType<import('./interfaces/GridFilterOperators').GridFilterOperators>;
filterCellRender: import('vue').PropType<any>;
headerCellRender: import('vue').PropType<any>;
showLoader: {
type: import('vue').PropType<boolean>;
default: any;
};
loader: import('vue').PropType<string | Object | Function>;
lockGroups: import('vue').PropType<boolean>;
pinnable: import('vue').PropType<boolean>;
defaultPinnedTopRows: import('vue').PropType<any[]>;
defaultPinnedBottomRows: import('vue').PropType<any[]>;
pinnedTopRows: import('vue').PropType<any[]>;
pinnedBottomRows: import('vue').PropType<any[]>;
defaultFilter: import('vue').PropType<CompositeFilterDescriptor>;
filter: import('vue').PropType<CompositeFilterDescriptor>;
defaultSearch: import('vue').PropType<CompositeFilterDescriptor>;
search: import('vue').PropType<CompositeFilterDescriptor>;
searchFields: import('vue').PropType<(string | SearchField)[]>;
highlight: import('vue').PropType<{
[id: string]: boolean | {
[id: string]: boolean;
};
}>;
pageable: import('vue').PropType<any>;
pageSize: import('vue').PropType<number>;
total: import('vue').PropType<number>;
fixedScroll: import('vue').PropType<boolean>;
skip: import('vue').PropType<number>;
defaultSkip: import('vue').PropType<number>;
take: import('vue').PropType<number>;
defaultTake: import('vue').PropType<number>;
expandField: import('vue').PropType<string>;
expandColumn: import('vue').PropType<GridColumnProps>;
selectedField: import('vue').PropType<string>;
cellRender: import('vue').PropType<string | boolean | ((h: any, defaultRendering: any, props: GridCellProps, listeners: any) => any)>;
rowRender: import('vue').PropType<string | boolean | ((h: any, defaultRendering: any, defaultSlots: any, props: any, listeners: any) => any)>;
rowSpannable: import('vue').PropType<boolean | import('./interfaces/GridRowSpannableSettings').GridRowSpannableSettings>;
resizable: import('vue').PropType<boolean>;
reorderable: import('vue').PropType<boolean>;
group: import('vue').PropType<GroupDescriptor[]>;
defaultGroup: import('vue').PropType<GroupDescriptor[]>;
groupable: import('vue').PropType<boolean | GridGroupableSettings>;
groupExpand: import('vue').PropType<GroupExpandDescriptor[]>;
defaultGroupExpand: import('vue').PropType<GroupExpandDescriptor[]>;
detailExpand: import('vue').PropType<DetailExpandDescriptor>;
defaultDetailExpand: import('vue').PropType<DetailExpandDescriptor>;
editField: import('vue').PropType<string>;
rowClass: import('vue').PropType<Function>;
select: import('vue').PropType<SelectDescriptor>;
defaultSelect: import('vue').PropType<SelectDescriptor>;
selectable: import('vue').PropType<boolean | import('./interfaces/GridSelectableSettings').GridSelectableSettings>;
scrollable: {
type: import('vue').PropType<string>;
default: string;
};
size: {
type: import('vue').PropType<string>;
default: string;
validator: (value: string) => any;
};
dir: import('vue').PropType<string>;
pager: import('vue').PropType<string | boolean | Object | Function>;
rowHeight: import('vue').PropType<number>;
detailRowHeight: import('vue').PropType<number>;
detail: import('vue').PropType<any>;
columnMenu: import('vue').PropType<any>;
columnMenuAnimate: {
type: import('vue').PropType<boolean | import('@progress/kendo-vue-popup').PopupAnimation>;
default: () => boolean;
};
columnMenuIcon: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
name: StringConstructor;
icon: ObjectConstructor;
themeColor: {
type: StringConstructor;
};
size: {
type: StringConstructor;
};
flip: {
type: StringConstructor;
};
fillMode: {
type: StringConstructor;
};
variant: {
type: StringConstructor;
};
id: StringConstructor;
ariaLabel: StringConstructor;
title: StringConstructor;
viewBox: {
type: StringConstructor;
default: string;
};
tabIndex: NumberConstructor;
svgClassName: StringConstructor;
svgStyle: ObjectConstructor;
}>, {}, {}, {
wrapperClass(this: import('@progress/kendo-vue-common').SvgIconAll): {
[x: string]: any;
[x: number]: any;
'k-icon': boolean;
'k-svg-icon': boolean;
'k-flip-h': boolean;
'k-flip-v': boolean;
};
}, {
handleClick(e: any): void;
}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
click: any;
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
name: StringConstructor;
icon: ObjectConstructor;
themeColor: {
type: StringConstructor;
};
size: {
type: StringConstructor;
};
flip: {
type: StringConstructor;
};
fillMode: {
type: StringConstructor;
};
variant: {
type: StringConstructor;
};
id: StringConstructor;
ariaLabel: StringConstructor;
title: StringConstructor;
viewBox: {
type: StringConstructor;
default: string;
};
tabIndex: NumberConstructor;
svgClassName: StringConstructor;
svgStyle: ObjectConstructor;
}>> & Readonly<{
onClick?: (...args: any[] | unknown[]) => any;
}>, {
viewBox: string;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
dataItemKey: StringConstructor;
navigatable: {
type: import('vue').PropType<boolean>;
default: boolean;
};
onItemchange: import('vue').PropType<(event: GridItemChangeEvent) => void>;
onExpandchange: import('vue').PropType<(event: GridExpandChangeEvent) => void>;
onDatastatechange: import('vue').PropType<(event: import('./interfaces/events').GridDataStateChangeEvent) => void>;
onPagechange: import('vue').PropType<(event: import('./interfaces/events').GridPageChangeEvent) => void>;
onSortchange: import('vue').PropType<(event: import('./interfaces/events').GridSortChangeEvent) => void>;
onFilterchange: import('vue').PropType<(event: import('./interfaces/events').GridFilterChangeEvent) => void>;
onGroupchange: import('vue').PropType<(event: import('./interfaces/events').GridGroupChangeEvent) => void>;
onSearchchange: import('vue').PropType<(event: import('./interfaces/events').GridSearchChangeEvent) => void>;
onGroupexpandchange: import('vue').PropType<(event: import('./interfaces/events').GridGroupExpandChangeEvent) => void>;
onDetailexpandchange: import('vue').PropType<(event: import('./interfaces/events').GridDetailExpandChangeEvent) => void>;
onContextmenu: import('vue').PropType<(event: GridContextMenuEvent) => void>;
onContextmenuitemclick: import('vue').PropType<(event: GridContextMenuItemClickEvent) => void>;
clipboard: import('vue').PropType<boolean | ClipboardSettings>;
onClipboard: import('vue').PropType<(event: GridClipboardEvent) => void>;
csv: import('vue').PropType<boolean | import('.').GridCSVExportOptions>;
onCsvexport: import('vue').PropType<(data: any[]) => any[]>;
}>> & Readonly<{}>, {
size: string;
scrollable: string;
navigatable: boolean;
columnMenuAnimate: boolean;
topCacheCount: number;
collapsedGroups: any[][];
columnsState: GridColumnState[];
defaultColumnsState: GridColumnState[];
showLoader: boolean;
}, {}, {}, {}, string, () => {
gridContext: {
dataItemKey: any;
searchChange: any;
selectionRelease: any;
pinnedSelectionRelease: any;
dispatchGroupExpand: any;
dispatchDetailExpand: any;
scrollToStickyGroup: any;
getCellPositionStyle: any;
onRowPin: any;
getRowPinPosition: any;
onContextMenu: any;
exportAsCsv: any;
};
sticky: any;
}, true, {}, any>;
export { Grid };