import Foundation import Combine protocol POfflineBookmarkSyncUseCase { var isSyncing: AnyPublisher { get } var syncStatus: AnyPublisher { get } func getOfflineBookmarksCount() -> Int func syncOfflineBookmarks() async } class OfflineBookmarkSyncUseCase: POfflineBookmarkSyncUseCase { private let syncManager = OfflineSyncManager.shared var isSyncing: AnyPublisher { syncManager.$isSyncing.eraseToAnyPublisher() } var syncStatus: AnyPublisher { syncManager.$syncStatus.eraseToAnyPublisher() } func getOfflineBookmarksCount() -> Int { return syncManager.getOfflineBookmarksCount() } func syncOfflineBookmarks() async { await syncManager.syncOfflineBookmarks() } }