import { ChangeEvent, HTMLAttributes } from 'react';
import { DropPlacementsType, ShapeType, SizeType, ThemeType } from '../const/types.js';
import { IconType } from '../icon/index.js';
import { TreeExpandEvent, TreeNode } from '../tree/index.js';
export type TreeSelectValue = string | number | Array | null | undefined;
export interface TreeSelectProps extends Omit, "onChange" | "onSelect" | "defaultValue" | "defaultChecked"> {
placeholder?: string;
size?: SizeType;
placement?: DropPlacementsType;
/** 关闭后是否销毁面板内容。默认销毁(重开时重新挂载);设为 false 可保留面板内的表单状态,代价是每个打开过的实例留一份隐藏 DOM。 */
destroyOnClose?: boolean;
width?: number;
maxTagCount?: number;
value?: TreeSelectValue;
open?: boolean;
clearable?: boolean;
filterable?: boolean;
block?: boolean;
disabled?: boolean;
readOnly?: boolean;
multiple?: boolean;
loading?: boolean;
bordered?: boolean;
showArrow?: boolean;
options?: TreeNode[];
theme?: ThemeType;
emptyText?: string;
icon?: IconType[];
shape?: ShapeType;
arrowIcon?: IconType[];
treeData?: TreeNode[];
treeCheckable?: boolean;
treeShowLine?: boolean;
treeShowIcon?: boolean;
treeCheckStrictly?: boolean;
treeExpandedKeys?: string[];
treeDefaultExpandedKeys?: string[];
treeCheckedKeys?: string[];
treeSelectedKeys?: string[];
treeExpandedAll?: boolean;
treeLoadData?: (node: TreeNode) => Promise;
/** 下拉菜单是否开启虚拟滚动 */
virtual?: boolean;
/** 下拉菜单虚拟滚动时的容器高度 */
virtualHeight?: number;
/** 虚拟滚动时每个项目的高度 */
itemHeight?: number;
/** 虚拟滚动时视口外额外渲染的项目数量 */
overscan?: number;
onChange?: (value: TreeSelectValue) => void;
onTreeSelect?: (value: string, label: string, selected: boolean) => void;
onSearch?: (event: ChangeEvent) => void;
onTreeExpand?: (value: TreeExpandEvent) => void;
onTreeExpandedKeysChange?: (keys: string[]) => void;
onTreeCheckedKeysChange?: (keys: string[]) => void;
onOpenChange?: (open: boolean) => void;
onClear?: () => void;
}
declare function TreeSelect({ placeholder, size: sizeProp, placement, destroyOnClose, width, maxTagCount, value, open: openProp, clearable, filterable, block, disabled, readOnly, multiple, loading, bordered, showArrow, options, theme: themeProp, emptyText, icon, shape: shapeProp, arrowIcon, treeData, treeCheckable, treeShowLine, treeShowIcon, treeCheckStrictly, treeExpandedKeys, treeDefaultExpandedKeys, treeCheckedKeys, treeSelectedKeys, treeExpandedAll, treeLoadData, virtual, virtualHeight, itemHeight, overscan, onChange, onTreeSelect, onSearch, onTreeExpand, onTreeExpandedKeysChange, onTreeCheckedKeysChange, onOpenChange, onClear, className, style, ...rest }: TreeSelectProps): import("react").JSX.Element;
declare const _default: typeof TreeSelect;
export default _default;