Ben Lin
2024-06-18 ebbd788fbb2c0b45d4473798efc57eec8ba74a25
src/components/SimpleMenu/src/components/useSimpleMenuContext.ts
@@ -1,9 +1,25 @@
import type { InjectionKey, Ref } from 'vue';
import type { Emitter } from '/@/utils/mitt';
import { createContext, useContext } from '/@/hooks/core/useContext';
import type { InjectionKey, Ref, ComponentInternalInstance } from 'vue';
import type { Emitter } from '@/utils/mitt';
import { createContext, useContext } from '@/hooks/core/useContext';
export type MenuEmitterEvents = {
  'on-update-opened':
    | (string | number)[]
    | {
        opend: boolean;
        parent?: ComponentInternalInstance | null;
        uidList: number[];
      };
  'on-menu-item-select': string | number;
  'open-name-change': {
    name: string | number;
    opened: boolean;
  };
  'on-update-active-name:submenu': number[];
};
export interface SimpleRootMenuContextProps {
  rootMenuEmitter: Emitter;
  rootMenuEmitter: Emitter<MenuEmitterEvents>;
  activeName: Ref<string | number>;
}