-
Notifications
You must be signed in to change notification settings - Fork 118
/
Copy pathIPreRoomDeletePrevent.ts
26 lines (24 loc) · 1.03 KB
/
IPreRoomDeletePrevent.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import { IHttp, IPersistence, IRead } from '../accessors';
import { IRoom } from './IRoom';
export interface IPreRoomDeletePrevent {
/**
* Checks whether the handler actually shall execute.
* This method can basically implement a filter.
*
* @param room The room which was being deleted
* @param read An accessor to the environment
* @param http An accessor to the outside world
* @return whether to run the execute or not
*/
checkPreRoomDeletePrevent?(room: IRoom, read: IRead, http: IHttp): Promise<boolean>;
/**
* Method which is to be used to prevent a room from being deleted.
*
* @param room The room about to be deleted
* @param read An accessor to the environment
* @param http An accessor to the outside world
* @param persistence An accessor to the App's persistence storage
* @returns whether to prevent the room from being deleted
*/
executePreRoomDeletePrevent(room: IRoom, read: IRead, http: IHttp, persistence: IPersistence): Promise<boolean>;
}