import React from 'react';
import type { SelectProps } from '../select';
import type { DataNode, TreeProps, Key } from '../tree/interface';
import type { OptionProps } from '../components/rc-select/Option';
export interface FieldNames {
    title?: string;
    value?: string;
    children?: string;
}
export interface TreeSelectNode extends Omit<DataNode, 'key' | 'children'> {
    value: Key;
    children?: TreeSelectNode[];
}
export interface TreeSelectProps extends Omit<SelectProps, 'mode' | 'filterSort' | 'menuItemSelectedIcon' | 'tokenSeparators' | 'onInputKeyDown' | 'onMouseEnter' | 'onMouseLeave' | 'onPopupScroll' | 'removeOption' | 'optionLabelProp' | 'labelInValue' | 'scrollInfinite' | 'infiniteHasMore' | 'itemindex' | 'filterOption' | 'options' | 'onBlur' | 'onFocus'> {
    fieldNames?: FieldNames;
    /** 数据 */
    treeData?: TreeSelectNode[];
    /** 支持多选（当设置 treeCheckable 时自动变为 true） */
    multiple?: boolean;
    /** 自动展开父节点 **/
    treeAutoExpandParent?: boolean;
    /** 搜索值 **/
    treeSearchValue?: string;
    /** 显示 Checkbox */
    treeCheckable?: boolean;
    /** 默认展开所有树节点 */
    treeDefaultExpandAll?: boolean;
    /** 默认展开的树节点 */
    treeDefaultExpandedKeys?: Key[];
    /** 设置展开的树节点 */
    treeExpandedKeys?: Key[];
    /** 展示节点图标 */
    showTreeIcon?: boolean;
    /** 是否展示线条样式 */
    treeLine?: boolean;
    /** 树节点切换icon */
    treeSwitcherIcon?: TreeProps['switcherIcon'];
    /** 树节点展开时触发 */
    onTreeExpand?: TreeProps['onExpand'];
    /** 按需加载数据 */
    loadData?: TreeProps['loadData'];
    /** 格外的select的options，数据按需加载并且需要搜索时使用 */
    treeNodePlaceholder?: number;
    nodeTextWidth?: number;
    additionalSelectOptions?: OptionProps[];
}
export declare type ValueType = SelectProps['value'];
declare const TreeSelect: React.ForwardRefExoticComponent<TreeSelectProps & React.RefAttributes<unknown>>;
export default TreeSelect;
