UNPKG

ng-table-virtual-scroll

Version:
38 lines (37 loc) 1.62 kB
import { BehaviorSubject, Subject, Subscription } from 'rxjs'; import { MatTableDataSource } from '@angular/material/table'; import { DataSource } from '@angular/cdk/collections'; export interface TVSDataSource<T> { dataToRender$: Subject<T[]>; dataOfRange$: Subject<T[]>; } export declare function isTVSDataSource<T>(dataSource: unknown): dataSource is TVSDataSource<T>; export declare class CdkTableVirtualScrollDataSource<T> extends DataSource<T> implements TVSDataSource<T> { /** Stream that emits when a new data array is set on the data source. */ private readonly _data; /** Stream emitting render data to the table (depends on ordered data changes). */ private readonly _renderData; /** * Subscription to the changes that should trigger an update to the table's rendered rows, such * as filtering, sorting, pagination, or base data changes. */ _renderChangesSubscription: Subscription | null; /** Array of data that should be rendered by the table, where each object represents one row. */ get data(): T[]; set data(data: T[]); dataToRender$: Subject<T[]>; dataOfRange$: Subject<T[]>; private streamsReady; constructor(initialData?: T[]); _updateChangeSubscription(): void; connect(): BehaviorSubject<T[]>; disconnect(): void; private initStreams; } export declare class TableVirtualScrollDataSource<T> extends MatTableDataSource<T> implements TVSDataSource<T> { dataToRender$: Subject<T[]>; dataOfRange$: Subject<T[]>; private streamsReady; _updateChangeSubscription(): void; private initStreams; }