import React from 'react'; import { TreeItemComponent } from './TreeViewContext'; export interface TreeViewNodeData { id: string; label: string; children?: TreeViewNodeData[]; icon?: React.ElementType; } interface TransitionProps { in: boolean; children: React.ReactNode; } interface TreeViewProps { data: TreeViewNodeData[]; selectionMode?: 'single' | 'multiple'; defaultSelectedIds?: string[]; defaultExpandedIds?: string[]; onSelectionChange?: (ids: string[]) => void; onExpansionChange?: (ids: string[]) => void; onFileSelect?: (node: TreeViewNodeData) => void; expandIcon?: React.ReactNode; collapseIcon?: React.ReactNode; defaultEndIcon?: React.ReactNode; groupTransition?: React.ComponentType; item?: TreeItemComponent; } export interface TreeViewHandle { focusItem: (id: string) => void; } export declare const TreeView: React.ForwardRefExoticComponent>; export {};