import { AfterViewInit, ChangeDetectorRef, EventEmitter, OnDestroy, QueryList, TrackByFunction } from '@angular/core'; import { MatTreeFlatDataSource } from '@angular/material/tree'; import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling'; import { ITreeNode, IFlatNodeObject } from './models/tree.models'; import { UiTreeItemComponent } from './ui-tree-item/ui-tree-item.component'; import * as i0 from "@angular/core"; export declare class UiTreeSelectComponent implements AfterViewInit, OnDestroy { private _cd; items: QueryList; headerTemplate?: any; itemTemplate?: any; itemSize: number; expandOnSelect: boolean; loading: boolean; /** * Path of keys key to the node that will be selected by default. The node must be present in the data array * If the node is a lower level node, the parent nodes must be present in the data array and then they will be expanded automatically */ set initialSelection(value: string[] | null); itemPadding: string; /** * Emits an array of the selected nodes (keep in mind they are clones of the original nodes) */ selected: EventEmitter[]>; /** * Emits a clone of the original node when it's expanded */ expanded: EventEmitter>; /** * Emits a clone of the original node when it's collapsed */ collapsed: EventEmitter>; /** * An array of nodes. Keep in mind they will be flattened when rendered in the tree */ set data(value: ITreeNode[] | null); get dataSource(): MatTreeFlatDataSource, IFlatNodeObject, string | number>; viewport?: CdkVirtualScrollViewport; currentSelectedNodes: Map>; private _keyManager; private _treeControl; private _dataSource; private _initialSelection; private _connectedData$; private _selectNode$; private _destroyed$; constructor(_cd: ChangeDetectorRef); ngAfterViewInit(): void; ngOnDestroy(): void; onKeydown(event: KeyboardEvent): void; isExpanded(node: IFlatNodeObject): boolean; isSelected(node: IFlatNodeObject): boolean; trackById(_idx: number, node: IFlatNodeObject): TrackByFunction; select(node: IFlatNodeObject, opts?: { emitEvent: boolean; }): void; expand(node: IFlatNodeObject, opts?: { emitEvent: boolean; }): void; collapse(node: IFlatNodeObject): void; toggle(node: IFlatNodeObject): ($event: MouseEvent) => void; collapseAll(): void; private _preventDefault; private _customKeydownHandle; private _selectInitialNode; private _handleArrowLeft; private _isNodeInViewport; /** * The index of an item in the rendered items array (or the list manager items) * is different than the index of an item in the initial data array * * @param key the key of a node * @returns the index of the node in the rendered items array */ private _convertKeyToRenderedItemsIndex; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }