index.d.ts 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350
  1. import type { MenuProps } from './src/Menu';
  2. import type { MenuItemProps } from './src/MenuItem';
  3. import MenuItem from './src/MenuItem';
  4. import type { SubMenuProps } from './src/SubMenu';
  5. import SubMenu from './src/SubMenu';
  6. import type { MenuItemGroupProps } from './src/ItemGroup';
  7. import ItemGroup from './src/ItemGroup';
  8. import Divider from './src/Divider';
  9. import type { MenuDividerProps } from './src/Divider';
  10. import type { Plugin } from 'vue';
  11. import type { MenuTheme, MenuMode } from './src/interface';
  12. import type { ItemType } from './src/hooks/useItems';
  13. export type { MenuProps, SubMenuProps, MenuItemProps, MenuItemGroupProps, MenuTheme, MenuMode, MenuDividerProps, ItemType, };
  14. export { SubMenu, MenuItem as Item, MenuItem, ItemGroup, ItemGroup as MenuItemGroup, Divider, Divider as MenuDivider, };
  15. declare const _default: {
  16. new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
  17. id: StringConstructor;
  18. prefixCls: StringConstructor;
  19. items: import("vue").PropType<ItemType[]>;
  20. disabled: BooleanConstructor;
  21. inlineCollapsed: BooleanConstructor;
  22. disabledOverflow: BooleanConstructor;
  23. forceSubMenuRender: BooleanConstructor;
  24. openKeys: import("vue").PropType<import("../_util/type").Key[]>;
  25. selectedKeys: import("vue").PropType<import("../_util/type").Key[]>;
  26. activeKey: StringConstructor;
  27. selectable: {
  28. type: BooleanConstructor;
  29. default: boolean;
  30. };
  31. multiple: {
  32. type: BooleanConstructor;
  33. default: boolean;
  34. };
  35. tabindex: {
  36. type: (StringConstructor | NumberConstructor)[];
  37. };
  38. motion: import("vue").PropType<import("../_util/transition").CSSMotionProps>;
  39. role: StringConstructor;
  40. theme: {
  41. type: import("vue").PropType<MenuTheme>;
  42. default: string;
  43. };
  44. mode: {
  45. type: import("vue").PropType<MenuMode>;
  46. default: string;
  47. };
  48. inlineIndent: {
  49. type: NumberConstructor;
  50. default: number;
  51. };
  52. subMenuOpenDelay: {
  53. type: NumberConstructor;
  54. default: number;
  55. };
  56. subMenuCloseDelay: {
  57. type: NumberConstructor;
  58. default: number;
  59. };
  60. builtinPlacements: {
  61. type: import("vue").PropType<import("./src/interface").BuiltinPlacements>;
  62. };
  63. triggerSubMenuAction: {
  64. type: import("vue").PropType<import("./src/interface").TriggerSubMenuAction>;
  65. default: string;
  66. };
  67. getPopupContainer: import("vue").PropType<(node: HTMLElement) => HTMLElement>;
  68. expandIcon: import("vue").PropType<(p?: {
  69. [key: string]: any;
  70. isOpen: boolean;
  71. }) => any>;
  72. onOpenChange: import("vue").PropType<(keys: import("../_util/type").Key[]) => void>;
  73. onSelect: import("vue").PropType<import("./src/interface").SelectEventHandler>;
  74. onDeselect: import("vue").PropType<import("./src/interface").SelectEventHandler>;
  75. onClick: import("vue").PropType<import("./src/interface").MenuClickEventHandler>;
  76. onFocus: import("vue").PropType<import("../_util/EventInterface").FocusEventHandler>;
  77. onBlur: import("vue").PropType<import("../_util/EventInterface").FocusEventHandler>;
  78. onMousedown: import("vue").PropType<import("../_util/EventInterface").MouseEventHandler>;
  79. 'onUpdate:openKeys': import("vue").PropType<(keys: import("../_util/type").Key[]) => void>;
  80. 'onUpdate:selectedKeys': import("vue").PropType<(keys: import("../_util/type").Key[]) => void>;
  81. 'onUpdate:activeKey': import("vue").PropType<(key: import("../_util/type").Key) => void>;
  82. }>>, () => import("../_util/type").VueNode, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
  83. id: StringConstructor;
  84. prefixCls: StringConstructor;
  85. items: import("vue").PropType<ItemType[]>;
  86. disabled: BooleanConstructor;
  87. inlineCollapsed: BooleanConstructor;
  88. disabledOverflow: BooleanConstructor;
  89. forceSubMenuRender: BooleanConstructor;
  90. openKeys: import("vue").PropType<import("../_util/type").Key[]>;
  91. selectedKeys: import("vue").PropType<import("../_util/type").Key[]>;
  92. activeKey: StringConstructor;
  93. selectable: {
  94. type: BooleanConstructor;
  95. default: boolean;
  96. };
  97. multiple: {
  98. type: BooleanConstructor;
  99. default: boolean;
  100. };
  101. tabindex: {
  102. type: (StringConstructor | NumberConstructor)[];
  103. };
  104. motion: import("vue").PropType<import("../_util/transition").CSSMotionProps>;
  105. role: StringConstructor;
  106. theme: {
  107. type: import("vue").PropType<MenuTheme>;
  108. default: string;
  109. };
  110. mode: {
  111. type: import("vue").PropType<MenuMode>;
  112. default: string;
  113. };
  114. inlineIndent: {
  115. type: NumberConstructor;
  116. default: number;
  117. };
  118. subMenuOpenDelay: {
  119. type: NumberConstructor;
  120. default: number;
  121. };
  122. subMenuCloseDelay: {
  123. type: NumberConstructor;
  124. default: number;
  125. };
  126. builtinPlacements: {
  127. type: import("vue").PropType<import("./src/interface").BuiltinPlacements>;
  128. };
  129. triggerSubMenuAction: {
  130. type: import("vue").PropType<import("./src/interface").TriggerSubMenuAction>;
  131. default: string;
  132. };
  133. getPopupContainer: import("vue").PropType<(node: HTMLElement) => HTMLElement>;
  134. expandIcon: import("vue").PropType<(p?: {
  135. [key: string]: any;
  136. isOpen: boolean;
  137. }) => any>;
  138. onOpenChange: import("vue").PropType<(keys: import("../_util/type").Key[]) => void>;
  139. onSelect: import("vue").PropType<import("./src/interface").SelectEventHandler>;
  140. onDeselect: import("vue").PropType<import("./src/interface").SelectEventHandler>;
  141. onClick: import("vue").PropType<import("./src/interface").MenuClickEventHandler>;
  142. onFocus: import("vue").PropType<import("../_util/EventInterface").FocusEventHandler>;
  143. onBlur: import("vue").PropType<import("../_util/EventInterface").FocusEventHandler>;
  144. onMousedown: import("vue").PropType<import("../_util/EventInterface").MouseEventHandler>;
  145. 'onUpdate:openKeys': import("vue").PropType<(keys: import("../_util/type").Key[]) => void>;
  146. 'onUpdate:selectedKeys': import("vue").PropType<(keys: import("../_util/type").Key[]) => void>;
  147. 'onUpdate:activeKey': import("vue").PropType<(key: import("../_util/type").Key) => void>;
  148. }>>, {
  149. mode: MenuMode;
  150. multiple: boolean;
  151. disabled: boolean;
  152. theme: MenuTheme;
  153. inlineIndent: number;
  154. inlineCollapsed: boolean;
  155. subMenuOpenDelay: number;
  156. subMenuCloseDelay: number;
  157. triggerSubMenuAction: import("./src/interface").TriggerSubMenuAction;
  158. forceSubMenuRender: boolean;
  159. disabledOverflow: boolean;
  160. selectable: boolean;
  161. }, true, {}, import("../_util/type").CustomSlotsType<{
  162. expandIcon?: {
  163. [key: string]: any;
  164. isOpen: boolean;
  165. };
  166. overflowedIndicator?: any;
  167. default: any;
  168. }>, {
  169. P: {};
  170. B: {};
  171. D: {};
  172. C: {};
  173. M: {};
  174. Defaults: {};
  175. }, Readonly<import("vue").ExtractPropTypes<{
  176. id: StringConstructor;
  177. prefixCls: StringConstructor;
  178. items: import("vue").PropType<ItemType[]>;
  179. disabled: BooleanConstructor;
  180. inlineCollapsed: BooleanConstructor;
  181. disabledOverflow: BooleanConstructor;
  182. forceSubMenuRender: BooleanConstructor;
  183. openKeys: import("vue").PropType<import("../_util/type").Key[]>;
  184. selectedKeys: import("vue").PropType<import("../_util/type").Key[]>;
  185. activeKey: StringConstructor;
  186. selectable: {
  187. type: BooleanConstructor;
  188. default: boolean;
  189. };
  190. multiple: {
  191. type: BooleanConstructor;
  192. default: boolean;
  193. };
  194. tabindex: {
  195. type: (StringConstructor | NumberConstructor)[];
  196. };
  197. motion: import("vue").PropType<import("../_util/transition").CSSMotionProps>;
  198. role: StringConstructor;
  199. theme: {
  200. type: import("vue").PropType<MenuTheme>;
  201. default: string;
  202. };
  203. mode: {
  204. type: import("vue").PropType<MenuMode>;
  205. default: string;
  206. };
  207. inlineIndent: {
  208. type: NumberConstructor;
  209. default: number;
  210. };
  211. subMenuOpenDelay: {
  212. type: NumberConstructor;
  213. default: number;
  214. };
  215. subMenuCloseDelay: {
  216. type: NumberConstructor;
  217. default: number;
  218. };
  219. builtinPlacements: {
  220. type: import("vue").PropType<import("./src/interface").BuiltinPlacements>;
  221. };
  222. triggerSubMenuAction: {
  223. type: import("vue").PropType<import("./src/interface").TriggerSubMenuAction>;
  224. default: string;
  225. };
  226. getPopupContainer: import("vue").PropType<(node: HTMLElement) => HTMLElement>;
  227. expandIcon: import("vue").PropType<(p?: {
  228. [key: string]: any;
  229. isOpen: boolean;
  230. }) => any>;
  231. onOpenChange: import("vue").PropType<(keys: import("../_util/type").Key[]) => void>;
  232. onSelect: import("vue").PropType<import("./src/interface").SelectEventHandler>;
  233. onDeselect: import("vue").PropType<import("./src/interface").SelectEventHandler>;
  234. onClick: import("vue").PropType<import("./src/interface").MenuClickEventHandler>;
  235. onFocus: import("vue").PropType<import("../_util/EventInterface").FocusEventHandler>;
  236. onBlur: import("vue").PropType<import("../_util/EventInterface").FocusEventHandler>;
  237. onMousedown: import("vue").PropType<import("../_util/EventInterface").MouseEventHandler>;
  238. 'onUpdate:openKeys': import("vue").PropType<(keys: import("../_util/type").Key[]) => void>;
  239. 'onUpdate:selectedKeys': import("vue").PropType<(keys: import("../_util/type").Key[]) => void>;
  240. 'onUpdate:activeKey': import("vue").PropType<(key: import("../_util/type").Key) => void>;
  241. }>>, () => import("../_util/type").VueNode, {}, {}, {}, {
  242. mode: MenuMode;
  243. multiple: boolean;
  244. disabled: boolean;
  245. theme: MenuTheme;
  246. inlineIndent: number;
  247. inlineCollapsed: boolean;
  248. subMenuOpenDelay: number;
  249. subMenuCloseDelay: number;
  250. triggerSubMenuAction: import("./src/interface").TriggerSubMenuAction;
  251. forceSubMenuRender: boolean;
  252. disabledOverflow: boolean;
  253. selectable: boolean;
  254. }>;
  255. __isFragment?: never;
  256. __isTeleport?: never;
  257. __isSuspense?: never;
  258. } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
  259. id: StringConstructor;
  260. prefixCls: StringConstructor;
  261. items: import("vue").PropType<ItemType[]>;
  262. disabled: BooleanConstructor;
  263. inlineCollapsed: BooleanConstructor;
  264. disabledOverflow: BooleanConstructor;
  265. forceSubMenuRender: BooleanConstructor;
  266. openKeys: import("vue").PropType<import("../_util/type").Key[]>;
  267. selectedKeys: import("vue").PropType<import("../_util/type").Key[]>;
  268. activeKey: StringConstructor;
  269. selectable: {
  270. type: BooleanConstructor;
  271. default: boolean;
  272. };
  273. multiple: {
  274. type: BooleanConstructor;
  275. default: boolean;
  276. };
  277. tabindex: {
  278. type: (StringConstructor | NumberConstructor)[];
  279. };
  280. motion: import("vue").PropType<import("../_util/transition").CSSMotionProps>;
  281. role: StringConstructor;
  282. theme: {
  283. type: import("vue").PropType<MenuTheme>;
  284. default: string;
  285. };
  286. mode: {
  287. type: import("vue").PropType<MenuMode>;
  288. default: string;
  289. };
  290. inlineIndent: {
  291. type: NumberConstructor;
  292. default: number;
  293. };
  294. subMenuOpenDelay: {
  295. type: NumberConstructor;
  296. default: number;
  297. };
  298. subMenuCloseDelay: {
  299. type: NumberConstructor;
  300. default: number;
  301. };
  302. builtinPlacements: {
  303. type: import("vue").PropType<import("./src/interface").BuiltinPlacements>;
  304. };
  305. triggerSubMenuAction: {
  306. type: import("vue").PropType<import("./src/interface").TriggerSubMenuAction>;
  307. default: string;
  308. };
  309. getPopupContainer: import("vue").PropType<(node: HTMLElement) => HTMLElement>;
  310. expandIcon: import("vue").PropType<(p?: {
  311. [key: string]: any;
  312. isOpen: boolean;
  313. }) => any>;
  314. onOpenChange: import("vue").PropType<(keys: import("../_util/type").Key[]) => void>;
  315. onSelect: import("vue").PropType<import("./src/interface").SelectEventHandler>;
  316. onDeselect: import("vue").PropType<import("./src/interface").SelectEventHandler>;
  317. onClick: import("vue").PropType<import("./src/interface").MenuClickEventHandler>;
  318. onFocus: import("vue").PropType<import("../_util/EventInterface").FocusEventHandler>;
  319. onBlur: import("vue").PropType<import("../_util/EventInterface").FocusEventHandler>;
  320. onMousedown: import("vue").PropType<import("../_util/EventInterface").MouseEventHandler>;
  321. 'onUpdate:openKeys': import("vue").PropType<(keys: import("../_util/type").Key[]) => void>;
  322. 'onUpdate:selectedKeys': import("vue").PropType<(keys: import("../_util/type").Key[]) => void>;
  323. 'onUpdate:activeKey': import("vue").PropType<(key: import("../_util/type").Key) => void>;
  324. }>>, () => import("../_util/type").VueNode, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
  325. mode: MenuMode;
  326. multiple: boolean;
  327. disabled: boolean;
  328. theme: MenuTheme;
  329. inlineIndent: number;
  330. inlineCollapsed: boolean;
  331. subMenuOpenDelay: number;
  332. subMenuCloseDelay: number;
  333. triggerSubMenuAction: import("./src/interface").TriggerSubMenuAction;
  334. forceSubMenuRender: boolean;
  335. disabledOverflow: boolean;
  336. selectable: boolean;
  337. }, {}, string, import("../_util/type").CustomSlotsType<{
  338. expandIcon?: {
  339. [key: string]: any;
  340. isOpen: boolean;
  341. };
  342. overflowedIndicator?: any;
  343. default: any;
  344. }>> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Plugin<any[]> & {
  345. readonly Item: typeof MenuItem;
  346. readonly SubMenu: typeof SubMenu;
  347. readonly Divider: typeof Divider;
  348. readonly ItemGroup: typeof ItemGroup;
  349. };
  350. export default _default;