interface TreeProps<T, K> {
    actions?: TreeNodeActionItem<T, K>[];
    addText?: ReactNode;
    allowDragOver?: ((event: DragEvent<HTMLDivElement>, dropToNode: TreeNodeType<T, K>, draggedNode?: TreeNodeType<T, K>) => boolean);
    canAdd?: boolean;
    canHasChildren?: boolean | TreeNodeConditionFunc<T, K>;
    canSelectDisabled?: boolean;
    colorScheme?: ColorScheme;
    columns: TreeColumn<T, K>[];
    cursorKey?: string;
    disabledNodes?: K[];
    externalDraggedNode?: TreeNodeType<T, K>;
    filter?: ((node: TreeNodeType<T, K>) => boolean);
    flatNodes?: T[];
    isActionsEnabled?: ((node: TreeNodeType<T, K>) => boolean);
    isAddButtonDisabled?: boolean;
    isAutoHeightFill?: boolean;
    isDeletable?: boolean | TreeNodeConditionFunc<T, K>;
    isDraggable?: boolean;
    isEditable?: boolean | TreeNodeConditionFunc<T, K>;
    isLoading?: boolean;
    isStriped?: boolean;
    maxRowsBeforeOverflow?: number;
    nodeRenderer?: ((node: TreeNodeType<T, K>, nodeProps: TreeNodeProps<T, K>, defaultRenderer: ((node: TreeNodeType<T, K>, props: TreeNodeProps<T, K>) => ReactElement<any, string | JSXElementConstructor<any>>)) => ReactElement<any, string | JSXElementConstructor<any>>);
    nodes: TreeNodeType<T, K>[];
    onAddNode?: (() => void);
    onBeforeNodeSelect?: ((node: TreeNodeType<T, K>) => boolean);
    onDragEnd?: ((event: DragEvent<HTMLDivElement>) => void);
    onDragStart?: ((event: DragEvent<HTMLDivElement>, node: TreeNodeType<T, K>) => void);
    onDrop?: ((event: DragEvent<HTMLDivElement>, node: TreeNodeType<T, K>) => void);
    onEdit?: ((node: TreeNodeType<T, K>, newValue: string, cellId: string) => void);
    onMoveNode?: ((node: TreeNodeType<T, K>, parentNode?: TreeNodeType<T, K>, previousNode?: TreeNodeType<T, K>) => void);
    onNodeCollapse?: ((node: TreeNodeType<T, K>) => void);
    onNodeDelete?: ((node: TreeNodeType<T, K>) => void);
    onNodeDoubleClick?: ((node: TreeNodeType<T, K>, event: SyntheticEvent<HTMLDivElement, Event>) => void);
    onNodeExpand?: ((node: TreeNodeType<T, K>) => void);
    onNodeMouseEnter?: ((node: TreeNodeType<T, K>) => void);
    onNodeMouseLeave?: ((node: TreeNodeType<T, K>) => void);
    onNodeSelect?: ((node: TreeNodeType<T, K>) => void);
    rightExtraItem?: ((nodeData: T) => ReactNode);
    selectedNodes: K[];
}

Type Parameters

Properties

actions?: TreeNodeActionItem<T, K>[]
addText?: ReactNode
allowDragOver?: ((event: DragEvent<HTMLDivElement>, dropToNode: TreeNodeType<T, K>, draggedNode?: TreeNodeType<T, K>) => boolean)
canAdd?: boolean
canHasChildren?: boolean | TreeNodeConditionFunc<T, K>
canSelectDisabled?: boolean
colorScheme?: ColorScheme
columns: TreeColumn<T, K>[]
cursorKey?: string
disabledNodes?: K[]
externalDraggedNode?: TreeNodeType<T, K>
filter?: ((node: TreeNodeType<T, K>) => boolean)
flatNodes?: T[]
isActionsEnabled?: ((node: TreeNodeType<T, K>) => boolean)
isAddButtonDisabled?: boolean
isAutoHeightFill?: boolean
isDeletable?: boolean | TreeNodeConditionFunc<T, K>
isDraggable?: boolean
isEditable?: boolean | TreeNodeConditionFunc<T, K>
isLoading?: boolean
isStriped?: boolean
maxRowsBeforeOverflow?: number
nodeRenderer?: ((node: TreeNodeType<T, K>, nodeProps: TreeNodeProps<T, K>, defaultRenderer: ((node: TreeNodeType<T, K>, props: TreeNodeProps<T, K>) => ReactElement<any, string | JSXElementConstructor<any>>)) => ReactElement<any, string | JSXElementConstructor<any>>)
nodes: TreeNodeType<T, K>[]
onAddNode?: (() => void)
onBeforeNodeSelect?: ((node: TreeNodeType<T, K>) => boolean)
onDragEnd?: ((event: DragEvent<HTMLDivElement>) => void)
onDragStart?: ((event: DragEvent<HTMLDivElement>, node: TreeNodeType<T, K>) => void)
onDrop?: ((event: DragEvent<HTMLDivElement>, node: TreeNodeType<T, K>) => void)
onEdit?: ((node: TreeNodeType<T, K>, newValue: string, cellId: string) => void)
onMoveNode?: ((node: TreeNodeType<T, K>, parentNode?: TreeNodeType<T, K>, previousNode?: TreeNodeType<T, K>) => void)
onNodeCollapse?: ((node: TreeNodeType<T, K>) => void)
onNodeDelete?: ((node: TreeNodeType<T, K>) => void)
onNodeDoubleClick?: ((node: TreeNodeType<T, K>, event: SyntheticEvent<HTMLDivElement, Event>) => void)
onNodeExpand?: ((node: TreeNodeType<T, K>) => void)
onNodeMouseEnter?: ((node: TreeNodeType<T, K>) => void)
onNodeMouseLeave?: ((node: TreeNodeType<T, K>) => void)
onNodeSelect?: ((node: TreeNodeType<T, K>) => void)
rightExtraItem?: ((nodeData: T) => ReactNode)
selectedNodes: K[]