UNPKG

@1771technologies/lytenyte-pro

Version:

Blazingly fast headless React data grid with 100s of features.

23 lines (22 loc) 1.11 kB
import { type PathProvidedItem, type PathRoot } from "@1771technologies/lytenyte-shared"; import { type JSX } from "react"; import { type TreeVirtualItem } from "./make-virtual-tree.js"; export interface VirtualizedTreeViewPathsArgs<T extends PathProvidedItem> { readonly itemHeight: number; readonly expansions: Record<string, boolean>; readonly expansionDefault?: boolean; readonly paths: T[]; readonly nonAdjacentPathTrees?: boolean; } export interface TreeReturn<T extends PathProvidedItem> { readonly ref: (h: HTMLElement | null) => void; readonly virtualTree: TreeVirtualItem<T>[]; readonly spacer: JSX.Element; readonly rootProps: { readonly getAllIds: () => Set<string>; readonly getIdsBetweenNodes: (h: HTMLElement, r: HTMLElement) => string[]; readonly onFocusChange: (h: HTMLElement | null) => void; readonly root: PathRoot<T>; }; } export declare function useVirtualizedTree<T extends PathProvidedItem>({ itemHeight, expansions, expansionDefault, nonAdjacentPathTrees, paths, }: VirtualizedTreeViewPathsArgs<T>): TreeReturn<T>;