/** * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE */ import { SelectionModel } from '@angular/cdk/collections'; import { NzSafeAny } from 'ng-zorro-antd/core/types'; import { MagTableFilter } from '../model/mag-table-filter'; import { SelectableDataSourceOption } from '../model/selectable-data-source-option'; import { CrudDataSource2 } from './curd-data-source2'; /** * 데이터소스 내 selectable 에 대해서 two-way binding 용으로 사용할 수있는 노출용 래퍼 */ declare class TwoWayBindableSelected { private dataSource; private item; constructor(dataSource: SelectableZorroDataSource, item: T); get value(): boolean; set value(value: boolean); } export declare abstract class SelectableZorroDataSource extends CrudDataSource2 { private option; private _unsubscribeAll; selection: SelectionModel; displayItems: T[]; selectionAmount: number; tableFilter: MagTableFilter; selectedIds: {}; protected constructor(option?: SelectableDataSourceOption); private initSelectableDataSourceImpl; onDestroy(): void; updateData(data: T[], clearFilter?: boolean): void; isAllSelected(): boolean; isAllDisplayedSelected(): boolean; masterToggle(): void; isViewableSelected(): boolean; deselectRows(): void; selectRows(): void; masterChecked(): boolean; indeterminate(): boolean; toggle(item: T): void; select(item: T): void; deselect(item: T): void; isSelected(item: T): boolean; bindChecked(item: T): TwoWayBindableSelected; getSelected(): T[]; getSelectedCount(): number; hasSelected(): boolean; isAllowMasterSelection(): boolean; /** * 모델의 id 값을 리턴한다. * 필요시 오버라이드해서 사용해야한다. * @param model */ protected getIdFromModel(model: T): NzSafeAny; /** * deprecated */ selected(): T[]; getSelectedList(): T[]; getSelectedOne(): T | null; selectAll(): void; deselectAll(): void; refreshStatus(): void; add(model: T): void; remove(model: T): void; update(model: T): void; addOrUpdate(model: T): void; setDisplayItems(items: T[]): void; } export {};