UNPKG

@mui/x-tree-view

Version:

The community edition of the MUI X Tree View components.

26 lines 966 B
import { MuiEvent } from '@mui/x-internals/types'; import { TreeViewItemId } from "../../models/index.js"; interface TreeViewEventLookup { /** * Fired before an item is expanded or collapsed. */ beforeItemToggleExpansion: { parameters: { isExpansionPrevented: boolean; shouldBeExpanded: boolean; itemId: TreeViewItemId; }; event: React.SyntheticEvent | null; }; } export type TreeViewEvents = keyof TreeViewEventLookup; export type TreeViewEventListener<E extends TreeViewEvents> = (params: TreeViewEventParameters<E>, event: TreeViewEventLookup[E] extends { event: any; } ? MuiEvent<TreeViewEventLookup[E]['event']> : MuiEvent<{}>) => void; export type TreeViewEventParameters<E extends TreeViewEvents> = TreeViewEventLookup[E] extends { parameters: infer P; } ? P : undefined; export type TreeViewEventEvent<E extends TreeViewEvents> = TreeViewEventLookup[E] extends { event: infer EV; } ? EV : undefined; export {};