diff --git a/apps/meteor/definition/IRoomTypeConfig.ts b/apps/meteor/definition/IRoomTypeConfig.ts index 12a4bea39f056..10bc117f1d800 100644 --- a/apps/meteor/definition/IRoomTypeConfig.ts +++ b/apps/meteor/definition/IRoomTypeConfig.ts @@ -39,6 +39,8 @@ export const RoomMemberActions = { ARCHIVE: 'archive', IGNORE: 'ignore', BLOCK: 'block', + ANNOUNCEMENT: 'roomAnnouncement', + DESCRIPTION: 'roomDescription', MUTE: 'mute', SET_AS_OWNER: 'setAsOwner', SET_AS_LEADER: 'setAsLeader', @@ -57,6 +59,7 @@ export const UiTextContext = { export interface IRoomTypeConfig { identifier: string; route?: IRoomTypeRouteConfig; + label?: string; } export interface IRoomTypeClientConfig extends IRoomTypeConfig { @@ -84,6 +87,12 @@ export interface IRoomTypeClientDirectives { extractOpenRoomParams?: (routeParams: Record) => { type: RoomType; reference: string }; findRoom: (identifier: string) => IRoom | undefined; showJoinLink: (roomId: string) => boolean; + showJoinLink: (roomId: string) => boolean; + isLivechatRoom: () => boolean; + isGroupChat: (room: IRoom) => boolean; + canBeDeleted: (hasPermission: (permissionId: string, rid?: string) => Promise | boolean, room: IRoom) => Promise; + preventRenaming: () => boolean; + getDiscussionType: (room?: AtLeast) => Promise boolean; canSendMessage: (rid: string) => boolean; readOnly?: (rid: string, user: AtLeast) => boolean; @@ -95,6 +104,10 @@ export interface IRoomTypeServerDirectives { allowRoomSettingChange: (room: IRoom, setting: ValueOf) => boolean; allowMemberAction: (room: IRoom, action: ValueOf, userId?: IUser['_id']) => Promise; roomName: (room: IRoom, userId?: string) => Promise; + extractOpenRoomParams?: (routeParams: Record) => { type: RoomType; reference: string }; + findRoom: (identifier: string) => IRoom | undefined; + showJoinLink: (roomId: string) => boolean; + isLivechatRoom: () => boolean; isGroupChat: (room: IRoom) => boolean; canBeDeleted: (hasPermission: (permissionId: string, rid?: string) => Promise | boolean, room: IRoom) => Promise; preventRenaming: () => boolean;