synapse-react-client
Version:
[](https://badge.fury.io/js/synapse-react-client) [](https://github.com/prettier/prettie
34 lines • 1.75 kB
TypeScript
import { SortingState } from '@tanstack/react-table';
import { EntityHeader, SortBy, Direction } from '@sage-bionetworks/synapse-types';
export type TreeNode = {
entityHeader: EntityHeader;
parentId?: string;
depth: number;
isLeaf: boolean;
children?: TreeNode[];
};
/**
* Hook that manages all tree state and data initialization.
*/
export declare const useEntityTreeState: (rootId: string, expandRootByDefault: boolean, showRootNode: boolean) => {
expanded: Record<string, boolean>;
setExpanded: import("react").Dispatch<import("react").SetStateAction<Record<string, boolean>>>;
tree: Record<string, TreeNode>;
setTree: import("react").Dispatch<import("react").SetStateAction<Record<string, TreeNode>>>;
loadingIds: Set<string>;
setLoadingIds: import("react").Dispatch<import("react").SetStateAction<Set<string>>>;
loadedChildren: Set<string>;
setLoadedChildren: import("react").Dispatch<import("react").SetStateAction<Set<string>>>;
nextPageTokens: Record<string, string | undefined>;
setNextPageTokens: import("react").Dispatch<import("react").SetStateAction<Record<string, string | undefined>>>;
loadingPageTokens: Record<string, string | undefined>;
setLoadingPageTokens: import("react").Dispatch<import("react").SetStateAction<Record<string, string | undefined>>>;
sorting: SortingState;
setSorting: import("react").Dispatch<import("react").SetStateAction<SortingState>>;
sortBy: SortBy | undefined;
sortDirection: Direction | undefined;
rootHeader: EntityHeader | undefined;
rootChildren: import("@sage-bionetworks/synapse-types").EntityChildrenResponse | undefined;
resetTreeData: () => void;
};
//# sourceMappingURL=useEntityTreeState.d.ts.map