import { SelectionModel } from '@angular/cdk/collections'; export declare class SimTreeControl { /** 为`expandAll`操作保存的树节点数据 */ dataNodes: T[]; /** 一种多选择跟踪扩展状态的选择模型 */ expansionModel: SelectionModel; /** 一种选择跟踪selected状态的选择模型 支持单/多选 */ private selectionModel; /** tree的checkbox的选中状态的选择模型 */ private checklistModel; /** 选择模式 */ private _multiple; /** * 初始化节点状态 * - isChecked 复选框状态 * - isSelected 节点选中状态 * - isExpanded 节点展开状态 */ setNodeInitState(): void; /** 设置 checkBox 被选中的节点的key列表 */ setCheckedKeys(keys: K[]): void; /** 设置节点被选中的节点的key列表 */ setSelectedKeys(keys: K[]): void; /** 设置节点展开的节点的key列表 */ setExpandedKeys(keys: K[]): void; /** * 设置选择模式 * @throws 设置以后之前的选中状态全部丢失,请慎重操作 * @param multiple 节点是否多选 * @param selectable 节点是否可被选中 */ setSelectMode(multiple: boolean, selectable?: boolean): void; /** 按 key 获取 TreeNode 节点 */ getNodeByKey(key: K): T | null; /** 获取组件被选中的节点集合 */ getSelectedNodeList(): T[]; /** 获取组件被选中的节点集合key */ getSelectedKeys(): K[]; /** 获取组件 checkBox 被点击选中的节点集合 */ getCheckedNodeList(): T[]; /** 获取组件 checkBox 被点击半选中的节点集合 */ getIndeterminateNodeList(): T[]; /** 获取组件 checkBox 被点击选中的节点集合key */ getCheckedKeys(): K[]; getParentNode(node: T): T | null; /** * 获取派生数据节点的数据节点子树的列表。 */ getDescendants(dataNode: T): T[]; /** 切换单个数据节点的扩展/折叠状态 */ toggle(dataNode: T): void; /** 展开单个数据节点 */ expand(dataNode: T): void; /** 折叠单个数据节点 */ collapse(dataNode: T): void; /** 给定数据节点是否展开。如果数据节点展开,则返回true。 */ isExpanded(dataNode: T): boolean; /** * 展开树中的所有数据节点 */ expandAll(): void; /** 折叠树中的所有数据 */ collapseAll(): void; /** 递归地切换以`node`为根的子树 */ toggleDescendants(dataNode: T): void; /** 递归展开以给定数据节点为根的子树 */ expandDescendants(dataNode: T): void; /** 递归地折叠以给定数据节点为根的子树 */ collapseDescendants(dataNode: T): void; /** 给定数据节点是否选中。如果数据节点选中,则返回true。 */ isSelected(dataNode: T): boolean; /** 切换单个数据节点的选中状态 */ toggleSelected(dataNode: T): void; /** 给定数据节点是否选中。如果数据节点选中,则返回true。 */ isChecked(dataNode: T): boolean; /** 给定数据节点是否半选中。如果数据节点半选中,则返回true。 */ isIndeterminate(dataNode: T): boolean; /** * 切换节点Checked状态。选择/取消选择所有的后代节点 */ toggleChecked(dataNode: T): void; checkAllParentsSelection(dataNode: T): void; /** 检查根节点的检查状态并相应地更改它 */ checkRootNodeSelection(dataNode: T): void; /** 是否选择节点的所有后代 */ descendantsAllSelected(node: T): boolean; /** 是否有部分后代被选中 */ descendantsPartiallySelected(node: T): boolean; /** 是否有子元素,如果存在标识节点,不存在标识叶子 */ isExpandable(node: T): boolean; /** 获取给定数据节点的深度,返回级别序号 */ getLevel(node: T): number; /** * 返回一个标识符,在dataNode的引用发生变化时,根据该标识符跟踪dataNode。 * * 类似于`*ngFor`的`trackBy` */ private _trackByValue; }