export interface NodeContext { isExpanded(): boolean toggleExpand(): void } type BlockTreeKey = string | number type LeafValueGetter = (leaf: any) => T export interface BlockTreeProps { label: string | LeafValueGetter expand: string children: string key?: BlockTreeKey | LeafValueGetter }