Cascader.d.ts 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970
  1. import type { CSSProperties, ExtractPropTypes, PropType } from 'vue';
  2. import type { BaseSelectRef } from '../vc-select';
  3. import type { Placement } from '../vc-select/BaseSelect';
  4. import type { VueNode } from '../_util/type';
  5. import { SHOW_PARENT, SHOW_CHILD } from './utils/commonUtil';
  6. export { SHOW_PARENT, SHOW_CHILD };
  7. export interface ShowSearchType<OptionType extends BaseOptionType = DefaultOptionType> {
  8. filter?: (inputValue: string, options: OptionType[], fieldNames: FieldNames) => boolean;
  9. render?: (arg?: {
  10. inputValue: string;
  11. path: OptionType[];
  12. prefixCls: string;
  13. fieldNames: FieldNames;
  14. }) => any;
  15. sort?: (a: OptionType[], b: OptionType[], inputValue: string, fieldNames: FieldNames) => number;
  16. matchInputWidth?: boolean;
  17. limit?: number | false;
  18. }
  19. export interface FieldNames {
  20. label?: string;
  21. value?: string;
  22. children?: string;
  23. }
  24. export interface InternalFieldNames extends Required<FieldNames> {
  25. key: string;
  26. }
  27. export declare type SingleValueType = (string | number)[];
  28. export declare type ValueType = SingleValueType | SingleValueType[];
  29. export declare type ShowCheckedStrategy = typeof SHOW_PARENT | typeof SHOW_CHILD;
  30. export interface BaseOptionType {
  31. disabled?: boolean;
  32. [name: string]: any;
  33. }
  34. export interface DefaultOptionType extends BaseOptionType {
  35. label?: any;
  36. value?: string | number | null;
  37. children?: DefaultOptionType[];
  38. }
  39. declare function baseCascaderProps<OptionType extends BaseOptionType = DefaultOptionType>(): {
  40. id: StringConstructor;
  41. prefixCls: StringConstructor;
  42. fieldNames: PropType<FieldNames>;
  43. children: PropType<VueNode[]>;
  44. value: {
  45. type: PropType<ValueType>;
  46. };
  47. defaultValue: {
  48. type: PropType<ValueType>;
  49. };
  50. changeOnSelect: {
  51. type: BooleanConstructor;
  52. default: any;
  53. };
  54. displayRender: PropType<(opt: {
  55. labels: string[];
  56. selectedOptions?: OptionType[];
  57. }) => any>;
  58. checkable: {
  59. type: BooleanConstructor;
  60. default: any;
  61. };
  62. showCheckedStrategy: {
  63. type: PropType<ShowCheckedStrategy>;
  64. default: string;
  65. };
  66. showSearch: {
  67. type: PropType<boolean | ShowSearchType<OptionType>>;
  68. default: boolean | ShowSearchType<OptionType>;
  69. };
  70. searchValue: StringConstructor;
  71. onSearch: PropType<(value: string) => void>;
  72. expandTrigger: PropType<"click" | "hover">;
  73. options: PropType<OptionType[]>;
  74. /** @private Internal usage. Do not use in your production. */
  75. dropdownPrefixCls: StringConstructor;
  76. loadData: PropType<(selectOptions: OptionType[]) => void>;
  77. /** @deprecated Use `open` instead */
  78. popupVisible: {
  79. type: BooleanConstructor;
  80. default: any;
  81. };
  82. /** @deprecated Use `dropdownClassName` instead */
  83. popupClassName: StringConstructor;
  84. dropdownClassName: StringConstructor;
  85. dropdownMenuColumnStyle: {
  86. type: PropType<CSSProperties>;
  87. default: CSSProperties;
  88. };
  89. /** @deprecated Use `dropdownStyle` instead */
  90. popupStyle: {
  91. type: PropType<CSSProperties>;
  92. default: CSSProperties;
  93. };
  94. dropdownStyle: {
  95. type: PropType<CSSProperties>;
  96. default: CSSProperties;
  97. };
  98. /** @deprecated Use `placement` instead */
  99. popupPlacement: PropType<Placement>;
  100. placement: PropType<Placement>;
  101. /** @deprecated Use `onDropdownVisibleChange` instead */
  102. onPopupVisibleChange: PropType<(open: boolean) => void>;
  103. onDropdownVisibleChange: PropType<(open: boolean) => void>;
  104. expandIcon: import("vue-types").VueTypeValidableDef<any>;
  105. loadingIcon: import("vue-types").VueTypeValidableDef<any>;
  106. onFocus: {
  107. type: PropType<(e: FocusEvent) => void>;
  108. };
  109. onBlur: {
  110. type: PropType<(e: FocusEvent) => void>;
  111. };
  112. onKeydown: PropType<(e: KeyboardEvent) => void>;
  113. onKeyup: PropType<(e: KeyboardEvent) => void>;
  114. onClick: PropType<(e: MouseEvent) => void>;
  115. onMousedown: PropType<(e: MouseEvent) => void>;
  116. onMouseenter: PropType<(e: MouseEvent) => void>;
  117. onMouseleave: PropType<(e: MouseEvent) => void>;
  118. direction: {
  119. type: PropType<"ltr" | "rtl">;
  120. };
  121. open: {
  122. type: BooleanConstructor;
  123. default: any;
  124. };
  125. animation: StringConstructor;
  126. disabled: {
  127. type: BooleanConstructor;
  128. default: any;
  129. };
  130. tabindex: NumberConstructor;
  131. getPopupContainer: {
  132. type: PropType<import("../vc-select/BaseSelect").RenderDOMFunc>;
  133. };
  134. dropdownMatchSelectWidth: {
  135. type: PropType<number | boolean>;
  136. default: any;
  137. };
  138. transitionName: StringConstructor;
  139. showAction: {
  140. type: PropType<("click" | "focus")[]>;
  141. };
  142. autofocus: BooleanConstructor;
  143. dropdownRender: {
  144. type: PropType<import("../vc-select/BaseSelect").DropdownRender>;
  145. };
  146. dropdownAlign: PropType<import("../vc-trigger/interface").AlignType>;
  147. placeholder: import("vue-types").VueTypeValidableDef<any>;
  148. loading: {
  149. type: BooleanConstructor;
  150. default: any;
  151. };
  152. onInputKeyDown: PropType<(e: KeyboardEvent) => void>;
  153. removeIcon: import("vue-types").VueTypeValidableDef<any>;
  154. maxTagCount: {
  155. type: PropType<number | "responsive">;
  156. };
  157. maxTagTextLength: NumberConstructor;
  158. maxTagPlaceholder: import("vue-types").VueTypeValidableDef<any>;
  159. tagRender: {
  160. type: PropType<(props: import("../vc-select/BaseSelect").CustomTagProps) => any>;
  161. };
  162. choiceTransitionName: StringConstructor;
  163. optionLabelRender: {
  164. type: PropType<(option: Record<string, any>) => any>;
  165. };
  166. notFoundContent: import("vue-types").VueTypeValidableDef<any>;
  167. onClear: PropType<() => void>;
  168. defaultOpen: {
  169. type: BooleanConstructor;
  170. default: any;
  171. };
  172. getInputElement: {
  173. type: PropType<() => any>;
  174. };
  175. getRawInputElement: {
  176. type: PropType<() => any>;
  177. };
  178. allowClear: {
  179. type: BooleanConstructor;
  180. default: any;
  181. };
  182. showArrow: {
  183. type: BooleanConstructor;
  184. default: any;
  185. };
  186. inputIcon: import("vue-types").VueTypeValidableDef<any>;
  187. clearIcon: import("vue-types").VueTypeValidableDef<any>;
  188. onPopupScroll: PropType<(e: UIEvent) => void>;
  189. };
  190. export declare type BaseCascaderProps = Partial<ExtractPropTypes<ReturnType<typeof baseCascaderProps>>>;
  191. declare type OnSingleChange<OptionType> = (value: SingleValueType, selectOptions: OptionType[]) => void;
  192. declare type OnMultipleChange<OptionType> = (value: SingleValueType[], selectOptions: OptionType[][]) => void;
  193. export declare function singleCascaderProps<OptionType extends BaseOptionType = DefaultOptionType>(): {
  194. checkable: PropType<false>;
  195. onChange: PropType<OnSingleChange<OptionType>>;
  196. id: StringConstructor;
  197. prefixCls: StringConstructor;
  198. fieldNames: PropType<FieldNames>;
  199. children: PropType<VueNode[]>;
  200. value: {
  201. type: PropType<ValueType>;
  202. };
  203. defaultValue: {
  204. type: PropType<ValueType>;
  205. };
  206. changeOnSelect: {
  207. type: BooleanConstructor;
  208. default: any;
  209. };
  210. displayRender: PropType<(opt: {
  211. labels: string[];
  212. selectedOptions?: DefaultOptionType[];
  213. }) => any>;
  214. showCheckedStrategy: {
  215. type: PropType<ShowCheckedStrategy>;
  216. default: string;
  217. };
  218. showSearch: {
  219. type: PropType<boolean | ShowSearchType<DefaultOptionType>>;
  220. default: boolean | ShowSearchType<DefaultOptionType>;
  221. };
  222. searchValue: StringConstructor;
  223. onSearch: PropType<(value: string) => void>;
  224. expandTrigger: PropType<"click" | "hover">;
  225. options: PropType<DefaultOptionType[]>;
  226. /** @private Internal usage. Do not use in your production. */
  227. dropdownPrefixCls: StringConstructor;
  228. loadData: PropType<(selectOptions: DefaultOptionType[]) => void>;
  229. /** @deprecated Use `open` instead */
  230. popupVisible: {
  231. type: BooleanConstructor;
  232. default: any;
  233. };
  234. /** @deprecated Use `dropdownClassName` instead */
  235. popupClassName: StringConstructor;
  236. dropdownClassName: StringConstructor;
  237. dropdownMenuColumnStyle: {
  238. type: PropType<CSSProperties>;
  239. default: CSSProperties;
  240. };
  241. /** @deprecated Use `dropdownStyle` instead */
  242. popupStyle: {
  243. type: PropType<CSSProperties>;
  244. default: CSSProperties;
  245. };
  246. dropdownStyle: {
  247. type: PropType<CSSProperties>;
  248. default: CSSProperties;
  249. };
  250. /** @deprecated Use `placement` instead */
  251. popupPlacement: PropType<Placement>;
  252. placement: PropType<Placement>;
  253. /** @deprecated Use `onDropdownVisibleChange` instead */
  254. onPopupVisibleChange: PropType<(open: boolean) => void>;
  255. onDropdownVisibleChange: PropType<(open: boolean) => void>;
  256. expandIcon: import("vue-types").VueTypeValidableDef<any>;
  257. loadingIcon: import("vue-types").VueTypeValidableDef<any>;
  258. onFocus: {
  259. type: PropType<(e: FocusEvent) => void>;
  260. };
  261. onBlur: {
  262. type: PropType<(e: FocusEvent) => void>;
  263. };
  264. onKeydown: PropType<(e: KeyboardEvent) => void>;
  265. onKeyup: PropType<(e: KeyboardEvent) => void>;
  266. onClick: PropType<(e: MouseEvent) => void>;
  267. onMousedown: PropType<(e: MouseEvent) => void>;
  268. onMouseenter: PropType<(e: MouseEvent) => void>;
  269. onMouseleave: PropType<(e: MouseEvent) => void>;
  270. direction: {
  271. type: PropType<"ltr" | "rtl">;
  272. };
  273. open: {
  274. type: BooleanConstructor;
  275. default: any;
  276. };
  277. animation: StringConstructor;
  278. disabled: {
  279. type: BooleanConstructor;
  280. default: any;
  281. };
  282. tabindex: NumberConstructor;
  283. getPopupContainer: {
  284. type: PropType<import("../vc-select/BaseSelect").RenderDOMFunc>;
  285. };
  286. dropdownMatchSelectWidth: {
  287. type: PropType<number | boolean>;
  288. default: any;
  289. };
  290. transitionName: StringConstructor;
  291. showAction: {
  292. type: PropType<("click" | "focus")[]>;
  293. };
  294. autofocus: BooleanConstructor;
  295. dropdownRender: {
  296. type: PropType<import("../vc-select/BaseSelect").DropdownRender>;
  297. };
  298. dropdownAlign: PropType<import("../vc-trigger/interface").AlignType>;
  299. placeholder: import("vue-types").VueTypeValidableDef<any>;
  300. loading: {
  301. type: BooleanConstructor;
  302. default: any;
  303. };
  304. onInputKeyDown: PropType<(e: KeyboardEvent) => void>;
  305. removeIcon: import("vue-types").VueTypeValidableDef<any>;
  306. maxTagCount: {
  307. type: PropType<number | "responsive">;
  308. };
  309. maxTagTextLength: NumberConstructor;
  310. maxTagPlaceholder: import("vue-types").VueTypeValidableDef<any>;
  311. tagRender: {
  312. type: PropType<(props: import("../vc-select/BaseSelect").CustomTagProps) => any>;
  313. };
  314. choiceTransitionName: StringConstructor;
  315. optionLabelRender: {
  316. type: PropType<(option: Record<string, any>) => any>;
  317. };
  318. notFoundContent: import("vue-types").VueTypeValidableDef<any>;
  319. onClear: PropType<() => void>;
  320. defaultOpen: {
  321. type: BooleanConstructor;
  322. default: any;
  323. };
  324. getInputElement: {
  325. type: PropType<() => any>;
  326. };
  327. getRawInputElement: {
  328. type: PropType<() => any>;
  329. };
  330. allowClear: {
  331. type: BooleanConstructor;
  332. default: any;
  333. };
  334. showArrow: {
  335. type: BooleanConstructor;
  336. default: any;
  337. };
  338. inputIcon: import("vue-types").VueTypeValidableDef<any>;
  339. clearIcon: import("vue-types").VueTypeValidableDef<any>;
  340. onPopupScroll: PropType<(e: UIEvent) => void>;
  341. };
  342. export declare type SingleCascaderProps = Partial<ExtractPropTypes<ReturnType<typeof singleCascaderProps>>>;
  343. export declare function multipleCascaderProps<OptionType extends BaseOptionType = DefaultOptionType>(): {
  344. checkable: PropType<true>;
  345. onChange: PropType<OnMultipleChange<OptionType>>;
  346. id: StringConstructor;
  347. prefixCls: StringConstructor;
  348. fieldNames: PropType<FieldNames>;
  349. children: PropType<VueNode[]>;
  350. value: {
  351. type: PropType<ValueType>;
  352. };
  353. defaultValue: {
  354. type: PropType<ValueType>;
  355. };
  356. changeOnSelect: {
  357. type: BooleanConstructor;
  358. default: any;
  359. };
  360. displayRender: PropType<(opt: {
  361. labels: string[];
  362. selectedOptions?: DefaultOptionType[];
  363. }) => any>;
  364. showCheckedStrategy: {
  365. type: PropType<ShowCheckedStrategy>;
  366. default: string;
  367. };
  368. showSearch: {
  369. type: PropType<boolean | ShowSearchType<DefaultOptionType>>;
  370. default: boolean | ShowSearchType<DefaultOptionType>;
  371. };
  372. searchValue: StringConstructor;
  373. onSearch: PropType<(value: string) => void>;
  374. expandTrigger: PropType<"click" | "hover">;
  375. options: PropType<DefaultOptionType[]>;
  376. /** @private Internal usage. Do not use in your production. */
  377. dropdownPrefixCls: StringConstructor;
  378. loadData: PropType<(selectOptions: DefaultOptionType[]) => void>;
  379. /** @deprecated Use `open` instead */
  380. popupVisible: {
  381. type: BooleanConstructor;
  382. default: any;
  383. };
  384. /** @deprecated Use `dropdownClassName` instead */
  385. popupClassName: StringConstructor;
  386. dropdownClassName: StringConstructor;
  387. dropdownMenuColumnStyle: {
  388. type: PropType<CSSProperties>;
  389. default: CSSProperties;
  390. };
  391. /** @deprecated Use `dropdownStyle` instead */
  392. popupStyle: {
  393. type: PropType<CSSProperties>;
  394. default: CSSProperties;
  395. };
  396. dropdownStyle: {
  397. type: PropType<CSSProperties>;
  398. default: CSSProperties;
  399. };
  400. /** @deprecated Use `placement` instead */
  401. popupPlacement: PropType<Placement>;
  402. placement: PropType<Placement>;
  403. /** @deprecated Use `onDropdownVisibleChange` instead */
  404. onPopupVisibleChange: PropType<(open: boolean) => void>;
  405. onDropdownVisibleChange: PropType<(open: boolean) => void>;
  406. expandIcon: import("vue-types").VueTypeValidableDef<any>;
  407. loadingIcon: import("vue-types").VueTypeValidableDef<any>;
  408. onFocus: {
  409. type: PropType<(e: FocusEvent) => void>;
  410. };
  411. onBlur: {
  412. type: PropType<(e: FocusEvent) => void>;
  413. };
  414. onKeydown: PropType<(e: KeyboardEvent) => void>;
  415. onKeyup: PropType<(e: KeyboardEvent) => void>;
  416. onClick: PropType<(e: MouseEvent) => void>;
  417. onMousedown: PropType<(e: MouseEvent) => void>;
  418. onMouseenter: PropType<(e: MouseEvent) => void>;
  419. onMouseleave: PropType<(e: MouseEvent) => void>;
  420. direction: {
  421. type: PropType<"ltr" | "rtl">;
  422. };
  423. open: {
  424. type: BooleanConstructor;
  425. default: any;
  426. };
  427. animation: StringConstructor;
  428. disabled: {
  429. type: BooleanConstructor;
  430. default: any;
  431. };
  432. tabindex: NumberConstructor;
  433. getPopupContainer: {
  434. type: PropType<import("../vc-select/BaseSelect").RenderDOMFunc>;
  435. };
  436. dropdownMatchSelectWidth: {
  437. type: PropType<number | boolean>;
  438. default: any;
  439. };
  440. transitionName: StringConstructor;
  441. showAction: {
  442. type: PropType<("click" | "focus")[]>;
  443. };
  444. autofocus: BooleanConstructor;
  445. dropdownRender: {
  446. type: PropType<import("../vc-select/BaseSelect").DropdownRender>;
  447. };
  448. dropdownAlign: PropType<import("../vc-trigger/interface").AlignType>;
  449. placeholder: import("vue-types").VueTypeValidableDef<any>;
  450. loading: {
  451. type: BooleanConstructor;
  452. default: any;
  453. };
  454. onInputKeyDown: PropType<(e: KeyboardEvent) => void>;
  455. removeIcon: import("vue-types").VueTypeValidableDef<any>;
  456. maxTagCount: {
  457. type: PropType<number | "responsive">;
  458. };
  459. maxTagTextLength: NumberConstructor;
  460. maxTagPlaceholder: import("vue-types").VueTypeValidableDef<any>;
  461. tagRender: {
  462. type: PropType<(props: import("../vc-select/BaseSelect").CustomTagProps) => any>;
  463. };
  464. choiceTransitionName: StringConstructor;
  465. optionLabelRender: {
  466. type: PropType<(option: Record<string, any>) => any>;
  467. };
  468. notFoundContent: import("vue-types").VueTypeValidableDef<any>;
  469. onClear: PropType<() => void>;
  470. defaultOpen: {
  471. type: BooleanConstructor;
  472. default: any;
  473. };
  474. getInputElement: {
  475. type: PropType<() => any>;
  476. };
  477. getRawInputElement: {
  478. type: PropType<() => any>;
  479. };
  480. allowClear: {
  481. type: BooleanConstructor;
  482. default: any;
  483. };
  484. showArrow: {
  485. type: BooleanConstructor;
  486. default: any;
  487. };
  488. inputIcon: import("vue-types").VueTypeValidableDef<any>;
  489. clearIcon: import("vue-types").VueTypeValidableDef<any>;
  490. onPopupScroll: PropType<(e: UIEvent) => void>;
  491. };
  492. export declare type MultipleCascaderProps = Partial<ExtractPropTypes<ReturnType<typeof singleCascaderProps>>>;
  493. export declare function internalCascaderProps<OptionType extends BaseOptionType = DefaultOptionType>(): {
  494. onChange: PropType<(value: ValueType, selectOptions: OptionType[] | OptionType[][]) => void>;
  495. customSlots: PropType<Record<string, Function>>;
  496. id: StringConstructor;
  497. prefixCls: StringConstructor;
  498. fieldNames: PropType<FieldNames>;
  499. children: PropType<VueNode[]>;
  500. value: {
  501. type: PropType<ValueType>;
  502. };
  503. defaultValue: {
  504. type: PropType<ValueType>;
  505. };
  506. changeOnSelect: {
  507. type: BooleanConstructor;
  508. default: any;
  509. };
  510. displayRender: PropType<(opt: {
  511. labels: string[];
  512. selectedOptions?: DefaultOptionType[];
  513. }) => any>;
  514. checkable: {
  515. type: BooleanConstructor;
  516. default: any;
  517. };
  518. showCheckedStrategy: {
  519. type: PropType<ShowCheckedStrategy>;
  520. default: string;
  521. };
  522. showSearch: {
  523. type: PropType<boolean | ShowSearchType<DefaultOptionType>>;
  524. default: boolean | ShowSearchType<DefaultOptionType>;
  525. };
  526. searchValue: StringConstructor;
  527. onSearch: PropType<(value: string) => void>;
  528. expandTrigger: PropType<"click" | "hover">;
  529. options: PropType<DefaultOptionType[]>;
  530. /** @private Internal usage. Do not use in your production. */
  531. dropdownPrefixCls: StringConstructor;
  532. loadData: PropType<(selectOptions: DefaultOptionType[]) => void>;
  533. /** @deprecated Use `open` instead */
  534. popupVisible: {
  535. type: BooleanConstructor;
  536. default: any;
  537. };
  538. /** @deprecated Use `dropdownClassName` instead */
  539. popupClassName: StringConstructor;
  540. dropdownClassName: StringConstructor;
  541. dropdownMenuColumnStyle: {
  542. type: PropType<CSSProperties>;
  543. default: CSSProperties;
  544. };
  545. /** @deprecated Use `dropdownStyle` instead */
  546. popupStyle: {
  547. type: PropType<CSSProperties>;
  548. default: CSSProperties;
  549. };
  550. dropdownStyle: {
  551. type: PropType<CSSProperties>;
  552. default: CSSProperties;
  553. };
  554. /** @deprecated Use `placement` instead */
  555. popupPlacement: PropType<Placement>;
  556. placement: PropType<Placement>;
  557. /** @deprecated Use `onDropdownVisibleChange` instead */
  558. onPopupVisibleChange: PropType<(open: boolean) => void>;
  559. onDropdownVisibleChange: PropType<(open: boolean) => void>;
  560. expandIcon: import("vue-types").VueTypeValidableDef<any>;
  561. loadingIcon: import("vue-types").VueTypeValidableDef<any>;
  562. onFocus: {
  563. type: PropType<(e: FocusEvent) => void>;
  564. };
  565. onBlur: {
  566. type: PropType<(e: FocusEvent) => void>;
  567. };
  568. onKeydown: PropType<(e: KeyboardEvent) => void>;
  569. onKeyup: PropType<(e: KeyboardEvent) => void>;
  570. onClick: PropType<(e: MouseEvent) => void>;
  571. onMousedown: PropType<(e: MouseEvent) => void>;
  572. onMouseenter: PropType<(e: MouseEvent) => void>;
  573. onMouseleave: PropType<(e: MouseEvent) => void>;
  574. direction: {
  575. type: PropType<"ltr" | "rtl">;
  576. };
  577. open: {
  578. type: BooleanConstructor;
  579. default: any;
  580. };
  581. animation: StringConstructor;
  582. disabled: {
  583. type: BooleanConstructor;
  584. default: any;
  585. };
  586. tabindex: NumberConstructor;
  587. getPopupContainer: {
  588. type: PropType<import("../vc-select/BaseSelect").RenderDOMFunc>;
  589. };
  590. dropdownMatchSelectWidth: {
  591. type: PropType<number | boolean>;
  592. default: any;
  593. };
  594. transitionName: StringConstructor;
  595. showAction: {
  596. type: PropType<("click" | "focus")[]>;
  597. };
  598. autofocus: BooleanConstructor;
  599. dropdownRender: {
  600. type: PropType<import("../vc-select/BaseSelect").DropdownRender>;
  601. };
  602. dropdownAlign: PropType<import("../vc-trigger/interface").AlignType>;
  603. placeholder: import("vue-types").VueTypeValidableDef<any>;
  604. loading: {
  605. type: BooleanConstructor;
  606. default: any;
  607. };
  608. onInputKeyDown: PropType<(e: KeyboardEvent) => void>;
  609. removeIcon: import("vue-types").VueTypeValidableDef<any>;
  610. maxTagCount: {
  611. type: PropType<number | "responsive">;
  612. };
  613. maxTagTextLength: NumberConstructor;
  614. maxTagPlaceholder: import("vue-types").VueTypeValidableDef<any>;
  615. tagRender: {
  616. type: PropType<(props: import("../vc-select/BaseSelect").CustomTagProps) => any>;
  617. };
  618. choiceTransitionName: StringConstructor;
  619. optionLabelRender: {
  620. type: PropType<(option: Record<string, any>) => any>;
  621. };
  622. notFoundContent: import("vue-types").VueTypeValidableDef<any>;
  623. onClear: PropType<() => void>;
  624. defaultOpen: {
  625. type: BooleanConstructor;
  626. default: any;
  627. };
  628. getInputElement: {
  629. type: PropType<() => any>;
  630. };
  631. getRawInputElement: {
  632. type: PropType<() => any>;
  633. };
  634. allowClear: {
  635. type: BooleanConstructor;
  636. default: any;
  637. };
  638. showArrow: {
  639. type: BooleanConstructor;
  640. default: any;
  641. };
  642. inputIcon: import("vue-types").VueTypeValidableDef<any>;
  643. clearIcon: import("vue-types").VueTypeValidableDef<any>;
  644. onPopupScroll: PropType<(e: UIEvent) => void>;
  645. };
  646. export declare type CascaderProps = Partial<ExtractPropTypes<ReturnType<typeof internalCascaderProps>>>;
  647. export declare type CascaderRef = Omit<BaseSelectRef, 'scrollTo'>;
  648. declare const _default: import("vue").DefineComponent<{
  649. onChange: PropType<(value: ValueType, selectOptions: DefaultOptionType[] | DefaultOptionType[][]) => void>;
  650. customSlots: PropType<Record<string, Function>>;
  651. id: StringConstructor;
  652. prefixCls: StringConstructor;
  653. fieldNames: PropType<FieldNames>;
  654. children: PropType<VueNode[]>;
  655. value: {
  656. type: PropType<ValueType>;
  657. };
  658. defaultValue: {
  659. type: PropType<ValueType>;
  660. };
  661. changeOnSelect: {
  662. type: BooleanConstructor;
  663. default: any;
  664. };
  665. displayRender: PropType<(opt: {
  666. labels: string[];
  667. selectedOptions?: DefaultOptionType[];
  668. }) => any>;
  669. checkable: {
  670. type: BooleanConstructor;
  671. default: any;
  672. };
  673. showCheckedStrategy: {
  674. type: PropType<ShowCheckedStrategy>;
  675. default: string;
  676. };
  677. showSearch: {
  678. type: PropType<boolean | ShowSearchType<DefaultOptionType>>;
  679. default: boolean | ShowSearchType<DefaultOptionType>;
  680. };
  681. searchValue: StringConstructor;
  682. onSearch: PropType<(value: string) => void>;
  683. expandTrigger: PropType<"click" | "hover">;
  684. options: PropType<DefaultOptionType[]>;
  685. /** @private Internal usage. Do not use in your production. */
  686. dropdownPrefixCls: StringConstructor;
  687. loadData: PropType<(selectOptions: DefaultOptionType[]) => void>;
  688. /** @deprecated Use `open` instead */
  689. popupVisible: {
  690. type: BooleanConstructor;
  691. default: any;
  692. };
  693. /** @deprecated Use `dropdownClassName` instead */
  694. popupClassName: StringConstructor;
  695. dropdownClassName: StringConstructor;
  696. dropdownMenuColumnStyle: {
  697. type: PropType<CSSProperties>;
  698. default: CSSProperties;
  699. };
  700. /** @deprecated Use `dropdownStyle` instead */
  701. popupStyle: {
  702. type: PropType<CSSProperties>;
  703. default: CSSProperties;
  704. };
  705. dropdownStyle: {
  706. type: PropType<CSSProperties>;
  707. default: CSSProperties;
  708. };
  709. /** @deprecated Use `placement` instead */
  710. popupPlacement: PropType<Placement>;
  711. placement: PropType<Placement>;
  712. /** @deprecated Use `onDropdownVisibleChange` instead */
  713. onPopupVisibleChange: PropType<(open: boolean) => void>;
  714. onDropdownVisibleChange: PropType<(open: boolean) => void>;
  715. expandIcon: import("vue-types").VueTypeValidableDef<any>;
  716. loadingIcon: import("vue-types").VueTypeValidableDef<any>;
  717. onFocus: {
  718. type: PropType<(e: FocusEvent) => void>;
  719. };
  720. onBlur: {
  721. type: PropType<(e: FocusEvent) => void>;
  722. };
  723. onKeydown: PropType<(e: KeyboardEvent) => void>;
  724. onKeyup: PropType<(e: KeyboardEvent) => void>;
  725. onClick: PropType<(e: MouseEvent) => void>;
  726. onMousedown: PropType<(e: MouseEvent) => void>;
  727. onMouseenter: PropType<(e: MouseEvent) => void>;
  728. onMouseleave: PropType<(e: MouseEvent) => void>;
  729. direction: {
  730. type: PropType<"ltr" | "rtl">;
  731. };
  732. open: {
  733. type: BooleanConstructor;
  734. default: any;
  735. };
  736. animation: StringConstructor;
  737. disabled: {
  738. type: BooleanConstructor;
  739. default: any;
  740. };
  741. tabindex: NumberConstructor;
  742. getPopupContainer: {
  743. type: PropType<import("../vc-select/BaseSelect").RenderDOMFunc>;
  744. };
  745. dropdownMatchSelectWidth: {
  746. type: PropType<number | boolean>;
  747. default: any;
  748. };
  749. transitionName: StringConstructor;
  750. showAction: {
  751. type: PropType<("click" | "focus")[]>;
  752. };
  753. autofocus: BooleanConstructor;
  754. dropdownRender: {
  755. type: PropType<import("../vc-select/BaseSelect").DropdownRender>;
  756. };
  757. dropdownAlign: PropType<import("../vc-trigger/interface").AlignType>;
  758. placeholder: import("vue-types").VueTypeValidableDef<any>;
  759. loading: {
  760. type: BooleanConstructor;
  761. default: any;
  762. };
  763. onInputKeyDown: PropType<(e: KeyboardEvent) => void>;
  764. removeIcon: import("vue-types").VueTypeValidableDef<any>;
  765. maxTagCount: {
  766. type: PropType<number | "responsive">;
  767. };
  768. maxTagTextLength: NumberConstructor;
  769. maxTagPlaceholder: import("vue-types").VueTypeValidableDef<any>;
  770. tagRender: {
  771. type: PropType<(props: import("../vc-select/BaseSelect").CustomTagProps) => any>;
  772. };
  773. choiceTransitionName: StringConstructor;
  774. optionLabelRender: {
  775. type: PropType<(option: Record<string, any>) => any>;
  776. };
  777. notFoundContent: import("vue-types").VueTypeValidableDef<any>;
  778. onClear: PropType<() => void>;
  779. defaultOpen: {
  780. type: BooleanConstructor;
  781. default: any;
  782. };
  783. getInputElement: {
  784. type: PropType<() => any>;
  785. };
  786. getRawInputElement: {
  787. type: PropType<() => any>;
  788. };
  789. allowClear: {
  790. type: BooleanConstructor;
  791. default: any;
  792. };
  793. showArrow: {
  794. type: BooleanConstructor;
  795. default: any;
  796. };
  797. inputIcon: import("vue-types").VueTypeValidableDef<any>;
  798. clearIcon: import("vue-types").VueTypeValidableDef<any>;
  799. onPopupScroll: PropType<(e: UIEvent) => void>;
  800. }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
  801. onChange: PropType<(value: ValueType, selectOptions: DefaultOptionType[] | DefaultOptionType[][]) => void>;
  802. customSlots: PropType<Record<string, Function>>;
  803. id: StringConstructor;
  804. prefixCls: StringConstructor;
  805. fieldNames: PropType<FieldNames>;
  806. children: PropType<VueNode[]>;
  807. value: {
  808. type: PropType<ValueType>;
  809. };
  810. defaultValue: {
  811. type: PropType<ValueType>;
  812. };
  813. changeOnSelect: {
  814. type: BooleanConstructor;
  815. default: any;
  816. };
  817. displayRender: PropType<(opt: {
  818. labels: string[];
  819. selectedOptions?: DefaultOptionType[];
  820. }) => any>;
  821. checkable: {
  822. type: BooleanConstructor;
  823. default: any;
  824. };
  825. showCheckedStrategy: {
  826. type: PropType<ShowCheckedStrategy>;
  827. default: string;
  828. };
  829. showSearch: {
  830. type: PropType<boolean | ShowSearchType<DefaultOptionType>>;
  831. default: boolean | ShowSearchType<DefaultOptionType>;
  832. };
  833. searchValue: StringConstructor;
  834. onSearch: PropType<(value: string) => void>;
  835. expandTrigger: PropType<"click" | "hover">;
  836. options: PropType<DefaultOptionType[]>;
  837. /** @private Internal usage. Do not use in your production. */
  838. dropdownPrefixCls: StringConstructor;
  839. loadData: PropType<(selectOptions: DefaultOptionType[]) => void>;
  840. /** @deprecated Use `open` instead */
  841. popupVisible: {
  842. type: BooleanConstructor;
  843. default: any;
  844. };
  845. /** @deprecated Use `dropdownClassName` instead */
  846. popupClassName: StringConstructor;
  847. dropdownClassName: StringConstructor;
  848. dropdownMenuColumnStyle: {
  849. type: PropType<CSSProperties>;
  850. default: CSSProperties;
  851. };
  852. /** @deprecated Use `dropdownStyle` instead */
  853. popupStyle: {
  854. type: PropType<CSSProperties>;
  855. default: CSSProperties;
  856. };
  857. dropdownStyle: {
  858. type: PropType<CSSProperties>;
  859. default: CSSProperties;
  860. };
  861. /** @deprecated Use `placement` instead */
  862. popupPlacement: PropType<Placement>;
  863. placement: PropType<Placement>;
  864. /** @deprecated Use `onDropdownVisibleChange` instead */
  865. onPopupVisibleChange: PropType<(open: boolean) => void>;
  866. onDropdownVisibleChange: PropType<(open: boolean) => void>;
  867. expandIcon: import("vue-types").VueTypeValidableDef<any>;
  868. loadingIcon: import("vue-types").VueTypeValidableDef<any>;
  869. onFocus: {
  870. type: PropType<(e: FocusEvent) => void>;
  871. };
  872. onBlur: {
  873. type: PropType<(e: FocusEvent) => void>;
  874. };
  875. onKeydown: PropType<(e: KeyboardEvent) => void>;
  876. onKeyup: PropType<(e: KeyboardEvent) => void>;
  877. onClick: PropType<(e: MouseEvent) => void>;
  878. onMousedown: PropType<(e: MouseEvent) => void>;
  879. onMouseenter: PropType<(e: MouseEvent) => void>;
  880. onMouseleave: PropType<(e: MouseEvent) => void>;
  881. direction: {
  882. type: PropType<"ltr" | "rtl">;
  883. };
  884. open: {
  885. type: BooleanConstructor;
  886. default: any;
  887. };
  888. animation: StringConstructor;
  889. disabled: {
  890. type: BooleanConstructor;
  891. default: any;
  892. };
  893. tabindex: NumberConstructor;
  894. getPopupContainer: {
  895. type: PropType<import("../vc-select/BaseSelect").RenderDOMFunc>;
  896. };
  897. dropdownMatchSelectWidth: {
  898. type: PropType<number | boolean>;
  899. default: any;
  900. };
  901. transitionName: StringConstructor;
  902. showAction: {
  903. type: PropType<("click" | "focus")[]>;
  904. };
  905. autofocus: BooleanConstructor;
  906. dropdownRender: {
  907. type: PropType<import("../vc-select/BaseSelect").DropdownRender>;
  908. };
  909. dropdownAlign: PropType<import("../vc-trigger/interface").AlignType>;
  910. placeholder: import("vue-types").VueTypeValidableDef<any>;
  911. loading: {
  912. type: BooleanConstructor;
  913. default: any;
  914. };
  915. onInputKeyDown: PropType<(e: KeyboardEvent) => void>;
  916. removeIcon: import("vue-types").VueTypeValidableDef<any>;
  917. maxTagCount: {
  918. type: PropType<number | "responsive">;
  919. };
  920. maxTagTextLength: NumberConstructor;
  921. maxTagPlaceholder: import("vue-types").VueTypeValidableDef<any>;
  922. tagRender: {
  923. type: PropType<(props: import("../vc-select/BaseSelect").CustomTagProps) => any>;
  924. };
  925. choiceTransitionName: StringConstructor;
  926. optionLabelRender: {
  927. type: PropType<(option: Record<string, any>) => any>;
  928. };
  929. notFoundContent: import("vue-types").VueTypeValidableDef<any>;
  930. onClear: PropType<() => void>;
  931. defaultOpen: {
  932. type: BooleanConstructor;
  933. default: any;
  934. };
  935. getInputElement: {
  936. type: PropType<() => any>;
  937. };
  938. getRawInputElement: {
  939. type: PropType<() => any>;
  940. };
  941. allowClear: {
  942. type: BooleanConstructor;
  943. default: any;
  944. };
  945. showArrow: {
  946. type: BooleanConstructor;
  947. default: any;
  948. };
  949. inputIcon: import("vue-types").VueTypeValidableDef<any>;
  950. clearIcon: import("vue-types").VueTypeValidableDef<any>;
  951. onPopupScroll: PropType<(e: UIEvent) => void>;
  952. }>>, {
  953. open: boolean;
  954. disabled: boolean;
  955. dropdownMatchSelectWidth: number | boolean;
  956. popupStyle: CSSProperties;
  957. popupVisible: boolean;
  958. autofocus: boolean;
  959. dropdownStyle: CSSProperties;
  960. checkable: boolean;
  961. loading: boolean;
  962. showSearch: boolean | ShowSearchType<DefaultOptionType>;
  963. defaultOpen: boolean;
  964. allowClear: boolean;
  965. showArrow: boolean;
  966. changeOnSelect: boolean;
  967. showCheckedStrategy: ShowCheckedStrategy;
  968. dropdownMenuColumnStyle: CSSProperties;
  969. }>;
  970. export default _default;