uni-tree-view.vue.d.ts 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /* eslint-disable ts/no-empty-object-type */
  2. import type { DefineComponent, PublicProps, SlotsType } from "vue";
  3. import type { AllowedComponentProps } from "../../types";
  4. import type {
  5. UniTreeViewEmits,
  6. UniTreeViewExposed,
  7. UniTreeViewProps,
  8. UniTreeViewSlots
  9. } from "./types";
  10. export type * from "./types";
  11. /**
  12. * `DefineComponent` 的 E 参数要求 `EmitsOptions`(函数值)形态,
  13. * 这里从 `UniTreeViewEmits` 的元组形态映射而来。
  14. */
  15. type UniTreeViewEmitsOptions = {
  16. [K in keyof UniTreeViewEmits]: (...args: UniTreeViewEmits[K]) => any;
  17. };
  18. /**
  19. * Vue 的 `ResolveProps` 未导出,按同等语义复刻:原始 props 只读化并透传事件属性,
  20. * 事件参数直接取自 `UniTreeViewEmits` 的具名元组以保留 payload 类型。
  21. */
  22. type UniTreeViewEmitsToProps = {
  23. [K in keyof UniTreeViewEmits as `on${Capitalize<string & K>}`]?: (...args: UniTreeViewEmits[K]) => any;
  24. };
  25. type UniTreeViewComponent = DefineComponent<
  26. AllowedComponentProps & UniTreeViewProps,
  27. UniTreeViewExposed,
  28. {},
  29. {},
  30. {},
  31. {},
  32. {},
  33. UniTreeViewEmitsOptions,
  34. string,
  35. PublicProps,
  36. Readonly<AllowedComponentProps & UniTreeViewProps> & UniTreeViewEmitsToProps,
  37. {},
  38. SlotsType<UniTreeViewSlots>
  39. >;
  40. declare const _default: UniTreeViewComponent;
  41. export default _default;