import type { TreeNode, TreeViewProps } from '../components/tree-view/types'; type TreeViewSettingsState = { wrapLabels: boolean; }; export type TreeViewSettingsStorage = { get: (key: string) => TreeViewSettingsState | undefined; set: (key: string, next: TreeViewSettingsState) => void; }; export declare const localStorageTreeViewSettingsStorage: TreeViewSettingsStorage; export interface UseTreeViewSettingsOptions { data?: TreeNode[]; defaultExpandedIds?: string[]; expandedIds?: string[]; onExpandedIdsChange?: (ids: string[]) => void; defaultWrapLabels?: boolean; wrapLabels?: boolean; onWrapLabelsChange?: (value: boolean) => void; storageKey?: string; storage?: TreeViewSettingsStorage; } export interface UseTreeViewSettingsResult { wrapLabels: boolean; setWrapLabels: (value: boolean) => void; toggleWrapLabels: () => void; expandedIds: string[]; setExpandedIds: (ids: string[]) => void; expand: (id: string) => void; collapse: (id: string) => void; toggle: (id: string) => void; expandAll: () => void; collapseAll: () => void; treeViewProps: Pick, 'expandedIds' | 'onExpandedIdsChange' | 'wrapLabels'>; } export declare function useTreeViewSettings({ data, defaultExpandedIds, expandedIds: controlledExpandedIds, onExpandedIdsChange, defaultWrapLabels, wrapLabels: controlledWrapLabels, onWrapLabelsChange, storageKey, storage, }: UseTreeViewSettingsOptions): UseTreeViewSettingsResult; export {};