13#include "csapi/create_room.h"
14#include "csapi/login.h"
15#include "csapi/content-repo.h"
17#include "e2ee/qolmoutboundsession.h"
19#include "events/accountdataevents.h"
20#include "jobs/jobhandle.h"
21#include "jobs/syncjob.h"
24#include <QtCore/QObject>
25#include <QtCore/QSize>
30Q_DECLARE_METATYPE(Quotient::GetLoginFlowsJob::LoginFlow)
32class TestCrossSigning;
43class GetCapabilitiesJob;
47class MediaThumbnailJob;
54struct EncryptedFileMetadata;
57class QOlmInboundGroupSession;
66 inline constexpr auto Password =
"m.login.password"_L1,
SSO =
"m.login.sso"_L1,
73 std::function<Room*(Connection*,
const QString&,
JoinState)>;
74using user_factory_t = std::function<User*(Connection*,
const QString&)>;
80template <
typename T = Room>
83 return new T(c, id, js);
90template <
typename T = User>
586 template <
typename T>
593 template <
typename T>
755 [[
deprecated(
"This method is experimental and may be removed any time")]]
988Q_DECLARE_METATYPE(
Quotient::DirectChatsMap)
989Q_DECLARE_METATYPE(Quotient::IgnoredUsersList)
Predefined login flow types.
auto defaultRoomFactory(Connection *c, const QString &id, JoinState js)
The default factory to create room objects.
JoinState
Local user join-state names.
auto defaultUserFactory(Connection *c, const QString &id)
The default factory to create user objects.