@nebular/theme
Version:
@nebular/theme
47 lines (46 loc) • 2.5 kB
TypeScript
import { Observable } from 'rxjs';
import { NbCollectionViewer } from '../../cdk/collections/collection-viewer';
import { NbDataSource } from '../../cdk/table/data-source';
import { NbSortable, NbSortRequest } from '../tree-grid-sort.component';
import { NbTreeGridDataService } from './tree-grid-data.service';
import { NbTreeGridFilterService } from './tree-grid-filter.service';
import { NbTreeGridSortService } from './tree-grid-sort.service';
import { NbGetters, NbTreeGridPresentationNode } from './tree-grid.model';
import { NbToggleOptions, NbTreeGridService } from './tree-grid.service';
export interface NbFilterable {
filter(filterRequest: string): any;
}
export declare class NbTreeGridDataSource<T> extends NbDataSource<NbTreeGridPresentationNode<T>> implements NbSortable, NbFilterable {
private sortService;
private filterService;
private treeGridService;
private treeGridDataService;
/** Stream that emits when a new data array is set on the data source. */
private data;
/** Stream emitting render data to the table (depends on ordered data changes). */
private readonly renderData;
private readonly filterRequest;
private readonly sortRequest;
constructor(sortService: NbTreeGridSortService<T>, filterService: NbTreeGridFilterService<T>, treeGridService: NbTreeGridService<T>, treeGridDataService: NbTreeGridDataService<T>);
setData<N>(data: N[], customGetters?: NbGetters<N, T>): void;
connect(collectionViewer: NbCollectionViewer): Observable<NbTreeGridPresentationNode<T>[] | ReadonlyArray<NbTreeGridPresentationNode<T>>>;
disconnect(collectionViewer: NbCollectionViewer): void;
expand(row: T): void;
collapse(row: T): void;
toggle(row: T, options?: NbToggleOptions): void;
toggleByIndex(dataIndex: number, options?: NbToggleOptions): void;
getLevel(rowIndex: number): number;
sort(sortRequest: NbSortRequest): void;
filter(searchQuery: string): void;
protected updateChangeSubscription(): void;
private filterData;
private sortData;
}
export declare class NbTreeGridDataSourceBuilder<T> {
private filterService;
private sortService;
private treeGridService;
private treeGridDataService;
constructor(filterService: NbTreeGridFilterService<T>, sortService: NbTreeGridSortService<T>, treeGridService: NbTreeGridService<T>, treeGridDataService: NbTreeGridDataService<T>);
create<N>(data: N[], customGetters?: NbGetters<N, T>): NbTreeGridDataSource<T>;
}