UNPKG

igniteui-webcomponents-grids

Version:

Ignite UI Web Components grid components.

300 lines (192 loc) 8.28 kB
import { IgcGridBaseDirective } from './igc-grid-base-directive'; import { IgcForOfState } from './igc-for-of-state'; import { IgcGroupingExpression } from './igc-grouping-expression'; import { IgcGroupByExpandState } from './igc-group-by-expand-state'; import { IgcGroupingDoneEventArgs } from './igc-grouping-done-event-args'; import { IgcRenderFunction } from './common'; import { IgcGridMasterDetailContext } from './igc-grid-master-detail-context'; import { IgcGroupByRecord } from './igc-group-by-record'; import { IgcGridGroupingStrategy } from './igc-grid-grouping-strategy'; import { IgcGroupByRowSelectorTemplateContext } from './igc-group-by-row-selector-template-context'; import { IgcGroupByRowTemplateContext } from './igc-group-by-row-template-context'; import { IgcCellType } from './igc-cell-type'; import { IgcRowType } from './igc-row-type'; import { EventEmitterMixin, LitElement, Constructor, AbstractConstructor } from './common'; import { IgcGridBaseDirectiveEventMap } from './igc-grid-base-directive'; /* wcSkipComponentSuffix */ /* wcAlternateName: GridBase */ /* blazorIndirectRender blazorComponent omitModule wcSkipComponentSuffix */ /** * Grid provides a way to present and manipulate tabular data. */ export declare class IgcGridBaseComponent extends EventEmitterMixin<IgcGridBaseComponentEventMap, AbstractConstructor<IgcGridBaseDirective>>(IgcGridBaseDirective) { /** * Gets/Sets whether created groups are rendered expanded or collapsed. */ public set groupsExpanded(value: boolean); public get groupsExpanded(): boolean; /** * Gets/Sets the template that will be rendered as a GroupBy drop area. */ public set dropAreaTemplate(value: IgcRenderFunction<void>); public get dropAreaTemplate(): IgcRenderFunction<void>; /** * Returns a reference to the master-detail template. */ public set detailTemplate(value: IgcRenderFunction<IgcGridMasterDetailContext>); public get detailTemplate(): IgcRenderFunction<IgcGridMasterDetailContext>; /** * Gets/Sets the value of the `id` attribute. */ public set id(value: string); public get id(): string; /** * Gets the hierarchical representation of the group by records. */ public get groupsRecords(): IgcGroupByRecord[]; /** * Gets/Sets the array of data that populates the component. */ /* treatAsRef */ public set data(value: any[]); public get data(): any[]; /** * Gets/Sets the total number of records in the data source. */ public set totalItemCount(value: number); public get totalItemCount(): number; /* mustSetInCodePlatforms: WebComponents;Blazor;React */ /** * Gets/Sets the group by state. */ public set groupingExpressions(value: IgcGroupingExpression[]); public get groupingExpressions(): IgcGroupingExpression[]; /** * Gets/Sets a list of expansion states for group rows. */ public set groupingExpansionState(value: IgcGroupByExpandState[]); public get groupingExpansionState(): IgcGroupByExpandState[]; /** * Gets/Sets whether the grouped columns should be hidden. */ public set hideGroupedColumns(value: boolean); public get hideGroupedColumns(): boolean; /** * Gets/Sets the grouping strategy of the grid. */ public set groupStrategy(value: IgcGridGroupingStrategy); public get groupStrategy(): IgcGridGroupingStrategy; /** * Gets/Sets the message displayed inside the GroupBy drop area where columns can be dragged on. */ public set dropAreaMessage(value: string); public get dropAreaMessage(): string; /** * Gets the group by row selector template. */ public set groupByRowSelectorTemplate(value: IgcRenderFunction<IgcGroupByRowSelectorTemplateContext>); public get groupByRowSelectorTemplate(): IgcRenderFunction<IgcGroupByRowSelectorTemplateContext>; /** * Gets/Sets the template reference for the group row. */ public set groupRowTemplate(value: IgcRenderFunction<IgcGroupByRowTemplateContext>); public get groupRowTemplate(): IgcRenderFunction<IgcGroupByRowTemplateContext>; /** * Returns whether the grid has group area. */ public set showGroupArea(value: boolean); public get showGroupArea(): boolean; /** * Returns an array of the selected grid cells. */ public get selectedCells(): IgcCellType[]; /** * Groups by a new column based on the provided expression, or modifies an existing one. */ public groupBy(expression: IgcGroupingExpression[]): void; /** * Clears grouping for particular column, array of columns or all columns. * @param name Name of column or array of column names to be ungrouped. */ public clearGrouping(name?: string): void; /** * Returns if a group is expanded or not. * @param group The group record. */ public isExpandedGroup(group: IgcGroupByRecord): boolean; /** * Toggles the expansion state of a group. * @param groupRow The group record to toggle. */ public toggleGroup(groupRow: IgcGroupByRecord): void; /** * Select all rows within a group. * @param groupRow: The group record which rows would be selected. * @param clearCurrentSelection if true clears the current selection */ public selectRowsInGroup(groupRow: IgcGroupByRecord, clearPrevSelection?: boolean): void; /** * Deselect all rows within a group. * @param groupRow The group record which rows would be deselected. */ public deselectRowsInGroup(groupRow: IgcGroupByRecord): void; /** * Expands the specified group and all of its parent groups. * @param groupRow The group record to fully expand. */ public fullyExpandGroup(groupRow: IgcGroupByRecord): void; /** * Toggles the expansion state of all group rows recursively. */ public toggleAllGroupRows(): void; /** * Returns an array of the current cell selection in the form of `[{ column.field: cell.value }, ...]`. */ public getSelectedData(formatters?: boolean, headers?: boolean): any[]; /** * Returns the grid row by index. * @param index */ public getRowByIndex(index: number): IgcRowType; /** * Returns grid row object by the specified primary key. * @param keyValue */ public getRowByKey(key: any): IgcRowType; /** * Returns a `CellType` object that matches the conditions. * @param rowIndex * @param columnField */ public getCellByColumn(rowIndex: number, columnField: string): IgcCellType; /** * Returns a `CellType` object that matches the conditions. * @param rowSelector match any rowID * @param columnField */ public getCellByKey(rowSelector: any, columnField: string): IgcCellType; public pinRow(rowID: any, index?: number): boolean; public unpinRow(rowID: any): boolean; } export declare interface IgcGridBaseComponentEventMap extends IgcGridBaseDirectiveEventMap { /** * Emitted when a new chunk of data is loaded from virtualization. */ dataPreLoad: CustomEvent<IgcForOfState>; /** * Emitted when grouping is performed. */ groupingExpressionsChange: CustomEvent<IgcGroupingExpression[]>; /** * Emitted when groups are expanded/collapsed. */ groupingExpansionStateChange: CustomEvent<IgcGroupByExpandState[]>; /** * Emitted when columns are grouped/ungrouped. */ groupingDone: CustomEvent<IgcGroupingDoneEventArgs>; }