choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
49 lines (48 loc) • 1.96 kB
TypeScript
import * as React from 'react';
import { EventDataNode, DataNode, Key } from '../rc-components/tree/interface';
import Tree, { TreeProps } from './index';
import ConfigContext, { ConfigContextValue } from '../config-provider/ConfigContext';
export declare type ExpandAction = false | 'click' | 'doubleClick';
export interface DirectoryTreeProps extends TreeProps {
expandAction?: ExpandAction;
}
export interface DirectoryTreeState {
expandedKeys?: Key[];
selectedKeys?: Key[];
}
declare class DirectoryTree extends React.Component<DirectoryTreeProps, DirectoryTreeState> {
static get contextType(): typeof ConfigContext;
static defaultProps: {
showIcon: boolean;
expandAction: string;
};
static getDerivedStateFromProps(nextProps: DirectoryTreeProps): DirectoryTreeState;
context: ConfigContextValue;
state: DirectoryTreeState;
tree: Tree;
onDebounceExpand: (event: React.MouseEvent<HTMLElement>, node: EventDataNode) => void;
lastSelectedKey?: string;
cachedSelectedKeys?: string[];
constructor(props: DirectoryTreeProps);
onExpand: (expandedKeys: string[], info: {
node: EventDataNode;
expanded: boolean;
nativeEvent: MouseEvent;
}) => void;
onClick: (event: React.MouseEvent<HTMLElement, MouseEvent>, node: EventDataNode) => void;
onDoubleClick: (event: React.MouseEvent<HTMLElement, MouseEvent>, node: EventDataNode) => void;
onSelect: (keys: string[], event: {
event: "select";
selected: boolean;
node: any;
selectedNodes: DataNode[];
nativeEvent: MouseEvent;
}) => void;
setTreeRef: (node: Tree) => void;
expandFolderNode: (event: React.MouseEvent<HTMLElement, MouseEvent>, node: any) => void;
getPrefixCls(): string;
setUncontrolledState: (state: DirectoryTreeState) => void;
renderDirectoryTree: () => JSX.Element;
render(): JSX.Element;
}
export default DirectoryTree;