import React from "react"; export interface GlassTreeNode { id: string; label: string; icon?: React.ReactNode; children?: GlassTreeNode[]; disabled?: boolean; metadata?: Record; } export interface GlassTreeViewProps extends Omit, "onSelect" | "onDragStart" | "onDrop"> { /** Tree data */ data?: GlassTreeNode[]; /** Currently selected node */ selectedId?: string; /** Expanded node IDs */ expandedIds?: string[]; /** Default expanded node IDs */ defaultExpandedIds?: string[]; /** Selection mode */ selectionMode?: "none" | "single" | "multiple"; /** Multiple selected node IDs */ selectedIds?: string[]; /** Default selected node IDs */ defaultSelectedIds?: string[]; /** Whether to show connecting lines */ showLines?: boolean; /** Whether to show icons */ showIcons?: boolean; /** Whether nodes are draggable */ draggable?: boolean; /** Whether to show checkboxes for multi-select */ showCheckboxes?: boolean; /** Size variant */ size?: "sm" | "md" | "lg"; /** Visual variant */ variant?: "default" | "minimal" | "bordered" | "filled"; /** Indentation per level */ indentation?: number; /** Custom node renderer */ renderNode?: (node: GlassTreeNode, level: number, isSelected: boolean, isExpanded: boolean) => React.ReactNode; /** Custom expand/collapse icon */ expandIcon?: React.ReactNode; /** Custom collapse icon */ collapseIcon?: React.ReactNode; /** Selection change handler */ onSelect?: (nodeId: string, node: GlassTreeNode) => void; /** Multi-selection change handler */ onSelectionChange?: (nodeIds: string[], nodes: GlassTreeNode[]) => void; /** Expand/collapse handler */ onExpand?: (nodeId: string, expanded: boolean) => void; /** Drag start handler */ onDragStart?: (node: GlassTreeNode, event: React.DragEvent) => void; /** Drop handler */ onDrop?: (draggedNode: GlassTreeNode, targetNode: GlassTreeNode, position: "before" | "after" | "inside") => void; /** Respect user's motion preferences */ respectMotionPreference?: boolean; } export declare const GlassTreeView: React.ForwardRefExoticComponent>; export default GlassTreeView; //# sourceMappingURL=GlassTreeView.d.ts.map