diff --git a/types/cascader.d.ts b/types/cascader.d.ts index 25ebd77aab..0a76db9c13 100644 --- a/types/cascader.d.ts +++ b/types/cascader.d.ts @@ -3,7 +3,7 @@ // Definitions: https://github.com/vueComponent/ant-design-vue/types import { AntdComponent } from './component'; -import { VNode } from 'vue'; +import { VNode, VNodeChild, CSSProperties } from 'vue'; export interface CascaderOptionType { value?: string | number; @@ -41,162 +41,164 @@ export interface ShowSearchType { /** * Set the count of filtered items + * @default 50 * @type number | false */ limit?: number | false; } export declare class Cascader extends AntdComponent { - /** - * whether allow clear - * @default true - * @type boolean - */ - allowClear: boolean; - - /** - * get focus when component mounted - * @default false - * @type boolean - */ - autofocus: boolean; - - /** - * change value on each selection if set to true. - * @default false - * @type boolean - */ - changeOnSelect: boolean; - - /** - * initial selected value - * @type Array - */ - defaultValue: Array; - - /** - * Whether disabled select - * @default false - * @type boolean - */ - disabled: boolean; - - /** - * render function of displaying selected options, you can use slot="displayRender" and slot-scope="{labels, selectedOptions}" - * @default labels => labels.join(' / ') - * @type Function - */ - displayRender: ({ - labels, - selectedOptions, - }: { - labels: string[]; - selectedOptions: CascaderOptionType[]; - }) => VNode; - - /** - * expand current item when click or hover, one of 'click' 'hover' - * @default 'click' - * @type string - */ - expandTrigger: 'click' | 'hover'; - - /** - * custom field name for label and value and children - * @default { label: 'label', value: 'value', children: 'children' } - * @type { value: string; label: string; children?: string; } - */ - fieldNames: { - value: string; - label: string; - children?: string; - }; - - /** - * Parent Node which the selector should be rendered to. Default to body. - * When position issues happen, try to modify it into scrollable content and position it relative. - * @default () => document.body - * @type Function - */ - getPopupContainer: (triggerNode: any) => HTMLElement; - - /** - * To load option lazily, and it cannot work with showSearch - * @type Function - */ - loadData: (selectedOptions: CascaderOptionType[]) => void; - - /** - * Specify content to show when no result matches. - * @default 'Not Found' - * @type string - */ - notFoundContent: string; - - /** - * data options of cascade - * @type CascaderOptionType - */ - options: CascaderOptionType; - - /** - * input placeholder - * @default 'Please select' - * @type string - */ - placeholder: string; - - /** - * additional className of popup overlay - * @type string - */ - popupClassName: string; - - /** - * additional style of popup overlay - * @type object - */ - popupStyle: object; - - /** - * use preset popup align config from builtinPlacements:bottomLeft bottomRight topLeft topRight - * @default 'bottomLeft' - * @type string - */ - popupPlacement: 'bottomLeft' | 'bottomRight' | 'topLeft' | 'topRight'; - - /** - * set visible of cascader popup - * @type boolean - */ - popupVisible: boolean; - - /** - * Whether show search input in single mode. - * @default false - * @type boolean | ShowSearchType - */ - showSearch: boolean | ShowSearchType; - - /** - * input size, one of large default small - * @default 'default' - * @type string - */ - size: 'large' | 'default' | 'small'; - - /** - * The custom suffix icon - * @type String | VNode | slot - */ - suffixIcon: any; - - /** - * selected value - * @type Array - */ - value: Array; - + $props: { + /** + * whether allow clear + * @default true + * @type boolean + */ + allowClear?: boolean; + + /** + * get focus when component mounted + * @default false + * @type boolean + */ + autofocus?: boolean; + + /** + * change value on each selection if set to true. + * @default false + * @type boolean + */ + changeOnSelect?: boolean; + + /** + * initial selected value + * @type Array + */ + defaultValue?: Array; + + /** + * Whether disabled select + * @default false + * @type boolean + */ + disabled?: boolean; + + /** + * render function of displaying selected options, you can use slot="displayRender" and slot-scope="{labels, selectedOptions}" + * @default labels => labels.join(' / ') + * @type Function + */ + displayRender?: ({ + labels, + selectedOptions, + }: { + labels: string[]; + selectedOptions: CascaderOptionType[]; + }) => VNodeChild; + + /** + * expand current item when click or hover, one of 'click' 'hover' + * @default 'click' + * @type string + */ + expandTrigger?: 'click' | 'hover'; + + /** + * custom field name for label and value and children + * @default { label: 'label', value: 'value', children: 'children' } + * @type { value: string; label: string; children?: string; } + */ + fieldNames?: { + value: string; + label: string; + children?: string; + }; + + /** + * Parent Node which the selector should be rendered to. Default to body. + * When position issues happen, try to modify it into scrollable content and position it relative. + * @default () => document.body + * @type Function + */ + getPopupContainer?: (triggerNode: any) => HTMLElement; + + /** + * To load option lazily, and it cannot work with showSearch + * @type Function + */ + loadData?: (selectedOptions: CascaderOptionType[]) => void; + + /** + * Specify content to show when no result matches. + * @default 'Not Found' + * @type string + */ + notFoundContent?: string; + + /** + * data options of cascade + * @type CascaderOptionType + */ + options?: CascaderOptionType; + + /** + * input placeholder + * @default 'Please select' + * @type string + */ + placeholder?: string; + + /** + * additional className of popup overlay + * @type string + */ + popupClassName?: string; + + /** + * additional style of popup overlay + * @type object + */ + popupStyle?: CSSProperties; + + /** + * use preset popup align config from builtinPlacements:bottomLeft bottomRight topLeft topRight + * @default 'bottomLeft' + * @type string + */ + popupPlacement?: 'bottomLeft' | 'bottomRight' | 'topLeft' | 'topRight'; + + /** + * set visible of cascader popup + * @type boolean + */ + popupVisible?: boolean; + + /** + * Whether show search input in single mode. + * @default false + * @type boolean | ShowSearchType + */ + showSearch?: boolean | ShowSearchType; + + /** + * input size, one of large default small + * @default 'default' + * @type string + */ + size?: 'large' | 'default' | 'small'; + + /** + * The custom suffix icon + * @type String | VNode | slot + */ + suffixIcon?: VNodeChild | JSX.Element; + + /** + * selected value + * @type Array + */ + value?: Array; + } /** * remove focus */