UNPKG

2.5 kBTypeScriptView Raw
1import { Observable } from 'rxjs';
2import { NbCollectionViewer } from '../../cdk/collections/collection-viewer';
3import { NbDataSource } from '../../cdk/table/data-source';
4import { NbSortable, NbSortRequest } from '../tree-grid-sort.component';
5import { NbTreeGridDataService } from './tree-grid-data.service';
6import { NbTreeGridFilterService } from './tree-grid-filter.service';
7import { NbTreeGridSortService } from './tree-grid-sort.service';
8import { NbGetters, NbTreeGridPresentationNode } from './tree-grid.model';
9import { NbToggleOptions, NbTreeGridService } from './tree-grid.service';
10export interface NbFilterable {
11 filter(filterRequest: string): any;
12}
13export declare class NbTreeGridDataSource<T> extends NbDataSource<NbTreeGridPresentationNode<T>> implements NbSortable, NbFilterable {
14 private sortService;
15 private filterService;
16 private treeGridService;
17 private treeGridDataService;
18 /** Stream that emits when a new data array is set on the data source. */
19 private data;
20 /** Stream emitting render data to the table (depends on ordered data changes). */
21 private readonly renderData;
22 private readonly filterRequest;
23 private readonly sortRequest;
24 constructor(sortService: NbTreeGridSortService<T>, filterService: NbTreeGridFilterService<T>, treeGridService: NbTreeGridService<T>, treeGridDataService: NbTreeGridDataService<T>);
25 setData<N>(data: N[], customGetters?: NbGetters<N, T>): void;
26 connect(collectionViewer: NbCollectionViewer): Observable<NbTreeGridPresentationNode<T>[] | ReadonlyArray<NbTreeGridPresentationNode<T>>>;
27 disconnect(collectionViewer: NbCollectionViewer): void;
28 expand(row: T): void;
29 collapse(row: T): void;
30 toggle(row: T, options?: NbToggleOptions): void;
31 toggleByIndex(dataIndex: number, options?: NbToggleOptions): void;
32 getLevel(rowIndex: number): number;
33 sort(sortRequest: NbSortRequest): void;
34 filter(searchQuery: string): void;
35 protected updateChangeSubscription(): void;
36 private filterData;
37 private sortData;
38}
39export declare class NbTreeGridDataSourceBuilder<T> {
40 private filterService;
41 private sortService;
42 private treeGridService;
43 private treeGridDataService;
44 constructor(filterService: NbTreeGridFilterService<T>, sortService: NbTreeGridSortService<T>, treeGridService: NbTreeGridService<T>, treeGridDataService: NbTreeGridDataService<T>);
45 create<N>(data: N[], customGetters?: NbGetters<N, T>): NbTreeGridDataSource<T>;
46}