@angular-mdc/web
Version:
60 lines (59 loc) • 2.56 kB
TypeScript
import { AfterViewInit, ElementRef, EventEmitter, OnDestroy, QueryList } from '@angular/core';
import { Observable } from 'rxjs';
import { MDCComponent } from '@angular-mdc/web/base';
import { MdcCheckbox, MdcCheckboxChange } from '@angular-mdc/web/checkbox';
import { MDCDataTableHeaderCell, MDCDataTableRow } from './data-table.directives';
import { MDCDataTableFoundation } from '@material/data-table';
export interface MDCDataTableRowSelectionChangedEvent {
index: number;
id: string | null;
selected: boolean;
}
export declare class MDCDataTable extends MDCComponent<MDCDataTableFoundation> implements AfterViewInit, OnDestroy {
elementRef: ElementRef;
/** Emits whenever the component is destroyed. */
private _destroyed;
private _headerCheckbox;
private _headerCheckboxSubscription;
/** Subscription to checkbox events in rows. */
private _rowCheckboxesSubscription;
/** Combined stream of all checkbox row change events. */
get rowCheckboxChanges(): Observable<MdcCheckboxChange>;
/** Emitted when all rows are selected. */
readonly selectedAll: EventEmitter<void>;
/** Emitted when all rows are unselected. */
readonly unselectedAll: EventEmitter<void>;
/** Emitted when a row is selected. */
readonly selectionChanged: EventEmitter<MDCDataTableRowSelectionChangedEvent>;
rows: QueryList<MDCDataTableRow>;
headerCells: QueryList<MDCDataTableHeaderCell>;
getDefaultFoundation(): MDCDataTableFoundation;
constructor(elementRef: ElementRef);
ngAfterViewInit(): void;
ngOnDestroy(): void;
/**
* Re-initializes header row checkbox and row checkboxes when selectable rows are added or removed from table.
* Use this if registering checkbox is asynchronous.
*/
layoutAsync(): Promise<void>;
/**
* Re-initializes header row checkbox and row checkboxes when selectable rows are added or removed from table.
* Use this if registering checkbox is synchronous.
*/
layout(): void;
/**
* @return Returns array of selected row ids.
*/
getSelectedRowIds(): Array<string | null>;
/**
* Sets selected row ids. Overwrites previously selected rows.
* @param rowIds Array of row ids that needs to be selected.
*/
setSelectedRowIds(rowIds: string[]): void;
getRows(): MDCDataTableRow[];
getHeaderCheckbox(): MdcCheckbox | undefined;
private _unsubscribeHeaderCheckbox;
private _unsubscribeRowCheckboxes;
private _registerHeaderCheckbox;
private _registerRowCheckboxes;
}