libkazv
membership.hpp
Go to the documentation of this file.
1 /*
2  * This file is part of libkazv.
3  * SPDX-FileCopyrightText: 2020 Tusooa Zhu <tusooa@kazv.moe>
4  * SPDX-License-Identifier: AGPL-3.0-or-later
5  */
6 
7 #pragma once
8 #include <libkazv-config.hpp>
9 
10 #include "client-model.hpp"
11 #include <csapi/create_room.hpp>
12 #include <csapi/inviting.hpp>
13 #include <csapi/joining.hpp>
14 #include <csapi/leaving.hpp>
15 #include <csapi/kicking.hpp>
16 #include <csapi/banning.hpp>
17 
18 namespace Kazv
19 {
20  ClientResult updateClient(ClientModel m, CreateRoomAction a);
22 
23  ClientResult updateClient(ClientModel m, InviteToRoomAction a);
25 
26  ClientResult updateClient(ClientModel m, JoinRoomByIdAction a);
28 
29  ClientResult updateClient(ClientModel m, JoinRoomAction a);
31 
32  ClientResult updateClient(ClientModel m, LeaveRoomAction a);
34 
35  ClientResult updateClient(ClientModel m, ForgetRoomAction a);
37 
38  ClientResult updateClient(ClientModel m, KickAction a);
39  ClientResult processResponse(ClientModel m, KickResponse r);
40 
41  ClientResult updateClient(ClientModel m, BanAction a);
42  ClientResult processResponse(ClientModel m, BanResponse r);
43 
44  ClientResult updateClient(ClientModel m, UnbanAction a);
45  ClientResult processResponse(ClientModel m, UnbanResponse r);
46 }
JoinRoomByIdJob::JobResponse JoinRoomByIdResponse
Definition: joining.hpp:88
InviteUserJob::JobResponse InviteUserResponse
Definition: inviting.hpp:81
LeaveRoomJob::JobResponse LeaveRoomResponse
Definition: leaving.hpp:75
JoinRoomJob::JobResponse JoinRoomResponse
Definition: joining.hpp:179
KickJob::JobResponse KickResponse
Definition: kicking.hpp:74
ForgetRoomJob::JobResponse ForgetRoomResponse
Definition: leaving.hpp:144
UnbanJob::JobResponse UnbanResponse
Definition: banning.hpp:142
CreateRoomJob::JobResponse CreateRoomResponse
Definition: create_room.hpp:295
BanJob::JobResponse BanResponse
Definition: banning.hpp:71
Definition: location.hpp:10
ClientResult updateClient(ClientModel m, SetAccountDataPerRoomAction a)
Definition: account-data.cpp:15
std::pair< ClientModel, ClientEffect > ClientResult
Definition: clientfwd.hpp:149
ClientResult processResponse(ClientModel m, SetAccountDataPerRoomResponse r)
Definition: account-data.cpp:23