import type { MpSdk, Scene, ShowcaseBundleWindow, Vector3 } from "../bundle/sdk"; import { MediaDevice } from "@zoom/videosdk"; export interface ISpace { id: number; name: string; space_url: string; tagpin_image: string | null; } export interface ITag { id: number; tag_name: string; showcase_id: number; floor_id: number; color_id: number; details?: string; remarks?: string; json_data: MpSdk.Tag.TagData; tag_type_id?: number; sid: string; bid?: string; filename?: string; tag_icon_url?: string; tag_icon_base64?: string; tag_icon_name?: string; tag_url?: string; tag_order?: number; label: number; inDb: boolean; category_uuid?: string; uuid?: string; media_url?: string; tag_type?: TAG_TYPE; sandboxId?: string; iot_tag?: IoTTagDetails; created_on?: string; notion_page_url: string; } export interface IoTTagDetails { linked_system?: string; serial_number?: string; manufacturer_site?: string; system_link?: string; iot_category?: string; linked_devices?: DeviceInfo[]; model_name?: string; created_on?: string; } export interface ITagCategory { uuid: string; name: string; folder_uuid?: string; parent_uuid?: string; owner_uuid?: string; role_uuid?: string; category_uuid?: string; json_data?: { color: ITagColor; icon?: string; iconUrl?: string; isReadOnly?: boolean; iconBase64?: string; }; subcategories: Array; } export interface IotCategoryType { name: string; uuid: string; json_data?: { icon: string; iconURL: string; iconBase64: string; }; } export interface ITagColor { name: COLOR; rgb: { r: number; g: number; b: number; }; } export declare const enum COLOR { MAROON = "MAROON", RED = "RED", ORANGE = "ORANGE", YELLOW = "YELLOW", YELLOW_GREEN = "YELLOW_GREEN", GREEN = "GREEN", LIGHT_BLUE = "LIGHT_BLUE", BLUE = "BLUE", DARK_BLUE = "DARK_BLUE", PURPLE = "PURPLE" } export interface ITagPublic { id: string; name: string; } export interface IUser { email: string; password: string; } export interface IMPConfig { iframeId: string; appKey?: string; bundlePath?: string; bundleVersion?: string; mapId?: string; meetingApiKey?: string; showOriginalTags?: boolean; help?: 0 | 1 | 2; nt?: 0 | 1; play?: 0 | 1; qs?: 0 | 1; brand?: 0 | 1; dh?: 0 | 1; tour?: 0 | 1 | 2 | 3; gt?: 0 | 1; hr?: 0 | 1; mls?: 0 | 1 | 2; mt?: 0 | 1; tagNav?: 0 | 1; pin?: 0 | 1; portal?: 0 | 1; f?: 0 | 1; fp?: 0 | 1; lang?: MP_LANG | string; kb?: 0 | 1; lp?: 0 | 1; st?: Number; title?: 0 | 1 | 2; tourcta?: 0 | 1 | 2; wts?: Number; ts?: Number; hl?: 0 | 1 | 2; vr?: 0 | 1; nozoom?: 0 | 1; search?: 0 | 1; wh?: 0 | 1; prod?: boolean; viewMode?: VIEW_MODE | string; fetchObjectsOnLoad?: { active?: boolean; apiEndpoint?: string; }; mapConfig?: IMapConfig; mediaScreenConfig?: ISharedScreen; toolbarConfig?: IToolbarConfig; avatartwinConfig?: { avatartwinKey: string; }; meetConfig?: { sdkKey: string; secretKey: string; }; appConfigKeys?: { mpKey: string; embedlyKey: string; meetSdkKey?: string; meetSecretKey?: string; }; debug?: { logLevel: string; showObjectMarker?: boolean; }; restrictionConfig?: { isTagReadOnly?: boolean; isIoTtagReadonly?: boolean; isTagToggleSharing?: boolean; }; sweepPuckConfig?: { shape?: string; color: string | Array; }; multispace?: boolean; } export interface IMapConfig { mapId: string; showDirection?: boolean; position?: 'topRight' | 'topLeft' | 'bottomRight' | 'bottomLeft'; fixedSized?: { width: number; height?: number; }; sweepMarker?: { showOnHover: boolean; backgroundColor: string; activeColor: string; hoverColor: string; opacity: number; }; zIndex?: number; isShow?: boolean; showCurrentFloorOnly?: boolean; enableCustomMap?: boolean; } export interface ISweep { alignmentType: MpSdk.Sweep.Alignment; floorInfo: MpSdk.Sweep.SweepFloorInfo | MpSdk.Sweep.EmptySweepFloorInfo; id: string; neighbors: string[]; placementType?: MpSdk.Sweep.Placement; position: MpSdk.Vector3; rotation: MpSdk.Vector3; sid: string; uuid: string; } export interface I3DObject { id: number; uuid?: string; upload_file: string; upload_filename: string; filename: string; user_id: number; name: string; description: string; object_type: string; object_key: string; amazon_uri: string; object_thumbnail?: string; thumbnail_key?: string; thumbnail_type?: string; created_on?: string; object_file?: string; object_uuid?: string; object_filename?: string; json_data?: any; } export interface IShowcaseObject { id: number; showcase_id: number; object_id: number; user_id: number; uuid?: string; media_viewer_id?: number; player_id?: string; space_uuid?: string; object_uuid?: string; object_position: { x: number; y: number; z: number; }; object_rotation: { x: number; y: number; z: number; }; object_scale: { x: number; y: number; z: number; }; autoplay: boolean; autoplay_distance: number; offset_position: number; offset_rotation: number; position_unit: string; showcase_object_name: string; is_deleted: boolean; is_read: boolean; is_new: boolean; object_data: I3DObject; coordinate_system?: string; json_data?: string; created_on?: string; } export interface IVideoObject { data: IShowcaseObject; component: MpSdk.Scene.IComponent; node: MpSdk.Scene.INode; collider: any; type?: string; } export interface ISlideshowObject { id: number; collider: any; object: IShowcaseObject; node: Scene.INode; component: Scene.IComponent; } export interface IObjectData { collider?: any; object: IShowcaseObject; component: Scene.IComponent; node: Scene.INode; type?: string; iframeId?: string; children?: { component?: Scene.IComponent; node?: Scene.INode; type?: string; index?: number; wallUUID?: string; }[]; } export interface IObjectFilters { type?: string | undefined; object_type?: string | undefined; iframeId?: string | undefined; showcase_object_name?: string | undefined; } export interface NearbyPayload { type: string | OBJECT_TYPE; distance: number; } export interface NearbyObjects { x3d: Array; videos: Array; slideshows: Array; } export interface ObjectCoordinates { x: number; y: number; z: number; } export interface EulerCoordinates { _x?: number; _y?: number; _z?: number; x?: number; y?: number; z?: number; } export interface Object3DPosition { object_position: Vector3; object_rotation: EulerCoordinates; object_scale: Vector3; } export interface State { isLoading: boolean; loaded: boolean; data?: number | IShowcaseObject | I3DObject | Array | Vector3; error?: string; } export interface FileUpload { file?: File | null; filename: string; upload_filename: string | null; user_id: number; object_key: string; description?: string; name: string; object_type: string; } export interface IMinimapData { height: number; image_origin_x: number; image_origin_y: number; resolution_ppm: number; urlTemplate: string; width: number; } export interface MeetingInfo { space_id: string; meeting_id?: string; host_name?: string; title?: string; meeting_start?: Date; meeting_status?: MeetingStatus; duration?: number; password?: string; } export interface TextDimensionNodes { top: { node: Scene.INode | null; component: Scene.IComponent | null; }; bottom: { node: Scene.INode | null; component: Scene.IComponent | null; }; left: { node: Scene.INode | null; component: Scene.IComponent | null; }; right: { node: Scene.INode | null; component: Scene.IComponent | null; }; } export interface MeetingConfig { customColors?: MeetingCustomColors; customAvatars?: Avatar[]; deviceControl?: MeetingDeviceControl; meetingBarPosition?: MeetingBarPosition; } export interface MeetingDeviceControl { videoInput: boolean; audioInput: boolean; audioOutput: boolean; } export type MeetingBarPosition = "left" | "right" | "top" | "bottom"; export interface MeetingCustomColors { primary?: string; primary900?: string; primary200?: string; secondary?: string; gray?: string; success?: string; danger?: string; black?: string; white?: string; gray100?: string; gray200?: string; gray300?: string; gray400?: string; gray500?: string; gray600?: string; gray700?: string; gray800?: string; } export interface Avatar { model: string; thumbnail: string; } export interface ObjectConfig { options?: ComponentOptions; position?: Vector3; scale?: Vector3; rotation?: Vector3; id?: number; object_uuid?: string; json_data?: string; } export interface ComponentOptions { name?: string | undefined; title?: string | undefined; type?: string | undefined; url?: string | undefined; iframeId?: string | undefined; wrapperId?: string | undefined; textColor?: string | undefined; backgroundColor?: string | undefined; visible?: boolean | undefined; aspectRatio?: number | undefined; text?: string | undefined; fontSize?: number | undefined; background?: boolean | undefined; centered?: boolean | undefined; height?: number | undefined; curveSegments?: number | undefined; bevelEnabled?: boolean | undefined; bevelThickness?: number | undefined; bevelSize?: number | undefined; bevelOffset?: number | undefined; bevelSegments?: number | undefined; mediaViewerId?: number | undefined; avatarId?: string | undefined; isHUD?: boolean | undefined; mediaType?: string | undefined; dockWidth?: number | undefined; dockHeight?: number | undefined; dockPosX?: number | undefined; dockPosY?: number | undefined; dockPosZ?: number | undefined; basePosition?: Vector3 | undefined; isFirstLoad?: boolean | undefined; fitToScreen?: boolean | undefined; hudMode?: string | undefined; viewpointId?: number | undefined; labelContent?: string | undefined; labelBackgroundColor?: string | undefined; lineColor?: string | undefined; color?: string | undefined; lineEndOffset?: number | undefined; maxLineLength?: number | undefined; customPointerTexture?: string | undefined; path?: Array | undefined; fillColor?: string | undefined; radius?: number | undefined; scrollSpeed?: number | undefined; radialSegments?: number | undefined; node?: MpSdk.Scene.INode | undefined; tubes?: MpSdk.Scene.IObject | undefined; active?: boolean | undefined; renderPolygonOnAdd?: boolean | undefined; excludeHiddenWallsFromCalculation?: boolean | undefined; uuid?: string | undefined; wallData?: WallPolyData[] | undefined; floorData?: FloorPolyData | undefined; polygonData?: PolygonData | undefined; wallHeight?: number | undefined; floorLevel?: number | undefined; lineComponentType?: string | undefined; id?: number | undefined; drawingMode?: string | undefined; targetIndex?: number | undefined; targetUUID?: string | undefined; deductWindowFromWallArea?: boolean | undefined; isWindowEditing?: boolean | undefined; objectIndex?: number | undefined; } export interface VectorCoords { object_position: Vector3; object_rotation: Vector3; object_scale: Vector3; } export interface MediaScreenConfig { mediaUrl?: string; mediaType?: string; transform?: VectorCoords; readonly?: boolean; autoplay?: boolean; } export interface MeetingConfig { customColors?: MeetingCustomColors; customAvatars?: Avatar[]; deviceControl?: MeetingDeviceControl; meetingBarPosition?: MeetingBarPosition; } export interface MeetingDeviceControl { videoInput: boolean; audioInput: boolean; audioOutput: boolean; } export interface MeetingCustomColors { primary?: string; primary900?: string; primary200?: string; secondary?: string; gray?: string; success?: string; danger?: string; black?: string; white?: string; gray100?: string; gray200?: string; gray300?: string; gray400?: string; gray500?: string; gray600?: string; gray700?: string; gray800?: string; } export interface Avatar { model: string; thumbnail: string; } export interface IParticipant { id?: string; name?: string; type?: IParticipantType; color?: string; avatar?: Avatar; shapeNum?: number; } export declare enum IParticipantType { HOST = "host", GUEST = "guest", AUDIENCE = "audience" } export interface IMpParticipant { avatar: { model: string; thumbnail: string; }; avatarConfig: { height: number; scale: number; laserOrigin: { x: number; y: number; z: number; }; }; id: string; name: string; color?: string; shape?: PShapes; position: { x: number; y: number; z: number; }; rotation: { x: number; y: number; z: number; }; } export declare const enum PShapes { SQUARE = "square", TRIANGLE = "triangle" } export declare const enum MeetingStatus { SCHEDULED = 0, STARTED = 1, STOPPED = 2, CANCELLED = 3 } export declare const enum OBJECT_TYPE { X3D = "X3D", VIDEO = "VIDEO", SLIDESHOW = "SLIDESHOW" } export declare enum MP_LANG { EN = "en", ES = "es", FR = "fr", DE = "de", RU = "ru", ZH = "zh", JA = "ja", KO = "ko", NL = "nl", IT = "it", PT = "pt" } export declare const enum VIEW_MODE { PUBLIC = "public", INTERACTIVE = "interactive" } export declare const enum TRANSFORM_TYPE { TRANSLATE = "translate", ROTATE = "rotate", SCALE = "scale" } export declare const enum URL_TYPE { ROK = "ROK", MP = "MP" } export interface SpaceObjectBySpaceObjUuidResponse { status: string; data: Array; } export interface SpaceObjectBySpaceUuidResponse { status: string; data: Array<{ space_objects: IShowcaseObject; objects: I3DObject; }>; } export interface IAtwinFloor { id: number; floor_name: string; room_name?: string; showcase_id: number; minimap_scaling: number; minimap_xOffset: number; minimap_yOffset: number; minimap_distance: number; floor_image: string; remarks?: string; } export interface IAtwinLabel { id: number; name: string; } export interface Color { name?: TAG_COLOR | string; rgb: { r: number; g: number; b: number; }; } export interface SpaceEvent { eventType: string; callback: Function; iframeId?: string; } export interface SpaceEventCallbacks { onClick?: Array; onDrag?: Array; onDragBegin?: Array; onDragEnd?: Array; events?: Array; } export interface ISharedScreen { id?: string; childId?: string; objectId?: number; mediaViewerId?: number; showInSpace?: boolean; position?: string; width?: number; height?: number; otherData?: any; showExpandButton?: boolean; } export interface SpaceAvatar { id?: number; modelUrl?: string; modelType?: string; cameraPose: MpSdk.Camera.Pose; role?: string; scale?: Vector3; } export declare enum SPACE_EVENTS { CLICK = "CLICK", HOVER = "HOVER", DRAG = "DRAG", DRAG_BEGIN = "DRAG_BEGIN", DRAG_END = "DRAG_END", LOADING_PHASE = "LOADING_PHASE", STARTING_PHASE = "STARTING_PHASE", PLAYING_PHASE = "PLAYING_PHASE", PLACED_TAG = "PLACED_TAG", TAG_SAVED = "TAG_SAVED", TAG_DISPOSED = "TAG_DISPOSED", MEDIASCREEN_EXPANDED = "MEDIASCREEN_EXPANDED", MEDIASCREEN_MINIMIZED = "MEDIASCREEN_MINIMIZED", MEDIA_PLAY = "MEDIA_PLAY", MEDIA_PAUSE = "MEDIA_PAUSE", MEDIA_MUTE = "MEDIA_MUTE", MEDIA_UNMUTE = "MEDIA_UNMUTE", MEDIA_ENDED = "MEDIA_ENDED", CURRENT_USER_LOADED = "CURRENT_USER_LOADED", CURRENT_USER_CHANGED = "CURRENT_USER_CHANGED", PARTICIPANT_CHANGED = "PARTICIPANT_CHANGED", PARTICIPANT_ADDED = "PARTICIPANT_ADDED", PARTICIPANT_REMOVED = "PARTICIPANT_REMOVED", PARTICIPANT_VIDEO_ON = "PARTICIPANT_VIDEO_ON", PARTICIPANT_VIDEO_OFF = "PARTICIPANT_VIDEO_OFF", PARTICIPANT_AUDIO_STATE = "PARTICIPANT_AUDIO_STATE", MEETING_ENDED = "MEETING_ENDED", MEETING_CLOSED = "MEETING_CLOSED", SELECTED_TAG = "SELECTED_TAG", MODEL_RENDERED = "MODEL_RENDERED", MODEL_DISPOSED = "MODEL_DISPOSED", TAG_MESSAGE_OPENED = "TAG_MESSAGE_OPENED", TAG_MESSAGE_SENT = "TAG_MESSAGE_SENT", TAG_MESSAGE_RETRIEVED = "TAG_MESSAGE_RETRIEVED", TAG_RECEPIENT_CHANGED = "TAG_RECEPIENT_CHANGED", TAG_LINK_COPIED = "TAG_LINK_COPIED", TAG_LINK_GENERATED = "TAG_LINK_GENERATED", TAG_MESSAGE_UNSEND = "TAG_MESSAGE_UNSEND", SET_TAG_ICON = "SET_TAG_ICON", VIEW_TAG_MESSAGE = "VIEW_TAG_MESSAGE", TOOLBAR_LOADED = "TOOLBAR_LOADED", SWEEP_COLLECTION_UPDATED = "SWEEP_COLLECTION_UPDATED", MINIMAP_SWEEP_CLICK = "MINIMAP_SWEEP_CLICK", MINIMAP_SWEEPS_RENDERED = "MINIMAP_SWEEPS_RENDERED", SCREENSHOT_CAPTURED = "SCREENSHOT_CAPTURED", ON_MOVE_SWEEP = "ON_MOVE_SWEEP", ON_CAMERA_MOVE = "ON_CAMERA_MOVE", USER_VIEW_POINT = "USER_VIEW_POINT", TAGPLACER_CREATED = "TAGPLACER_CREATED", ROOM_CHANGED = "ROOM_CHANGED", ARRIVED_ON_SWEEP = "ARRIVED_ON_SWEEP", CAMERA_ROTATE_START = "CAMERA_ROTATE_START", CAMERA_ROTATE_END = "CAMERA_ROTATE_END", CAMERA_PAN_START = "CAMERA_PAN_START", CAMERA_PAN_END = "CAMERA_PAN_END", CURRENT_CAMERA_POSE = "CURRENT_CAMERA_POSE", CURRENT_CAMERA_ZOOM = "CURRENT_CAMERA_ZOOM", VERTEXPLACER_CREATED = "VERTEXPLACER_CREATED", VERTEX_PLACED = "VERTEX_PLACED", VERTEX_DRAG_BEGIN = "VERTEX_DRAG_BEGIN", VERTEX_DRAG_END = "VERTEX_DRAG_END", VERTEX_REMOVED = "VERTEX_REMOVED", LINE_ATTACHED = "LINE_ATTACHED", LINE_UPDATED = "LINE_UPDATED", LINE_DETACHED = "LINE_DETACHED", PARTITION_UPDATED = "PARTITION_UPDATED", PARTITION_SAVED = "PARTITION_SAVED", PARTITION_EDITED = "PARTITION_EDITED", FLOOR_CLICKED = "FLOOR_CLICKED", WALL_CLICKED = "WALL_CLICKED", UPDATE_ROOM_TREE = "UPDATE_ROOM_TREE", DISPLAY_SPACE_PARTITION_REPORT = "DISPLAY_SPACE_PARTITION_REPORT", PARTITION_CLICKED = "PARTITION_CLICKED", PARTITION_DISPOSED = "PARTITION_DISPOSED", PARTITION_RENDERED = "PARTITION_RENDERED", PARTITION_COLLIDER_CLICKED = "PARTITION_COLLIDER_CLICKED", DRAW_HISTORY = "DRAW_HISTORY", BASEPOINT_UPDATED = "BASEPOINT_UPDATED", MINIMAP_CHANGED = "MINIMAP_CHANGED", FLOOR_IMAGE_SELECTED = "FLOOR_IMAGE_SELECTED", FLOOR_IMAGE_UPLOADED = "FLOOR_IMAGE_UPLOADED", FLOOR_IMAGE_UPLOAD_FAILED = "FLOOR_IMAGE_UPLOAD_FAILED", FLOOR_IMAGE_ROTATED = "FLOOR_IMAGE_ROTATED", FLOOR_CHANGED = "FLOOR_CHANGED", CUSTOM_SWEEP_SCALE_UPDATED = "CUSTOM_SWEEP_SCALE_UPDATED", CUSTOM_SWEEP_TRANSLATE_UPDATED = "CUSTOM_SWEEP_TRANSLATE_UPDATED", CUSTOM_SWEEP_OFFSETX_UPDATED = "CUSTOM_SWEEP_OFFSETX_UPDATED", CUSTOM_SWEEP_OFFSETY_UPDATED = "CUSTOM_SWEEP_OFFSETY_UPDATED", CUSTOM_MAP_SETTINGS_UPDATED = "CUSTOM_MAP_SETTINGS_UPDATED", SPACE_METADATA_RETRIEVED = "SPACE_METADATA_RETRIEVED", GET_IOT_CATEGORIES = "GET_IOT_CATEGORIES", GET_IOT_DEVICES = "GET_IOT_DEVICES", GET_IOT_LINKED_SYSTEM_OPTIONS = "GET_IOT_LINKED_SYSTEM_OPTIONS", IOT_TAG_SAVED = "IOT_TAG_SAVED", TAG_SANDBOX_REGISTERED = "TAG_SANDBOX_REGISTERED", GET_IOT_TAG_ICON = "GET_IOT_TAG_ICON", GET_IOT_CAT_ICON = "GET_IOT_CAT_ICON", SCREEN_VIEWING_LEFT = "SCREEN_VIEWING_LEFT", POINTER_INTERSECTION_DATA = "POINTER_INTERSECTION_DATA", POINTER_CLICK = "POINTER_CLICK", SCREEN_SHARE_SESSION_ENDED = "SCREEN_SHARE_SESSION_ENDED", SCREEN_SHARE_PANE_OPEN = "SCREEN_SHARE_PANE_OPEN", SCREEN_SHARE_USERS_UPDATE = "SCREEN_SHARE_USERS_UPDATE", SCREEN_SHARE_SESSION_USERS_UPDATE = "SCREEN_SHARE_SESSION_USERS_UPDATE", SCREEN_SHARE_POINTER_UPDATE = "SCREEN_SHARE_POINTER_UPDATE", SCREEN_SHARE_REQUEST = "SCREEN_SHARE_REQUEST", SCREEN_SHARE_ACCEPT_REQUEST = "SCREEN_SHARE_ACCEPT_REQUEST", SCREEN_SHARE_CANCEL_REQUEST = "SCREEN_SHARE_CANCEL_REQUEST", SCREEN_SHARE_HOST_END_SESSION = "SCREEN_SHARE_HOST_END_SESSION", SCREEN_SHARE_GUEST_LEAVE_SESSION = "SCREEN_SHARE_GUEST_LEAVE_SESSION", SCREEN_SHARE_BACK_USER_LIST_PANE = "SCREEN_SHARE_BACK_USER_LIST_PANE", SCREEN_SHARE_TERMINATED = "SCREEN_SHARE_TERMINATED", PIPE_INIT = "PIPE_INIT", PIPE_CATEGORY_REMOVED = "PIPE_CATEGORY_REMOVED", PIPE_CATEGORY_SAVED = "PIPE_CATEGORY_SAVED", PIPE_CATEGORY_SELECTED = "PIPE_CATEGORY_SELECTED", PIPE_CATEGORY_ON_CHANGE = "PIPE_CATEGORY_ON_CHANGE", PIPE_CATEGORY_ADD = "PIPE_CATEGORY_ADD", PIPE_SAVED = "PIPE_SAVED", PIPE_REMOVED = "PIPE_REMOVED", PIPE_ON_CHANGE = "PIPE_ON_CHANGE", PIPE_CLICKED = "PIPE_CLICKED", PIPE_ADD = "PIPE_ADD", PIPE_SELECTED = "PIPE_SELECTED", DRAW_PIPE = "DRAW_PIPE", DRAW_PIPE_UNDO = "DRAW_PIPE_UNDO", DRAW_PIPE_REDO = "DRAW_PIPE_REDO", PIPE_VERTEX_REMOVED = "PIPE_VERTEX_REMOVED", PATH_UPDATED = "PATH_UPDATED" } export declare const enum TAG_COLOR { MAROON = "MAROON", RED = "RED", ORANGE = "ORANGE", YELLOW = "YELLOW", YELLOW_GREEN = "YELLOW_GREEN", GREEN = "GREEN", LIGHT_BLUE = "LIGHT_BLUE", SOFT_ROYAL_BLUE = "SOFT_ROYAL_BLUE", BLUE = "BLUE", DARK_BLUE = "DARK_BLUE", PURPLE = "PURPLE", DARK_RED = "DARK_RED", PALE_RED = "PALE_RED", LIGHT_PINK = "LIGHT_PINK", MAGENTA = "MAGENTA", ROYAL_PURPLE = "ROYAL_PURPLE", NAVY_BLUE = "NAVY_BLUE", BLUE_GREEN = "BLUE_GREEN", HOT_GREEN = "HOT_GREEN", TEAL = "TEAL", LIGHT_YELLOW = "LIGHT_YELLOW", ORANGE_YELLOW = "ORANGE_YELLOW", LIGHT_ORANGE = "LIGHT_ORANGE", RED_ORANGE = "RED_ORANGE", LIGHT_GREY = "LIGHT_GREY", GREY = "GREY", YELLOW_ORANGE = "YELLO_ORANGE" } export declare enum MEETING_SIDEBAR { PREMEETING = "PREMEETING", INMEETING = "INMEETING", CREATE_MEETING = "CREATE_MEETING", JOIN_MEETING = "JOIN_MEETING" } export declare const enum Meeting_Role { HOST = 1, GUEST = 0 } export interface ISdkConnections { [key: string]: MpSdk; } export interface ISceneObjects { [key: string]: Scene.IObject; } export interface IShowcaseElements { [key: string]: HTMLIFrameElement; } export interface IShowcaseWindows { [key: string]: ShowcaseBundleWindow; } export interface IMeeting { uuid: string; topic: string; password: string; host_meeting_url: string; guest_meeting_url: string; } export interface IMeetingParticipant { fullname: string; role: Meeting_Role; avatar?: Avatar; } export interface IODevices { mics: MediaDevice[]; speakers: MediaDevice[]; cameras: MediaDevice[]; } export interface IMeetingPayload { topic: string; password: string; role: string; participant_fullname: string; } export interface IPreMeetingConfig { isSelfVideoOn: boolean; isSelfMuted: boolean; activeCamera: MediaDevice; activeMic: MediaDevice; activeSpeaker: MediaDevice; avatar?: Avatar; } export declare const enum MEDIA_SCREEN_EVENTS { PLAY = "PLAY", PAUSE = "PAUSE", MUTE = "MUTE", NEXT_SLIDE = "NEXT_SLIDE", PREV_SLIDE = "PREV_SLIDE", UNMUTE = "UNMUTE" } export declare const enum SOCKET_EVENTS { CREATE_SCREEN_MEDIA = "CREATE_SCREEN_MEDIA", JOIN_ROOM = "JOIN_ROOM", SET_VIDEO_PLAYBACK = "SET_VIDEO_PLAYBACK", SHOW_MEDIA_SCREEN = "SHOW_MEDIA_SCREEN", HIDE_MEDIA_SCREEN = "HIDE_MEDIA_SCREEN", SHARED_SCREEN_EVENTS = "SHARED_SCREEN_EVENTS", SET_MEDIA_SCREENS = "SET_MEDIA_SCREENS", SET_EVENTS = "SET_EVENTS", HOST_LEAVE = "HOST_LEAVE", SET_AVATAR = "SET_AVATAR", SWEEP_MOVE = "SWEEP_MOVE", GET_PARTICIPANTS = "GET_PARTICIPANTS", DISCONNECT = "DISCONNECT" } export interface IMediaDevice { label: string; deviceId: string; } export interface IAtwinCard { id?: number; uuid?: string; url?: string; name?: string; description?: string; cardType?: string; } export interface IToolbarData { tags?: Array<{ tag: MpSdk.Tag.Descriptor; sdk: MpSdk; tags: ITag[]; attachments?: string[]; icon?: string; }>; objects?: Array; } export interface IThemeConfig { theme?: string; customizations?: { toolbarOffset?: { top?: number; bottom?: number; right?: number; left?: number; }; borderRadius?: string; fontFamily?: string; backgroundColorOpacity?: number; }; } export interface IToolbarConfig { active: boolean; lang?: string; menuItems?: { meeting?: boolean; screenshot?: { visible?: boolean; withCameraData?: boolean; includeTags?: boolean; includeSweeps?: boolean; includeMeasurements?: boolean; includeViews?: boolean; }; pipe?: boolean; models?: boolean; minimap?: boolean; theme?: boolean; roomCreation?: boolean; bim?: boolean; generalSetting?: boolean; iot?: { visible?: boolean; showIoTTags?: boolean; }; spaceScreenSharing?: boolean; }; themeConfig?: IThemeConfig; } export interface ModalContent { title: string; description: string; buttonLabel?: string; } export interface SweepColor { sweepId: string; backgroundColor: string; } export declare const enum IO_ROLE { HOST = "host", GUEST = "guest" } export declare const enum IO_EVENT_CATEGORY { MEETING = "MEETING", SPACE = "SPACE" } export declare const enum IO_MEETING_EVENTS { JOIN_MEETING = "MEETING:JOIN_MEETING", LEAVE_MEETING = "MEETING:LEAVE_MEETING", PARTICIPANT_JOINED = "MEETING:PARTICIPANT_JOINED", PARTICIPANT_LEFT = "MEETING:PARTICIPANT_LEFT", PARTICIPANT_DISCONNECTED = "MEETING:PARTICIPANT_DISCONNECTED", PARTICIPANT_LIST_UPDATED = "MEETING:PARTICIPANT_LIST_UPDATED" } export declare const enum IO_SPACE_EVENTS { MEDIA_SCREEN = "SPACE:MEDIA_SCREEN", SWEEP = "SPACE:SWEEP" } export declare const enum IO_SWEEP_EVENTS { PARTICIPANT_FOLLOW = "PARTICIPANT_FOLLOW", PARTICIPANT_FOLLOWED = "PARTICIPANT_FOLLOWED", PARTICIPANT_UNFOLLOW = "PARTICIPANT_UNFOLLOW", PARTICIPANT_UNFOLLOWED = "PARTICIPANT_UNFOLLOWED", PARTICIPANT_MOVE = "PARTICIPANT_MOVE", PARTICIPANT_MOVED = "PARTICIPANT_MOVED" } export declare const enum IO_MEDIASCREEN_EVENTS { ATTACH = "ATTACH", CREATE = "CREATE", MUTE = "MUTE", NEXT_SLIDE = "NEXT_SLIDE", PAUSE = "PAUSE", PLAY = "PLAY", PREV_SLIDE = "PREV_SLIDE", UNMUTE = "UNMUTE", ENABLE_HUD = "ENABLE_HUD", DISABLE_HUD = "DISABLE_HUD" } export interface IO_Event { eventId: string; meetingId: string; eventCategory: IO_EVENT_CATEGORY; eventName: IO_MEETING_EVENTS | IO_SPACE_EVENTS; data: any; } export interface IO_Meeting { meetingId: string; maxParticipants: number; } export interface IO_Participant { participantId: string; name: string; role: IO_ROLE; color: IO_PARTICIPANT_COLORS; sweepId: string; rotation: { x: number; y: number; }; following: string; followers: string[]; } export interface IO_MeetingParticipant { meetingId: string; participantId: string; socketId: string; } export interface TagRecepient { name: string; uuid: string; } export interface TagMessage { uuid?: string; messages: string; owner_uuid?: string; owner_name?: string; to_user_uuid?: string; to_user_name?: string; tag_uuid?: string; image_url?: string; binaryFile?: File; created_on?: any; modified_on?: any; is_sender?: boolean; } export interface EmbedlyData { author_name: string; author_url: string; height: number; html: string; provider_name: string; provider_url: string; thumbnail_height: number; thumbnail_url: string; thumbnail_width: number; title: string; type: string; url: string; version: string; width: number; } export interface FloorPolygonPayload { startPoint: Vector3; endPoint: Vector3; length: number; unit: string; } export interface WallPolygonPayload { path: Array; dimensions: { area: number; unit: string; }; } export interface PartitionPayload { uuid?: string | undefined; space_uuid?: string | undefined; name?: string | undefined; parent_uuid?: string | undefined; polygon_json: PolygonData; } export interface EdgePolyData { name?: string | undefined; options?: any; start?: Vector3; end?: Vector3; length?: number | undefined; } export interface FloorPolyData { uuid?: string | undefined; name?: string | undefined; options?: { color: number | undefined; opacity: number | undefined; is_visible?: boolean | undefined; }; area: number | undefined; perimeter: number | undefined; floor_level: number; edges: Array; material?: string | undefined; } export interface WallPolyData { uuid?: string | undefined; name?: string | undefined; index?: number | undefined; options?: { color?: number | undefined; opacity?: number | undefined; is_visible?: boolean | undefined; is_deleted?: boolean | undefined; }; material?: string | undefined; area: number; netArea?: number | undefined; perimeter: number | undefined; width: number | undefined; wall_height: number; edges: Array; windows?: Array; } export interface WindowPolyData { path: Array; uuid?: string | undefined; wall_uuid?: string | undefined; name?: string | undefined; index?: number | undefined; options?: { color?: number | undefined; opacity?: number | undefined; is_visible?: boolean | undefined; is_deleted?: boolean | undefined; }; area: number; width: number | undefined; edges: Array; material?: string | undefined; } export interface PolygonData { path: Array; options?: { is_visible?: boolean | undefined; }; floor_offset: number; floor_sequence: MpSdk.Floor.FloorData; floor: FloorPolyData; walls: Array; wall_height: number; totalWallArea?: number; totalWallPerimeter?: number; material?: string | undefined; } export interface PolyWallVisibility { index: number; is_visible: boolean; } export declare const enum IO_PARTICIPANT_COLORS { GREEN = "GREEN", BLUE = "BLUE", YELLOW = "YELLOW ", ORANGE = "ORANGE", PURPLE = "PURPLE", PINK = "PINK", BROWN = "BROWN", CYAN = "CYAN" } export declare const enum SCREEN_POSITIONS { TOP_LEFT = "topLeft", TOP_RIGHT = "topRight", BOTTOM_LEFT = "bottomLeft", BOTTOM_RIGHT = "bottomRight", CENTER = "center" } export declare const enum FORM_MODE { ADD = "ADD", EDIT = "EDIT", NONE = "NONE" } export declare enum ZOOM_COMMAND { TOGGLE_VIDEO_ON = "TOGGLE VIDEO ON", TOGGLE_MIC_ON = "TOGGLE MIC ON", TOGGLE_VIDEO_OFF = "TOGGLE VIDEO OFF", TOGGLE_MIC_OFF = "TOGGLE MIC OFF" } export interface PartitionNode { uuid?: string; space_uuid: string; name: string; parent_uuid: string | undefined; polygon_json: string; children?: PartitionNode[]; created_on?: string; modified_on?: string; } export interface ICoordinateSystemCalibration { coord_system?: string; scale_factor?: string; measurement_unit?: string; rotation_unit?: string; true_origin?: Vector3; project_base?: Vector3; mp_project_base?: IShowcaseObject; bim_coordinates?: { position?: Vector3; rotation?: Vector3; scale?: Vector3; }; } export interface ICurrentSpace { uuid: string; access_token: string; folder_uuid: string; owner_uuid: string; space_sid: string; space_name: string; space_url: string; space_image?: string; memo1?: string; memo2?: string; modified_on?: string; created_on?: string; hidden?: boolean; } export interface CustomMapFloorData { floor_sequence: number; name?: string; floor_image: string; scale: number; translate: number; rotate: number; offset_x: number; offset_y: number; } export interface SpaceMetadata { coordSystemCalibration?: { bim: { coord_system: string; scale_factor: string; measurement_unit: string; rotation_unit: string; true_origin: { x: number; y: number; z: number; }; project_base: { x: number; y: number; z: number; }; mp_project_base: { id: number; player_id: string; showcase_id: null | number; media_viewer_id: number; object_position: { x: number; y: number; z: number; }; object_rotation: { x: number; y: number; z: number; }; object_scale: { x: number; y: number; z: number; }; offset_position: number; offset_rotation: number; position_unit: string; object_data: { amazon_uri: string; object_type: string; uuid: string; id: null | number; }; coordinate_system: string; json_data: string; }; }; }; general_settings?: { minimap?: { type?: string; custom_floor_data?: CustomMapFloorData[] | null; }; }; iot_tag?: { linked_system: string; serial_number: string; manufacturer_site: string; system_link?: string; iot_category: string; model_name: string; linked_devices: [] | null; tag_type: TAG_TYPE.IOT; }; } export interface CustomMapFloorData { floor_sequence: number; name?: string; floor_image: string; scale: number; translate: number; rotate: number; offset_x: number; offset_y: number; } export interface SpaceMetadata { coordSystemCalibration?: { bim: { coord_system: string; scale_factor: string; measurement_unit: string; rotation_unit: string; true_origin: { x: number; y: number; z: number; }; project_base: { x: number; y: number; z: number; }; mp_project_base: { id: number; player_id: string; showcase_id: null | number; media_viewer_id: number; object_position: { x: number; y: number; z: number; }; object_rotation: { x: number; y: number; z: number; }; object_scale: { x: number; y: number; z: number; }; offset_position: number; offset_rotation: number; position_unit: string; object_data: { amazon_uri: string; object_type: string; uuid: string; id: null | number; }; coordinate_system: string; json_data: string; }; }; }; general_settings?: { minimap?: { type?: string; custom_floor_data?: CustomMapFloorData[] | null; }; }; iot_tag?: { linked_system: string; serial_number: string; manufacturer_site: string; system_link?: string; iot_category: string; model_name: string; linked_devices: [] | null; tag_type: TAG_TYPE.IOT; }; } export interface PathConfig { lineType: string; verticeType: string; lineTypeComponentConfig?: ComponentOptions; verticeTypeComponentConfig?: ComponentOptions; } export interface ModelPayload { mediaUrl: string; objectType: string; config?: ObjectConfig; object_data?: I3DObject; } export declare enum COORDINATE_SYSTEM { MATTERPORT = "YUP", BIM = "ZUP" } export declare enum UNITS { METER = "m", FOOT = "ft", INCH = "in", RADIAN = "rad", DEGREE = "\u00B0", SCALE = "%", CENTIMETER = "cm", MILLIMETER = "mm" } export declare enum DEGREE { DEG_0 = 0, DEG_90 = 90, DEG_180 = 180, DEG_270 = 270 } export declare enum MAP_OPTIONS { DEFAULT_MAP = "Default Minimap", CUSTOM_MAP = "Custom Minimap" } export declare enum IOT_LINKED_SYSTEMS { BEMAC = "BEMAC", HANASYS = "HANASYS", URL_LINK = "URL Link", I_MTEC = "i-MTEC" } export interface ITagIOTCategory { name: string; uuid: string; json_data?: { icon: string; iconURL: string; iconBase64: string; }; } export declare enum TAG_TYPE { MP = "MP", IOT = "IoT" } export interface DeviceInfo { id?: string; ship_id?: string; iot_system?: string; name: string; type?: string; status?: 'online' | 'offline' | 'stale'; quality?: number; last_update?: string; data?: Record; } export declare enum ONLINE_STATUS { ONLINE = "ONLINE", OFFLINE = "OFFLINE", IN_SESSION = "IN_SESSION" } export interface ScreenShareUser { id: string; name: string; onlineStatus: 'online' | 'offline' | 'in_session' | 'pending' | 'sharing'; user?: any; } export interface ScreenShareSessionUser { id: string; name: string; role: 'host' | 'guest'; session: ScreenShareSession; } export interface ScreenShareSession { id: string; spaceId: string; host: ScreenShareUser; isPointerEnabled: boolean; participantCount: number; } export interface ScreenShareRequest { user: ScreenShareUser; requestBy: ScreenShareUser; requestedAt: number | Date | string; status: 'pending' | 'accepted' | 'canceled' | 'expired'; } export type SortBy = 'label' | 'showcase_object_name' | 'created_on'; export type SortOrder = 'asc' | 'desc'; export interface SortConfig { by: SortBy; order: SortOrder; } export declare const sortTagOptions: { readonly Ascending: { readonly by: "label"; readonly order: "asc"; }; readonly Descending: { readonly by: "label"; readonly order: "desc"; }; readonly Newest: { readonly by: "created_on"; readonly order: "desc"; }; readonly Oldest: { readonly by: "created_on"; readonly order: "asc"; }; }; export declare const sortObjectOptions: { readonly Ascending: { readonly by: "showcase_object_name"; readonly order: "asc"; }; readonly Descending: { readonly by: "showcase_object_name"; readonly order: "desc"; }; readonly Newest: { readonly by: "created_on"; readonly order: "desc"; }; readonly Oldest: { readonly by: "created_on"; readonly order: "asc"; }; }; export declare enum CUSTOM_MAP_MODE { DEFAULT = "DEFAULT", EDIT = "EDIT" } export interface VetexData { uuid: string; name: string; path: Array; } export interface IPipeCategory { uuid: string; space_uuid: string; name: string; parent_uuid: string; json_data: string; color?: string; pipes: Array; owner_uuid?: string; created_on: Date; } export interface IPipe { uuid: string; space_uuid: string; name: string; category_uuid: string; json_data: string; created_on: Date; } export declare enum COLLAPSE { TOGGLE_ID = "at-collapse-toggle-btn", CONTENT_ID = "at-collapse-content", ACTIVE = "active", EXPAND = "expand", TOGGLE = "toggle", INACTIVE = "inactive", LIST = "at-collapse-list", HEADER = "at-collapse-header", FORM = "at-collapse-form", ITEM = "item" } export declare enum DRAWING_MODE { ACTIVE = "active", INACTIVE = "inactive" } export interface PipePayload { uuid?: string | undefined; space_uuid?: string | undefined; name?: string | undefined; parent_uuid?: string | undefined; json_data: PolygonData; }