import type { InjectionKey, Ref } from 'vue' export type SlideScale = Ref export type SlideId = Ref export type RadioGroupValue = { value: Ref updateValue: (value: string) => void } export const injectKeySlideScale: InjectionKey = Symbol() export const injectKeySlideId: InjectionKey = Symbol() export const injectKeyRadioGroupValue: InjectionKey = Symbol() /** * 单页模式。EditorEn(英语展示页)专用:整个编辑器只允许存在一页, * 插入口语工具时用「替换当前全部页面」代替「新增一页」。 * * provide:views/Editor/indexEn.vue * inject :EnglishSpeaking/layers/Layer2Speaking.vue —— 建页分支 * hooks/useAddSlidesOrElements.ts —— 挡住 Ctrl+V 贴页 / AIPPT 批量加页 * * 其余编辑器(index / index2 / index3)不 provide,inject 一律拿到 default false, * 行为与今天完全一致。因为是 provide 而不是全局 store,值随 EditorEn 一起消失, * 不存在「切走之后旗标还留着」的问题。 */ export const injectKeySingleSlideMode: InjectionKey = Symbol()