21#include <quentier/local_storage/Fwd.h>
22#include <quentier/synchronization/Fwd.h>
23#include <quentier/threading/Fwd.h>
24#include <quentier/utility/Fwd.h>
25#include <quentier/utility/Linkage.h>
27#include <qevercloud/Fwd.h>
35namespace quentier::synchronization {
37[[nodiscard]] QUENTIER_EXPORT IAuthenticatorPtr createQEverCloudAuthenticator(
38 QString consumerKey, QString consumerSecret, QUrl serverUrl,
39 threading::QThreadPtr uiThread, QWidget * parentWidget =
nullptr);
41[[nodiscard]] QUENTIER_EXPORT ISynchronizerPtr createSynchronizer(
42 const QUrl & userStoreUrl, IAuthenticatorPtr authenticator,
43 ISyncStateStoragePtr syncStateStorage =
nullptr,
44 IKeychainServicePtr keychainService =
nullptr,
45 INoteStoreFactoryPtr noteStoreFactory =
nullptr,
46 IUserStoreFactoryPtr userStoreFactory =
nullptr,
47 qevercloud::IRequestContextPtr ctx =
nullptr,
48 qevercloud::IRetryPolicyPtr retryPolicy =
nullptr);
50[[nodiscard]] QUENTIER_EXPORT ISyncConflictResolverPtr
51 createSimpleSyncConflictResolver(
52 local_storage::ILocalStoragePtr localStorage);
54[[nodiscard]] QUENTIER_EXPORT ISyncStateStoragePtr
55 createSyncStateStorage(QObject * parent =
nullptr);