tdesign-vue
Version:
27 lines (26 loc) • 705 B
TypeScript
import { VNodeChildren } from 'vue';
declare type MenuValue = string | number;
declare type MenuNode = MenuValue | VMenuData;
export interface VMenuData {
value: MenuValue;
parent?: MenuNode;
children: VMenuData[];
vnode?: VNodeChildren;
}
interface VMenuItem {
value?: MenuValue;
parent: MenuValue;
vnode?: VNodeChildren;
}
export default class VMenu {
data: VMenuData;
cache: Set<VMenuData>;
isMutex: boolean;
expandValues: Set<MenuValue>;
constructor(options: Record<string, any>);
add(item: VMenuItem): void;
select(val: MenuValue): MenuValue[];
expand(val: MenuValue): MenuValue[];
getChild(value: MenuValue): VMenuData[];
}
export {};