UNPKG

@syncfusion/ej2-grids

Version:

Feature-rich JavaScript datagrid (datatable) control with built-in support for editing, filtering, grouping, paging, sorting, and exporting to Excel.

69 lines (68 loc) 2.43 kB
import { IModelGenerator, IGrid } from '../base/interface'; import { Row } from '../models/row'; import { Column } from '../models/column'; import { Action } from '../base/enum'; import { RowModelGenerator } from '../services/row-model-generator'; /** * GroupModelGenerator is used to generate group caption rows and data rows. * * @hidden */ export declare class GroupModelGenerator extends RowModelGenerator implements IModelGenerator<Column> { private rows; /** @hidden */ index: number; private infiniteChildCount; private isInfiniteScroll; private renderInfiniteAgg; private summaryModelGen; private captionModelGen; constructor(parent?: IGrid); generateRows(data: { length: number; }, args?: { startIndex?: number; requestType?: Action; }): Row<Column>[]; private getGroupedRecords; private isRenderAggregate; private getPreCaption; private getCaptionRowCells; /** * @param {GroupedData} data - specifies the data * @param {number} indent - specifies the indent * @param {number} parentID - specifies the parentID * @param {number} childID - specifies the childID * @param {number} tIndex - specifies the TIndex * @param {string} parentUid - specifies the ParentUid * @returns {Row<Column>} returns the Row object * @hidden */ generateCaptionRow(data: GroupedData, indent: number, parentID?: number, childID?: number, tIndex?: number, parentUid?: string): Row<Column>; private getForeignKeyData; /** * @param {Object[]} data - specifies the data * @param {number} indent - specifies the indent * @param {number} childID - specifies the childID * @param {number} tIndex - specifies the tIndex * @param {string} parentUid - specifies the ParentUid * @returns {Row<Column>[]} returns the row object * @hidden */ generateDataRows(data: Object[], indent: number, childID?: number, tIndex?: number, parentUid?: string): Row<Column>[]; private generateIndentCell; refreshRows(input?: Row<Column>[]): Row<Column>[]; private setInfiniteRowVisibility; ensureRowVisibility(): void; } export interface GroupedData { GroupGuid?: string; items?: GroupedData; field?: string; isDataRow?: boolean; level?: number; key?: string; foreignKey?: string; count?: number; headerText?: string; }