07a7e229e98d1df6fb1a1e75b1a2b56bf3d4e99ec9fc23a0f319ffb925eb3a4dda6f3c5720fa83fb5e445567717366fed36e9cef141e572f0328fbb13eb0b6 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. import type { ExtractPropTypes, VNode, __ExtractPublicPropTypes } from 'vue';
  2. import type { Awaitable } from 'element-plus/es/utils';
  3. import type { TabNavInstance } from './tab-nav';
  4. import type { TabPaneName, TabsPaneContext } from './constants';
  5. export declare const tabsProps: {
  6. readonly type: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "" | "card" | "border-card", unknown, "", boolean>;
  7. readonly closable: BooleanConstructor;
  8. readonly addable: BooleanConstructor;
  9. readonly modelValue: {
  10. readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
  11. readonly required: false;
  12. readonly validator: ((val: unknown) => boolean) | undefined;
  13. __epPropKey: true;
  14. };
  15. readonly editable: BooleanConstructor;
  16. readonly tabPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "top" | "bottom" | "left" | "right", unknown, "top", boolean>;
  17. readonly beforeLeave: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>) | (() => (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>) | {
  18. (): (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>;
  19. new (): any;
  20. readonly prototype: any;
  21. } | ((new (...args: any[]) => (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>) | (() => (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>) | {
  22. (): (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>;
  23. new (): any;
  24. readonly prototype: any;
  25. })[], unknown, unknown, () => true, boolean>;
  26. readonly stretch: BooleanConstructor;
  27. };
  28. export type TabsProps = ExtractPropTypes<typeof tabsProps>;
  29. export type TabsPropsPublic = __ExtractPublicPropTypes<typeof tabsProps>;
  30. export declare const tabsEmits: {
  31. "update:modelValue": (name: TabPaneName) => name is string | number;
  32. tabClick: (pane: TabsPaneContext, ev: Event) => boolean;
  33. tabChange: (name: TabPaneName) => name is string | number;
  34. edit: (paneName: TabPaneName | undefined, action: "remove" | "add") => boolean;
  35. tabRemove: (name: TabPaneName) => name is string | number;
  36. tabAdd: () => boolean;
  37. };
  38. export type TabsEmits = typeof tabsEmits;
  39. export type TabsPanes = Record<number, TabsPaneContext>;
  40. declare const Tabs: import("vue").DefineComponent<{
  41. readonly type: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "" | "card" | "border-card", unknown, "", boolean>;
  42. readonly closable: BooleanConstructor;
  43. readonly addable: BooleanConstructor;
  44. readonly modelValue: {
  45. readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
  46. readonly required: false;
  47. readonly validator: ((val: unknown) => boolean) | undefined;
  48. __epPropKey: true;
  49. };
  50. readonly editable: BooleanConstructor;
  51. readonly tabPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "top" | "bottom" | "left" | "right", unknown, "top", boolean>;
  52. readonly beforeLeave: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>) | (() => (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>) | {
  53. (): (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>;
  54. new (): any;
  55. readonly prototype: any;
  56. } | ((new (...args: any[]) => (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>) | (() => (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>) | {
  57. (): (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>;
  58. new (): any;
  59. readonly prototype: any;
  60. })[], unknown, unknown, () => true, boolean>;
  61. readonly stretch: BooleanConstructor;
  62. }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
  63. "update:modelValue": (name: TabPaneName) => name is string | number;
  64. tabClick: (pane: TabsPaneContext, ev: Event) => boolean;
  65. tabChange: (name: TabPaneName) => name is string | number;
  66. edit: (paneName: TabPaneName | undefined, action: "remove" | "add") => boolean;
  67. tabRemove: (name: TabPaneName) => name is string | number;
  68. tabAdd: () => boolean;
  69. }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
  70. readonly type: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "" | "card" | "border-card", unknown, "", boolean>;
  71. readonly closable: BooleanConstructor;
  72. readonly addable: BooleanConstructor;
  73. readonly modelValue: {
  74. readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
  75. readonly required: false;
  76. readonly validator: ((val: unknown) => boolean) | undefined;
  77. __epPropKey: true;
  78. };
  79. readonly editable: BooleanConstructor;
  80. readonly tabPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "top" | "bottom" | "left" | "right", unknown, "top", boolean>;
  81. readonly beforeLeave: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>) | (() => (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>) | {
  82. (): (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>;
  83. new (): any;
  84. readonly prototype: any;
  85. } | ((new (...args: any[]) => (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>) | (() => (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>) | {
  86. (): (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>;
  87. new (): any;
  88. readonly prototype: any;
  89. })[], unknown, unknown, () => true, boolean>;
  90. readonly stretch: BooleanConstructor;
  91. }>> & {
  92. "onUpdate:modelValue"?: ((name: TabPaneName) => any) | undefined;
  93. onTabClick?: ((pane: {
  94. uid: number;
  95. getVnode: () => VNode;
  96. slots: import("vue").Slots;
  97. props: {
  98. readonly label: string;
  99. readonly disabled: boolean;
  100. readonly lazy: boolean;
  101. readonly name?: import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown> | undefined;
  102. readonly closable?: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown> | undefined;
  103. };
  104. paneName: TabPaneName | undefined;
  105. active: boolean;
  106. index: string | undefined;
  107. isClosable: boolean;
  108. isFocusInsidePane: () => boolean | undefined;
  109. }, ev: Event) => any) | undefined;
  110. onTabRemove?: ((name: TabPaneName) => any) | undefined;
  111. onTabChange?: ((name: TabPaneName) => any) | undefined;
  112. onEdit?: ((paneName: TabPaneName | undefined, action: "add" | "remove") => any) | undefined;
  113. onTabAdd?: (() => any) | undefined;
  114. }, {
  115. readonly stretch: boolean;
  116. readonly type: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "card" | "border-card", unknown>;
  117. readonly closable: boolean;
  118. readonly beforeLeave: (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>;
  119. readonly editable: boolean;
  120. readonly tabPosition: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "top" | "bottom" | "left" | "right", unknown>;
  121. readonly addable: boolean;
  122. }>;
  123. export type TabsInstance = InstanceType<typeof Tabs> & {
  124. currentName: TabPaneName;
  125. tabNavRef: TabNavInstance | undefined;
  126. };
  127. export default Tabs;