UNPKG

@mentor-apm/react-sortable-tree

Version:

Drag-and-drop sortable component for nested data and hierarchies

105 lines (104 loc) 3.07 kB
/// <reference types="react" /> import './react-sortable-tree.css'; declare type SearchParams = { node: any; path: number[]; treeIndex: number; searchQuery: string; }; declare type SearchFinishCallbackParams = { node: any; path: number[]; treeIndex: number; }[]; declare type GenerateNodePropsParams = { node: any; path: number[]; treeIndex: number; lowerSiblingCounts: number[]; isSearchMatch: boolean; isSearchFocus: boolean; }; declare type ShouldCopyOnOutsideDropParams = { node: any; prevPath: number[]; prevTreeIndex: number; }; declare type OnMoveNodeParams = { treeData: any[]; node: any; nextParentNode: any; prevPath: number[]; prevTreeIndex: number; nextPath: number[]; nextTreeIndex: number; }; declare type CanDropParams = { node: any; prevPath: number[]; prevParent: any; prevTreeIndex: number; nextPath: number[]; nextParent: any; nextTreeIndex: number; }; declare type OnVisibilityToggleParams = { treeData: any[]; node: any; expanded: boolean; path: number[]; }; declare type OnDragStateChangedParams = { isDragging: boolean; draggedNode: any; }; export declare type ReactSortableTreeProps = { dragDropManager?: { getMonitor: () => unknown; }; treeData: any[]; style?: any; className?: string; innerStyle?: any; slideRegionSize?: number; scaffoldBlockPxWidth?: number; maxDepth?: number; searchMethod?: (params: SearchParams) => boolean; searchQuery?: string; searchFocusOffset?: number; searchFinishCallback?: (params: SearchFinishCallbackParams) => void; generateNodeProps?: (params: GenerateNodePropsParams) => any; treeNodeRenderer?: any; nodeContentRenderer?: any; placeholderRenderer?: any; theme?: { style: any; innerStyle: any; scaffoldBlockPxWidth: number; slideRegionSize: number; treeNodeRenderer: any; nodeContentRenderer: any; placeholderRenderer: any; }; rowHeight?: number | ((treeIndex: number, node: any, path: any[]) => number); getNodeKey?: (node: any) => string; onChange: (treeData: any) => void; onMoveNode?: (params: OnMoveNodeParams) => void; canDrag?: (params: GenerateNodePropsParams) => boolean; canDrop?: (params: CanDropParams) => boolean; canNodeHaveChildren?: (node: any) => boolean; shouldCopyOnOutsideDrop?: (params: ShouldCopyOnOutsideDropParams) => boolean; onVisibilityToggle?: (params: OnVisibilityToggleParams) => void; dndType?: string; onDragStateChanged?: (params: OnDragStateChangedParams) => void; onlyExpandSearchedNodes?: boolean; debugMode?: boolean; overscan?: number | { main: number; reverse: number; }; }; declare const SortableTreeWithoutDndContext: (props: ReactSortableTreeProps) => JSX.Element; declare const SortableTree: (props: ReactSortableTreeProps) => JSX.Element; export { SortableTreeWithoutDndContext }; export default SortableTree;