@progress/kendo-angular-treelist
Version:
Kendo UI TreeList for Angular - Display hierarchical data in an Angular tree grid view that supports sorting, filtering, paging, and much more.
129 lines (128 loc) • 3.72 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 { Observable } from 'rxjs';
import { EventEmitter } from '@angular/core';
/**
* Represents the data type expected by the TreeList. Use this interface to provide the data and aggregates for the TreeList.
*
*/
export interface TreeListDataResult {
/**
* Represents the data rendered by the TreeList as an array.
*/
data: any[];
/**
* Represents the aggregated values for the group. An [`AggregateResult`](slug:treelist_with_aggregates) instance.
*/
aggregates?: any;
}
/**
* @hidden
*/
export interface ExpandState {
isExpanded: (item: any) => boolean;
}
/**
* @hidden
*/
export interface EditState {
context: (item: any) => any;
hasNew: (item: any) => boolean;
newItem: any;
}
/**
* @hidden
*/
export interface SelectionState {
isRowSelected: (item: any) => boolean;
}
/**
* @hidden
*/
export declare const EXPANDED_STATE: {
isExpanded: () => boolean;
};
/**
* @hidden
*/
export declare const UNSELECTED_STATE: {
isRowSelected: () => boolean;
};
/**
* @hidden
*/
export declare const NOT_EDITED_STATE: {
hasNew: () => boolean;
context: () => any;
};
/**
* @hidden
*/
export declare class ViewItemFactory {
private expandState;
private editState;
private selectionState;
private loaded;
private fieldAccessor;
observables: any[];
private rowIndex;
private rootLevel;
private fetchChildren;
private hasChildren;
private idGetter;
private hasFooter;
private viewRange;
private offsetFirst;
constructor(expandState: ExpandState, editState: EditState, selectionState: SelectionState, loaded: any, fieldAccessor: any, rootItem?: any);
generate(): any;
private loadChildren;
private dataLevel;
private addNew;
}
/**
* @hidden
*/
export declare class ViewCollection {
fieldAccessor: any;
expandState: ExpandState;
editState: EditState;
selectionState: SelectionState;
childrenLoaded: EventEmitter<any>;
dataLoaded: EventEmitter<any>;
resetPage: EventEmitter<any>;
total: number;
totalVisible: number;
loaded: any;
loading: boolean;
private _totalRows;
private loadingCount;
private childrenSubscription;
private _data;
static loadView(options: any): Observable<any>;
get totalRows(): number;
get data(): any[];
constructor(fieldAccessor: any, expandState: ExpandState, editState: EditState, selectionState: SelectionState);
get length(): number;
get first(): any;
get firstItem(): any;
get last(): any;
at(index: number): any;
itemIndex(item: any): number;
map(fn: (item: any, index: number, array: any[]) => any): any[];
filter(fn: (item: any, index: number, array: any[]) => boolean): any[];
findIndex(fn: any): number;
reduce(fn: (prevValue: any, curValue: any, curIndex: number, array: any[]) => any, init: any): any;
forEach(fn: (item: any, index: number, array: any[]) => void): void;
some(fn: (value: any, index: number, array: any[]) => boolean): boolean;
find(fn: (value: any, index: number, array: any[]) => boolean): any;
toString(): string;
updateSelectedState(): void;
updateEditedState(): void;
reset(): void;
resetItem(item: any, resetChildren: boolean): void;
clear(): void;
loadData(): void;
private unsubscribeChildren;
}