🌈 An enterprise-class UI components based on Ant Design and Vue. 🐜
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

222 lines
4.9 KiB

// Project: https://github.com/vueComponent/ant-design-vue
// Definitions by: akki-jat <https://github.com/akki-jat>
// Definitions: https://github.com/vueComponent/ant-design-vue/types
import { AntdComponent } from './component';
import { TreeNode } from './tree-node';
export interface TreeData {
key: string | number;
value: string;
label: any;
children: any;
disabled?: boolean;
disableCheckbox?: boolean;
selectable?: boolean;
}
export declare class TreeSelect extends AntdComponent {
static TreeNode: typeof TreeNode;
/**
* Whether allow clear
* @default false
* @type boolean
*/
allowClear: boolean;
/**
* To set the initial selected treeNode(s).
* @type string | string[]
*/
defaultValue: string | string[];
/**
* Disabled or not
* @default false
* @type boolean
*/
disabled: boolean;
/**
* className of dropdown menu
* @type string
*/
dropdownClassName: string;
/**
* Determine whether the dropdown menu and the select input are the same width
* @default true
* @type boolean
*/
dropdownMatchSelectWidth: boolean;
/**
* To set the style of the dropdown menu
* @type object
*/
dropdownStyle: object;
/**
* Whether to filter treeNodes by input value. The value of treeNodeFilterProp is used for filtering by default.
* @default Function
* @type boolean | Function
*/
filterTreeNode: boolean | Function;
/**
* To set the container of the dropdown menu.
* The default is to create a div element in body, you can reset it to the scrolling area and make a relative reposition.
* @default () => document.body
* @type Function
*/
getPopupContainer: (triggerNode: any) => HTMLElement;
/**
* whether to embed label in value, turn the format of value from string to {value: string, label: VNode, halfChecked: string[]}
* @default false
* @type boolean
*/
labelInValue: boolean;
/**
* Load data asynchronously.
* @type
*/
loadData: (node: any) => void;
/**
* Support multiple or not, will be true when enable treeCheckable.
* @default false
* @type boolean
*/
multiple: boolean;
/**
* Placeholder of the select input
* @type any (string | slot)
*/
placeholder: any;
/**
* Placeholder of the search input
* @type any (string | slot)
*/
searchPlaceholder: any;
/**
* work with `search` event to make search value controlled.
* @type string
*/
searchValue: string;
/**
* Show Checked Strategy
* @description The way show selected item in box. Default: just show child nodes.
* TreeSelect.SHOW_ALL: show all checked treeNodes (include parent treeNode).
* TreeSelect.SHOW_PARENT: show checked treeNodes (just show parent treeNode).
* @default TreeSelect.SHOW_CHILD
* @type
*/
showCheckedStrategy: 'SHOW_ALL' | 'SHOW_PARENT' | 'SHOW_CHILD';
/**
* Whether to display a search input in the dropdown menu(valid only in the single mode)
* @default false
* @type boolean
*/
showSearch: boolean;
/**
* To set the size of the select input, options: large small
* @default 'default'
* @type string
*/
size: 'small' | 'large' | 'default';
/**
* Whether to show checkbox on the treeNodes
* @default false
* @type boolean
*/
treeCheckable: boolean;
/**
* Whether to check nodes precisely (in the checkable mode), means parent and
* child nodes are not associated, and it will make labelInValue be true
* @default false
* @type boolean
*/
treeCheckStrictly: boolean;
/**
* Data of the treeNodes, manual construction work is no longer needed
* if this property has been set(ensure the Uniqueness of each value)
* @default []
* @type object[]
*/
treeData: TreeData[];
/**
* Enable simple mode of treeData.
* (treeData should like this: [{id:1, pId:0, value:'1', label:"test1",...},...], pId is parent node's id)
* @default false
* @type boolean | object[]
*/
treeDataSimpleMode: boolean | Array<{ id: string; pId: string; rootPId: any }>;
/**
* Whether to expand all treeNodes by default
* @default false
* @type boolean
*/
treeDefaultExpandAll: boolean;
/**
* Default expanded treeNodes
* @type string[] | number[]
*/
treeDefaultExpandedKeys: string[] | number[];
/**
* Set expanded keys
* @type string[] | number[]
*/
treeExpandedKeys: string[] | number[];
/**
* Will be used for filtering if filterTreeNode returns true
* @default 'value'
* @type string
*/
treeNodeFilterProp: string;
/**
* Will render as content of select
* @default 'title'
* @type string
*/
treeNodeLabelProp: string;
/**
* To set the current selected treeNode(s).
* @type string | string[]
*/
value: string | string[];
/**
* The custom suffix icon
* @type any (VNode | slot)
*/
suffixIcon: any;
/**
* remove focus
*/
blur(): void;
/**
* get focus
*/
focus(): void;
}