UNPKG

@idui/react-tree

Version:
41 lines (40 loc) 1.26 kB
import { CollapseToggleProps } from '@idui/react-collapse/dist/components/Collapse/types'; import { ReactElement } from 'react'; export declare type LeafRenderer<NodeObjectType, LeafType> = (props: CollapseToggleProps & NodeObjectType & LeafType & { hasChildren?: boolean; /** * TreeNode child nodes * @default [] */ childNodes?: NodeObjectType[]; }) => ReactElement; export declare type TreeNodeProps<NodeObjectType, LeafType> = LeafType & NodeObjectType & { /** * TreeNode child nodes * @default [] */ childNodes?: NodeObjectType[]; /** * Function, that accepts all node props and collapse props ({ open, close, toggle, isOpen }) and returns node content. Content should apply collapse functions from props to open/close content * @default ({ toggle, label }) => <div onClick={toggle}>{label}</div> */ renderLeaf: LeafRenderer<NodeObjectType, LeafType>; /** * distance between node childNodes and root * @default 20px */ childrenOffset?: string; /** * property for React key * @default id */ idKey?: string; /** * TreeNode className */ className?: string; /** * is node open */ isOpen?: boolean; };