import { ReactNode, KeyboardEvent, CSSProperties } from 'react' import { TreeDataItem } from '../../types' type LevelSelectDataItem = TreeDataItem interface LevelSelectProps { titles?: string[] data?: LevelSelectDataItem[] selected?: V[] onSelect?(selected: V[]): void disabled?: boolean renderSelected?(selected: LevelSelectDataItem[]): ReactNode onlySelectLeaf?: boolean popoverType?: 'focus' | 'realFocus' right?: boolean onKeyDown?(event: KeyboardEvent): void style?: CSSProperties className?: string } interface MultipleLevelSelectProps { data: LevelSelectDataItem[] selected: V[][] onSelect(selected: V[][]): void disabled?: boolean renderSelected?(items: LevelSelectDataItem[]): ReactNode titles?: string[] onlySelectLeaf?: boolean popoverType?: 'focus' | 'realFocus' right?: boolean placeholder?: string onKeyDown?(event: KeyboardEvent): void children?: ReactNode className?: string style?: CSSProperties } export type { LevelSelectDataItem, LevelSelectProps, MultipleLevelSelectProps }