import React from 'react'; import { FlintSimpleTreeView as FlintSimpleTreeViewElement } from '@getufy/flint-ui/tree-view/flint-simple-tree-view'; /** * A simple tree-view container that manages keyboard navigation, focus, and item selection/expansion for nested `flint-tree-item` elements. * * @slot (default) - Place `flint-tree-item` elements here. */ export interface FlintSimpleTreeViewProps extends React.HTMLAttributes { /** When `true`, disabled items can receive keyboard focus. */ disabledItemsFocusable?: boolean; /** * Callback invoked when a tree item is clicked or activated via keyboard. * Type: `(itemId: string) => void | undefined` */ onItemClick?: FlintSimpleTreeViewElement['onItemClick']; /** **Controlled mode.** The set of item IDs that should be expanded. */ expandedItems?: string[] | undefined; /** **Uncontrolled mode.** Item IDs to expand on initial mount. */ defaultExpandedItems?: string[]; /** * Callback fired when the user toggles an item's expansion. * Type: `(itemIds: string[]) => void | undefined` */ onExpandedItemsChange?: FlintSimpleTreeViewElement['onExpandedItemsChange']; /** * What interaction triggers expand/collapse. * Allowed values: 'content' | 'iconContainer' */ expansionTrigger?: 'content' | 'iconContainer'; /** * Selection mode: * Allowed values: 'none' | 'single' | 'multiple' */ selectionMode?: 'none' | 'single' | 'multiple'; /** Controlled mode. The set of selected item IDs. */ selectedItems?: string[] | undefined; /** Uncontrolled mode. Item IDs selected on initial mount. */ defaultSelectedItems?: string[]; /** * Callback fired when the selection changes. * Type: `(itemIds: string[]) => void | undefined` */ onSelectedItemsChange?: FlintSimpleTreeViewElement['onSelectedItemsChange']; /** * When the selected set changes (detail: { selectedItems }) * DOM event: `flint-selection-change` */ onFlintSelectionChange?: (event: CustomEvent) => void; /** * When the expanded set changes (detail: { expandedItems }) * DOM event: `flint-tree-view-expanded-items-change` */ onFlintTreeViewExpandedItemsChange?: (event: CustomEvent) => void; /** * When a tree item is activated (detail: { itemId }) * DOM event: `flint-tree-view-item-click` */ onFlintTreeViewItemClick?: (event: CustomEvent) => void; } export declare const FlintSimpleTreeView: React.ForwardRefExoticComponent>;