type TagType = 'image' | 'video' type SourceType = { src: string } interface GlobalTag { isPlay: boolean flying: boolean leaveId: string isEdit: boolean isFixed: boolean isClick: boolean enterVisible: boolean editPosition: boolean toggleIndex: number flyClose?: boolean } interface TagContent { content: string createTime: EpochTimeStamp floorIndex: number icon: string panoId: string position: { x: number y: number z: number } media: { image?: SourceType[] video?: SourceType[] } sid: string title: string type: TagType visible: boolean x: number y: number visiblePanos?: any[] }