@progress/kendo-angular-grid
Version:
Kendo UI Grid for Angular - high performance data grid with paging, filtering, virtualization, CRUD, and more.
84 lines (83 loc) • 3.48 kB
TypeScript
/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { ChangeDetectorRef, AfterContentInit } from '@angular/core';
import { DataBindingDirective } from "../databinding.directive";
import { CompositeFilterDescriptor, GroupDescriptor, SortDescriptor, State } from "@progress/kendo-data-query";
import { GridDataResult } from "../data/data.collection";
import { VirtualGroupResult } from "./virtual-group-result.interface";
import { LocalDataChangesService } from "../editing/local-data-changes.service";
import { ContextService } from '../common/provider.service';
import { GroupsService } from './groups.service';
import * as i0 from "@angular/core";
/**
* @hidden
*/
export declare const count: (groups: any[], includeFooters?: boolean) => any;
/**
* @hidden
*/
export declare const noDescriptors: (descriptors?: any[]) => boolean;
/**
* @hidden
*/
export declare const slice: (groups: any[], skip: number, take: number, includeFooters?: boolean) => VirtualGroupResult[];
/**
* A directive which encapsulates the in-memory handling of grouping with virtual scrolling.
*/
export declare class GroupBindingDirective extends DataBindingDirective implements AfterContentInit {
private groupsService;
/**
* The array of data which will be used to populate the Grid.
*/
set kendoGridGroupBinding(value: any[]);
/**
* @hidden
*/
set data(value: any[]);
/**
* Defines the descriptors by which the data will be sorted.
*/
set sort(value: SortDescriptor[]);
/**
* Defines the descriptor by which the data will be filtered.
*/
set filter(value: CompositeFilterDescriptor);
/**
* Defines the descriptors by which the data will be grouped.
*/
set group(value: GroupDescriptor[]);
private groups;
private gridSubs;
constructor(changeDetector: ChangeDetectorRef, localDataChangesService: LocalDataChangesService, ctxService: ContextService, groupsService: GroupsService);
ngOnInit(): void;
ngAfterContentInit(): void;
ngOnDestroy(): void;
/**
* @hidden
*/
toggleAll(expand: boolean): void;
/**
* Collapses all expanded root level groups.
*/
collapseAll(): void;
/**
* Expands all expanded root level groups.
*/
expandAll(): void;
/**
* @hidden
*/
groupExpand({ groupIndex }: any): void;
/**
* @hidden
*/
groupCollapse({ groupIndex }: any): void;
protected process(state: State): GridDataResult;
protected processGroups(state: State): GridDataResult;
protected dataResult(skip: number, take: number): GridDataResult;
protected applyState({ skip, take, sort, group, filter }: State): void;
static ɵfac: i0.ɵɵFactoryDeclaration<GroupBindingDirective, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<GroupBindingDirective, "[kendoGridGroupBinding]", ["kendoGridGroupBinding"], { "kendoGridGroupBinding": { "alias": "kendoGridGroupBinding"; "required": false; }; "sort": { "alias": "sort"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "group": { "alias": "group"; "required": false; }; }, {}, never, never, true, never>;
}