import { VtsSafeAny } from '@ui-vts-kit/ng-vts/core/types'; import { BehaviorSubject } from 'rxjs'; import { VtsTreeNode, VtsTreeNodeKey } from './vts-tree-base-node'; import { VtsFormatEmitEvent } from './vts-tree-base.definitions'; import * as i0 from "@angular/core"; export declare class VtsTreeBaseService { DRAG_SIDE_RANGE: number; DRAG_MIN_GAP: number; isCheckStrictly: boolean; isMultiple: boolean; selectedNode: VtsTreeNode; rootNodes: VtsTreeNode[]; flattenNodes$: BehaviorSubject; selectedNodeList: VtsTreeNode[]; expandedNodeList: VtsTreeNode[]; checkedNodeList: VtsTreeNode[]; halfCheckedNodeList: VtsTreeNode[]; matchedNodeList: VtsTreeNode[]; /** * reset tree nodes will clear default node list */ initTree(vtsNodes: VtsTreeNode[]): void; flattenTreeData(vtsNodes: VtsTreeNode[], expandedKeys?: VtsTreeNodeKey[] | true): void; getSelectedNode(): VtsTreeNode | null; /** * get some list */ getSelectedNodeList(): VtsTreeNode[]; /** * return checked nodes */ getCheckedNodeList(): VtsTreeNode[]; getHalfCheckedNodeList(): VtsTreeNode[]; /** * return expanded nodes */ getExpandedNodeList(): VtsTreeNode[]; /** * return search matched nodes */ getMatchedNodeList(): VtsTreeNode[]; isArrayOfVtsTreeNode(value: VtsSafeAny[]): boolean; /** * set drag node */ setSelectedNode(node: VtsTreeNode): void; /** * set node selected status */ setNodeActive(node: VtsTreeNode): void; /** * add or remove node to selectedNodeList */ setSelectedNodeList(node: VtsTreeNode, isMultiple?: boolean): void; /** * merge checked nodes */ setHalfCheckedNodeList(node: VtsTreeNode): void; setCheckedNodeList(node: VtsTreeNode): void; /** * conduct checked/selected/expanded keys */ conductNodeState(type?: string): VtsTreeNode[]; /** * set expanded nodes */ setExpandedNodeList(node: VtsTreeNode): void; setMatchedNodeList(node: VtsTreeNode): void; /** * check state * @param isCheckStrictly */ refreshCheckState(isCheckStrictly?: boolean): void; conduct(node: VtsTreeNode, isCheckStrictly?: boolean): void; /** * 1、children half checked * 2、children all checked, parent checked * 3、no children checked */ conductUp(node: VtsTreeNode): void; /** * reset child check state */ conductDown(node: VtsTreeNode, value: boolean): void; /** * flush after delete node */ afterRemove(nodes: VtsTreeNode[]): void; /** * drag event */ refreshDragNode(node: VtsTreeNode): void; resetNodeLevel(node: VtsTreeNode): void; calcDropPosition(event: DragEvent): number; /** * drop * 0: inner -1: pre 1: next */ dropAndApply(targetNode: VtsTreeNode, dragPos?: number): void; /** * emit Structure * eventName * node * event: MouseEvent / DragEvent * dragNode */ formatEvent(eventName: string, node: VtsTreeNode | null, event: MouseEvent | DragEvent | null): VtsFormatEmitEvent; /** * New functions for flatten nodes */ getIndexOfArray(list: VtsTreeNode[], key: string): number; /** * Render by vtsCheckedKeys * When keys equals null, just render with checkStrictly * @param keys * @param checkStrictly */ conductCheck(keys: VtsTreeNodeKey[] | null, checkStrictly: boolean): void; conductExpandedKeys(keys?: VtsTreeNodeKey[] | true): void; conductSelectedKeys(keys: VtsTreeNodeKey[], isMulti: boolean): void; /** * Expand parent nodes by child node * @param node */ expandNodeAllParentBySearch(node: VtsTreeNode): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }