tdesign-vue
Version:
1,096 lines (1,095 loc) • 71.3 kB
TypeScript
import { TdMenuProps, TdHeadMenuProps, TdSubmenuProps, TdMenuItemProps } from './type';
import './style';
export * from './type';
export declare type MenuProps = TdMenuProps;
export declare type HeadMenuProps = TdHeadMenuProps;
export declare type SubmenuProps = TdSubmenuProps;
export declare type MenuItemProps = TdMenuItemProps;
export declare const Menu: import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
styles: import("@vue/composition-api").ComputedRef<{
height: string;
width: string;
}>;
menuClass: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
innerClasses: import("@vue/composition-api").ComputedRef<string[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}> & import("@vue/composition-api").Data, {}, {}, {
collapsed: BooleanConstructor;
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandMutex: BooleanConstructor;
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
width: {
type: import("vue").PropType<string | number | (string | number)[]>;
default: string;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}, import("@vue/composition-api").ExtractPropTypes<{
collapsed: BooleanConstructor;
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandMutex: BooleanConstructor;
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
width: {
type: import("vue").PropType<string | number | (string | number)[]>;
default: string;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
width: string | number | (string | number)[];
theme: "dark" | "light";
expandType: "normal" | "popup";
collapsed: boolean;
expandMutex: boolean;
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, import("@vue/composition-api").ShallowUnwrapRef<{
styles: import("@vue/composition-api").ComputedRef<{
height: string;
width: string;
}>;
menuClass: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
innerClasses: import("@vue/composition-api").ComputedRef<string[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}>, import("@vue/composition-api").Data, {}, {}, {}, {}, {}, {
width: string | number | (string | number)[];
theme: "dark" | "light";
expandType: "normal" | "popup";
collapsed: boolean;
expandMutex: boolean;
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, {
width: string | number | (string | number)[];
theme: "dark" | "light";
expandType: "normal" | "popup";
collapsed: boolean;
expandMutex: boolean;
}, true>) & import("vue").PluginObject<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
styles: import("@vue/composition-api").ComputedRef<{
height: string;
width: string;
}>;
menuClass: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
innerClasses: import("@vue/composition-api").ComputedRef<string[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}> & import("@vue/composition-api").Data, {}, {}, {
collapsed: BooleanConstructor;
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandMutex: BooleanConstructor;
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
width: {
type: import("vue").PropType<string | number | (string | number)[]>;
default: string;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}, import("@vue/composition-api").ExtractPropTypes<{
collapsed: BooleanConstructor;
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandMutex: BooleanConstructor;
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
width: {
type: import("vue").PropType<string | number | (string | number)[]>;
default: string;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
width: string | number | (string | number)[];
theme: "dark" | "light";
expandType: "normal" | "popup";
collapsed: boolean;
expandMutex: boolean;
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, import("@vue/composition-api").ShallowUnwrapRef<{
styles: import("@vue/composition-api").ComputedRef<{
height: string;
width: string;
}>;
menuClass: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
innerClasses: import("@vue/composition-api").ComputedRef<string[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}>, import("@vue/composition-api").Data, {}, {}, {}, {}, {}, {
width: string | number | (string | number)[];
theme: "dark" | "light";
expandType: "normal" | "popup";
collapsed: boolean;
expandMutex: boolean;
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, {
width: string | number | (string | number)[];
theme: "dark" | "light";
expandType: "normal" | "popup";
collapsed: boolean;
expandMutex: boolean;
}, true>)> & import("vue").PluginObject<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
styles: import("@vue/composition-api").ComputedRef<{
height: string;
width: string;
}>;
menuClass: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
innerClasses: import("@vue/composition-api").ComputedRef<string[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}> & import("@vue/composition-api").Data, {}, {}, {
collapsed: BooleanConstructor;
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandMutex: BooleanConstructor;
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
width: {
type: import("vue").PropType<string | number | (string | number)[]>;
default: string;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}, import("@vue/composition-api").ExtractPropTypes<{
collapsed: BooleanConstructor;
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandMutex: BooleanConstructor;
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
width: {
type: import("vue").PropType<string | number | (string | number)[]>;
default: string;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
width: string | number | (string | number)[];
theme: "dark" | "light";
expandType: "normal" | "popup";
collapsed: boolean;
expandMutex: boolean;
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, import("@vue/composition-api").ShallowUnwrapRef<{
styles: import("@vue/composition-api").ComputedRef<{
height: string;
width: string;
}>;
menuClass: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
innerClasses: import("@vue/composition-api").ComputedRef<string[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}>, import("@vue/composition-api").Data, {}, {}, {}, {}, {}, {
width: string | number | (string | number)[];
theme: "dark" | "light";
expandType: "normal" | "popup";
collapsed: boolean;
expandMutex: boolean;
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, {
width: string | number | (string | number)[];
theme: "dark" | "light";
expandType: "normal" | "popup";
collapsed: boolean;
expandMutex: boolean;
}, true>) & import("vue").PluginObject<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
styles: import("@vue/composition-api").ComputedRef<{
height: string;
width: string;
}>;
menuClass: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
innerClasses: import("@vue/composition-api").ComputedRef<string[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}> & import("@vue/composition-api").Data, {}, {}, {
collapsed: BooleanConstructor;
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandMutex: BooleanConstructor;
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
width: {
type: import("vue").PropType<string | number | (string | number)[]>;
default: string;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}, import("@vue/composition-api").ExtractPropTypes<{
collapsed: BooleanConstructor;
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandMutex: BooleanConstructor;
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
width: {
type: import("vue").PropType<string | number | (string | number)[]>;
default: string;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
width: string | number | (string | number)[];
theme: "dark" | "light";
expandType: "normal" | "popup";
collapsed: boolean;
expandMutex: boolean;
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, import("@vue/composition-api").ShallowUnwrapRef<{
styles: import("@vue/composition-api").ComputedRef<{
height: string;
width: string;
}>;
menuClass: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
innerClasses: import("@vue/composition-api").ComputedRef<string[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}>, import("@vue/composition-api").Data, {}, {}, {}, {}, {}, {
width: string | number | (string | number)[];
theme: "dark" | "light";
expandType: "normal" | "popup";
collapsed: boolean;
expandMutex: boolean;
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, {
width: string | number | (string | number)[];
theme: "dark" | "light";
expandType: "normal" | "popup";
collapsed: boolean;
expandMutex: boolean;
}, true>)>>;
export declare const HeadMenu: import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
mode: import("@vue/composition-api").Ref<"normal" | "popup">;
menuClass: import("@vue/composition-api").ComputedRef<string[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
submenu: any[];
handleTabChange: (value: import("./type").MenuValue) => void;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}> & import("@vue/composition-api").Data, {
renderNormalSubmenu(node: import("./v-menu").VMenuData[], depth: number): JSX.Element;
}, {}, {
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}, import("@vue/composition-api").ExtractPropTypes<{
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
theme: "dark" | "light";
expandType: "normal" | "popup";
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, import("@vue/composition-api").ShallowUnwrapRef<{
mode: import("@vue/composition-api").Ref<"normal" | "popup">;
menuClass: import("@vue/composition-api").ComputedRef<string[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
submenu: any[];
handleTabChange: (value: import("./type").MenuValue) => void;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}>, import("@vue/composition-api").Data, {}, {
renderNormalSubmenu(node: import("./v-menu").VMenuData[], depth: number): JSX.Element;
}, {}, {}, {}, {
theme: "dark" | "light";
expandType: "normal" | "popup";
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, {
theme: "dark" | "light";
expandType: "normal" | "popup";
}, true>) & import("vue").PluginObject<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
mode: import("@vue/composition-api").Ref<"normal" | "popup">;
menuClass: import("@vue/composition-api").ComputedRef<string[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
submenu: any[];
handleTabChange: (value: import("./type").MenuValue) => void;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}> & import("@vue/composition-api").Data, {
renderNormalSubmenu(node: import("./v-menu").VMenuData[], depth: number): JSX.Element;
}, {}, {
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}, import("@vue/composition-api").ExtractPropTypes<{
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
theme: "dark" | "light";
expandType: "normal" | "popup";
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, import("@vue/composition-api").ShallowUnwrapRef<{
mode: import("@vue/composition-api").Ref<"normal" | "popup">;
menuClass: import("@vue/composition-api").ComputedRef<string[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
submenu: any[];
handleTabChange: (value: import("./type").MenuValue) => void;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}>, import("@vue/composition-api").Data, {}, {
renderNormalSubmenu(node: import("./v-menu").VMenuData[], depth: number): JSX.Element;
}, {}, {}, {}, {
theme: "dark" | "light";
expandType: "normal" | "popup";
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, {
theme: "dark" | "light";
expandType: "normal" | "popup";
}, true>)> & import("vue").PluginObject<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
mode: import("@vue/composition-api").Ref<"normal" | "popup">;
menuClass: import("@vue/composition-api").ComputedRef<string[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
submenu: any[];
handleTabChange: (value: import("./type").MenuValue) => void;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}> & import("@vue/composition-api").Data, {
renderNormalSubmenu(node: import("./v-menu").VMenuData[], depth: number): JSX.Element;
}, {}, {
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}, import("@vue/composition-api").ExtractPropTypes<{
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
theme: "dark" | "light";
expandType: "normal" | "popup";
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, import("@vue/composition-api").ShallowUnwrapRef<{
mode: import("@vue/composition-api").Ref<"normal" | "popup">;
menuClass: import("@vue/composition-api").ComputedRef<string[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
submenu: any[];
handleTabChange: (value: import("./type").MenuValue) => void;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}>, import("@vue/composition-api").Data, {}, {
renderNormalSubmenu(node: import("./v-menu").VMenuData[], depth: number): JSX.Element;
}, {}, {}, {}, {
theme: "dark" | "light";
expandType: "normal" | "popup";
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, {
theme: "dark" | "light";
expandType: "normal" | "popup";
}, true>) & import("vue").PluginObject<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
mode: import("@vue/composition-api").Ref<"normal" | "popup">;
menuClass: import("@vue/composition-api").ComputedRef<string[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
submenu: any[];
handleTabChange: (value: import("./type").MenuValue) => void;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}> & import("@vue/composition-api").Data, {
renderNormalSubmenu(node: import("./v-menu").VMenuData[], depth: number): JSX.Element;
}, {}, {
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}, import("@vue/composition-api").ExtractPropTypes<{
expanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
defaultExpanded: {
type: import("vue").PropType<import("./type").MenuValue[]>;
};
expandType: {
type: import("vue").PropType<"normal" | "popup">;
default: "normal" | "popup";
validator(val: "normal" | "popup"): boolean;
};
logo: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
operations: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
theme: {
type: import("vue").PropType<"dark" | "light">;
default: "dark" | "light";
validator(val: "dark" | "light"): boolean;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
defaultValue: {
type: import("vue").PropType<import("./type").MenuValue>;
};
onChange: import("vue").PropType<(value: import("./type").MenuValue) => void>;
onExpand: import("vue").PropType<(value: import("./type").MenuValue[]) => void>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
theme: "dark" | "light";
expandType: "normal" | "popup";
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, import("@vue/composition-api").ShallowUnwrapRef<{
mode: import("@vue/composition-api").Ref<"normal" | "popup">;
menuClass: import("@vue/composition-api").ComputedRef<string[]>;
expandValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
activeValue: import("@vue/composition-api").Ref<import("./type").MenuValue>;
activeValues: import("@vue/composition-api").Ref<any[]>;
submenu: any[];
handleTabChange: (value: import("./type").MenuValue) => void;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
}>, import("@vue/composition-api").Data, {}, {
renderNormalSubmenu(node: import("./v-menu").VMenuData[], depth: number): JSX.Element;
}, {}, {}, {}, {
theme: "dark" | "light";
expandType: "normal" | "popup";
} & {
value?: import("./type").MenuValue;
expanded?: import("./type").MenuValue[];
onChange?: (value: import("./type").MenuValue) => void;
defaultValue?: import("./type").MenuValue;
defaultExpanded?: import("./type").MenuValue[];
logo?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
operations?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
onExpand?: (value: import("./type").MenuValue[]) => void;
}, {
theme: "dark" | "light";
expandType: "normal" | "popup";
}, true>)>>;
export declare const Submenu: import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
theme: import("@vue/composition-api").Ref<string>;
mode: import("@vue/composition-api").Ref<string>;
isHead: boolean;
isNested: import("@vue/composition-api").Ref<boolean>;
popupVisible: import("@vue/composition-api").Ref<boolean>;
classes: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
subClass: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
isOpen: import("@vue/composition-api").ComputedRef<boolean>;
transitionClass: import("@vue/composition-api").ComputedRef<string>;
arrowClass: import("@vue/composition-api").ComputedRef<{
[x: string]: boolean;
}[]>;
overlayInnerClassName: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
overlayClassName: import("@vue/composition-api").ComputedRef<import("..").ClassName[]>;
submenuClass: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
rippleColor: import("@vue/composition-api").ComputedRef<"#E7E7E7" | "#383838">;
popupWrapperRef: import("@vue/composition-api").Ref<HTMLElement>;
handleEnterPopup: () => void;
handleMouseEnter: () => void;
handleMouseLeave: (e: MouseEvent) => void;
handleMouseLeavePopup: (e: any) => void;
handleSubmenuItemClick: () => void;
classPrefix: import("@vue/composition-api").ComputedRef<string>;
activeValues: import("@vue/composition-api").Ref<import("./type").MenuValue[]>;
}> & import("@vue/composition-api").Data, {
renderPopup(triggerElement: ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)[]): JSX.Element;
renderHeadSubmenu(): JSX.Element | JSX.Element[];
renderSubmenu(): JSX.Element | JSX.Element[];
}, {}, {
content: {
type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
};
default: {
type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
};
disabled: BooleanConstructor;
icon: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
popupProps: {
type: import("vue").PropType<import("..").TdPopupProps>;
};
title: {
type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
}, import("@vue/composition-api").ExtractPropTypes<{
content: {
type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
};
default: {
type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
};
disabled: BooleanConstructor;
icon: {
type: import("vue").PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
};
popupProps: {
type: import("vue").PropType<import("..").TdPopupProps>;
};
title: {
type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
};
value: {
type: import("vue").PropType<import("./type").MenuValue>;
};
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
disabled: boolean;
} & {
default?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
content?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
value?: import("./type").MenuValue;
title?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
icon?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
popupProps?: unknown;
}, import("@vue/composition-api").ShallowUnwrapRef<{
theme: import("@vue/composition-api").Ref<string>;
mode: import("@vue/composition-api").Ref<string>;
isHead: boolean;
isNested: import("@vue/composition-api").Ref<boolean>;
popupVisible: import("@vue/composition-api").Ref<boolean>;
classes: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
subClass: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;