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>
27#include <QtQmlIntegration/qqmlintegration.h>
31Q_DECLARE_METATYPE(Quotient::GetLoginFlowsJob::LoginFlow)
33class TestCrossSigning;
44class GetCapabilitiesJob;
48class MediaThumbnailJob;
55struct EncryptedFileMetadata;
58class QOlmInboundGroupSession;
67 inline constexpr auto Password =
"m.login.password"_L1,
SSO =
"m.login.sso"_L1,
74 std::function<Room*(Connection*,
const QString&, JoinState)>;
75using user_factory_t = std::function<User*(Connection*,
const QString&)>;
81template <
typename T = Room>
84 return new T(c, id, js);
91template <
typename T = User>
589 template <
typename T>
596 template <
typename T>
758 [[
deprecated(
"This method is experimental and may be removed any time")]]
991Q_DECLARE_METATYPE(
Quotient::DirectChatsMap)
992Q_DECLARE_METATYPE(Quotient::IgnoredUsersList)
Predefined login flow types.
auto defaultRoomFactory(Connection *c, const QString &id, JoinState js)
The default factory to create room objects.
auto defaultUserFactory(Connection *c, const QString &id)
The default factory to create user objects.