diff --git a/typings/src/permissions/openvidu-permissions.ts b/typings/src/permissions/openvidu-permissions.ts index ecd673c..da3d149 100644 --- a/typings/src/permissions/openvidu-permissions.ts +++ b/typings/src/permissions/openvidu-permissions.ts @@ -6,12 +6,14 @@ export interface OpenViduMeetPermissions { // Permissions for recording canRecord: boolean; // Can start/stop recording the room. - // canWatchRecording?: boolean; // Can watch the recording. - // canDownloadRecording?: boolean; // Can download the recording. - // canDeleteRecording?: boolean; // Can delete the recording. // Permissions for chat canChat: boolean; // Can send chat messages in the room. canChangeVirtualBackground: boolean; // Can change the virtual background. } + +export interface RecordingPermissions { + canRetrieveRecordings: boolean; // Can list and play recordings. + canDeleteRecordings: boolean; // Can delete recordings. +} diff --git a/typings/src/room-preferences.ts b/typings/src/room-preferences.ts index 1ce420b..130c741 100644 --- a/typings/src/room-preferences.ts +++ b/typings/src/room-preferences.ts @@ -2,19 +2,30 @@ * Interface representing the preferences for a room. */ export interface MeetRoomPreferences { - chatPreferences: MeetChatPreferences; - recordingPreferences: MeetRecordingPreferences; - virtualBackgroundPreferences: MeetVirtualBackgroundPreferences; + chatPreferences: MeetChatPreferences; + recordingPreferences: MeetRecordingPreferences; + virtualBackgroundPreferences: MeetVirtualBackgroundPreferences; } + /** * Interface representing the preferences for recording. */ export interface MeetRecordingPreferences { - enabled: boolean; + enabled: boolean; + allowAccessTo: MeetRecordingAccess; } + +export const enum MeetRecordingAccess { + ADMIN = 'admin', // Only admins can access the recording + ADMIN_MODERATOR = 'admin-moderator', // Admins and moderators can access + ADMIN_MODERATOR_PUBLISHER = 'admin-moderator-publisher', // Admins, moderators and publishers can access + PUBLIC = 'public' // Everyone can access +} + export interface MeetChatPreferences { - enabled: boolean; + enabled: boolean; } + export interface MeetVirtualBackgroundPreferences { - enabled: boolean; + enabled: boolean; }