@ohu-mobile/core
Version:
68 lines (67 loc) • 3.03 kB
TypeScript
import { TreeSelectProps, TreeSelectEvents, TreeNode, TreeSelectLoadDataFunc, InternalTreeNode } from './types';
import { IconProperty } from '../types';
export interface InternalTreeData {
[key: string]: InternalTreeNode;
}
export interface TreeSelectData {
internalTreeData: InternalTreeData;
leftData: string[];
leftKey: string;
cachedExpandKey: Record<string, boolean>;
}
export interface TreeSelectInnerProps extends TreeSelectData {
formatData: (treeData: TreeNode[], currentKey?: string) => TreeSelectData;
}
export interface CheckboxAttach {
path: string[];
option: InternalTreeNode;
}
declare const _default: import("vue-tsx-support")._TsxComponentV3<import("vue").default<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => import("vue").default<Record<string, any>, Record<string, any>, never, never, any>> & TreeSelectInnerProps & import("../_utils/defineComponent").OhuComponentInnerProps & {
internalValue: any;
internalKey: string;
internalTreeData: InternalTreeData;
leftData: string[];
leftKey: string;
cachedExpandKey: Record<string, boolean>;
} & {
formatData(treeData: TreeNode[], currentKey?: string): {
internalTreeData: InternalTreeData;
leftData: string[];
leftKey: string;
cachedExpandKey: Record<string, boolean>;
};
handleChange(value: any, { path, option }: CheckboxAttach): void;
handleLeftPanelClick(key: string): void;
isNodeActive(node: InternalTreeNode): boolean;
scrollToActiveNode(): void;
cascadeNodeLoad(node: InternalTreeNode, key: string, depth: number, keyPath: (string | number)[]): void;
cascadeLoad(keyPath: (string | number)[], depth?: number, keys?: string[]): void;
formatNodes(key: string, nodes: TreeNode[], option: InternalTreeNode): void;
loadDataWhenExpand(key: string, option: InternalTreeNode, successCallback?: () => void, errorCallback?: () => void): void;
handleCollapseExpand(key: string | number): void;
handleCollapseShrink(key: string | number): void;
renderRightPanel(keys: string[], keyPath: string[], depth?: number): VueTsxSupport.JSX.Element;
} & {
treeData: TreeNode[];
value: any;
keyPath: (string | number)[] | undefined;
multiple: boolean;
loadData: TreeSelectLoadDataFunc | undefined;
leftWidth: string;
checkedIcon: IconProperty | null | undefined;
unCheckedIcon: IconProperty | null | undefined;
max: number | undefined;
scrollIntoView: boolean;
}, {}, {} & {
value?: any;
multiple?: boolean | undefined;
checkedIcon?: IconProperty | null | undefined;
unCheckedIcon?: IconProperty | null | undefined;
max?: number | undefined;
loadData?: TreeSelectLoadDataFunc | undefined;
treeData?: TreeNode[] | undefined;
keyPath?: (string | number)[] | undefined;
leftWidth?: string | undefined;
scrollIntoView?: boolean | undefined;
} & TreeSelectProps, TreeSelectEvents, {}, {}>;
export default _default;