@class NSString, NSTimer, IMTimer, NSDate, IMSyncResumer; @interface IMDCKSyncController : IMDCKAbstractSyncController <IMDMessageSyncCoordinatorDelegate, IMDXPCEventStreamHandlerDelegate, IMUnlockMonitorListener, IMDCKAbstractSyncControllerDelegate> @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; @property (retain, nonatomic) NSDate *syncStartDate; @property (retain, nonatomic) NSTimer *longRunningSyncTimer; @property (retain, nonatomic) IMTimer *nightlySyncTimer; @property (nonatomic) long long initialSyncAttempts; @property (retain, nonatomic) NSDate *lastLogDumpDate; @property (retain, nonatomic) NSDate *lastRestoreFailureLogDumpDate; @property BOOL shouldReloadConversations; @property (retain) NSTimer *reloadTimer; @property (retain, nonatomic) IMSyncResumer *syncResumer; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (id)sharedInstance; + (BOOL)initialSyncAllowed; - (id)chatSyncController; - (void)_resetSyncStateAndAttemptCounts; - (void)beginUserInitiatedSync; - (void)_writeDownSyncDate; - (void)clearAnalyticDefaultsAndLocalSyncState; - (void)_kickOffNightlyPeriodicSyncIfApplicable; - (id)init; - (BOOL)_serverDoesNotAllowComingBackOnlineChatSync; - (void)dealloc; - (void)_refreshUIWhileSyncing; - (void)_beginPeriodicSyncWithActivity:(id)a0 attemptCount:(unsigned long long)a1; - (void)syncAttachmentMetadataFirstSyncWithActivity:(id)a0 deviceConditionsToCheck:(unsigned long long)a1 completionBlock:(id /* block */)a2; - (void)_needsSyncOnAccountUpdate; - (id)attachmentSyncController; - (void)_addDatesDefaultsIfNeededToDictionary:(id)a0; - (id)updateSyncController; - (void)_nightlySyncTimerFired; - (void)collectLogsIfNeeded; - (void)_deleteRestoreFailuresDirectory; - (void)performInitialSyncOnFirstConnectionOfImagentIfNeeded; - (void)sendRestoreFailuresLogDumpsIfNeeded; - (id)_keychainError; - (void)syncCoordinatorWaitingForImportToFinishWithName:(id)a0 identifier:(id)a1; - (void)kickOffEagerSyncIfApplicable; - (BOOL)_hasDumpedLogsInPastHour; - (long long)syncControllerRecordType; - (id)initialAttachmentSyncController; - (BOOL)_serverDeniesPeriodicSyncAnalytics; - (BOOL)_serverDoesNotSingleDeviceLimitation; - (id)rampManager; - (id)_retryError; - (void)performOneTimeAccountUpgradeCheckIfNeeded; - (void)registerForAccountNotifications; - (void)_noteSyncStarted:(BOOL)a0; - (BOOL)_withinAnHourOfLogDumpHour; - (void)_syncChatsWithActivity:(id)a0; - (id)_dailySyncStateDictionary; - (void)syncDeletesToCloudKitWithActivity:(id)a0 completion:(id /* block */)a1; - (long long)_manualSyncAttemptCount; - (void)_beginPeriodicSyncWithActivity:(id)a0 attemptCount:(unsigned long long)a1 syncChatsCompletionBlock:(id /* block */)a2; - (long long)_periodicSyncAttemptCount; - (void)_callSyncWithCompletion:(id /* block */)a0 activity:(id)a1; - (void)updateSecurityLevelDowngradedIfNeeded:(id /* block */)a0; - (void)_submitCloudKitAnalyticWithOperationGroupName:(id)a0 analyticDictionary:(id)a1; - (void)_accountDidChange:(id)a0; - (void)_addDatesDefaultsIfNeededToDictionary:(id)a0 keys:(id)a1; - (unsigned long long)_currentHour; - (BOOL)_chatSyncedRecently; - (void)beginComingBackOnlineSyncWithActivity:(id)a0; - (BOOL)_syncNotCompletedRecently; - (void)systemDidUnlock; - (BOOL)_accountHasMultipleDevices; - (void)_nukeCKData; - (void)recordMetricIsCloudKitEnabled; - (void)beginInitialSyncWithActivity:(id)a0; - (void)_postMetricsToCloudKitOnAutomaticHistoryDeletionAgentLaunch; - (BOOL)_handleSyncFailureType:(long long)a0 step:(long long)a1 activity:(id)a2 attemptCount:(unsigned long long)a3 startTime:(id)a4 error:(id)a5 retry:(id /* block */)a6; - (void)clearCKRelatedDefaults; - (void)beginInitialSyncAttemptCount:(unsigned long long)a0 withActivity:(id)a1; - (void)_ifCloudKitAbleToSyncWithActivity:(id)a0 callBlock:(id /* block */)a1; - (void)_autoBugCaptureWithSubType:(id)a0 debugDescription:(id)a1; - (BOOL)shouldMarkAllIncompatibleMessagesForDeletion; - (BOOL)_completedPeriodicSyncSinceFirstFullSyncForLastSyncDate:(id)a0 firstFullSyncCompletedDate:(id)a1; - (void)_syncRecoverableMessagesToCloudKitWithActivity:(id)a0 syncAttemptCount:(unsigned long long)a1 startTime:(id)a2 syncCompletionBlock:(id /* block */)a3 retryCompletionBock:(id /* block */)a4; - (double)reloadTimeInterval; - (id)initialMessageSyncController; - (id)_dateForNext24LogDumpAtHour:(long long)a0 timeNow:(id)a1 dumpNow:(BOOL *)a2; - (void).cxx_destruct; - (BOOL)logCloudKitAnalytics; - (void)syncCoordinatorFinishedSyncWithName:(id)a0 identifier:(id)a1 error:(id)a2; - (void)syncController:(id)a0 syncBatchCompleted:(unsigned long long)a1; - (void)registerCloudSyncDependencies; - (id)exitManager; - (void)_beginExitStateCleanupIfNeededWithActivity:(id)a0; - (void)syncCoordinatorFinishedFetchingRecordsOfType:(long long)a0 name:(id)a1 identifier:(id)a2 count:(long long)a3 error:(id)a4; - (id)_periodicSyncStateDictionary; - (id)backupController; - (void)beginPeriodicSyncWithActivity:(id)a0; - (id)recoverableMessageSyncController; - (void)_needsSyncOnIdentityUpdate; - (BOOL)_errorIndicatesDeviceNotGoodForSync:(id)a0; - (void)clearLocalCloudKitSyncState; - (void)_noteMeticsForSyncEndedWithSuccces:(BOOL)a0; - (id)_keychainErrorWithCause:(id)a0; - (void)eventStreamHandler:(id)a0 didReceiveEventWithName:(id)a1 userInfo:(id)a2; - (double)_IMAHDAgentFallbackIntervalInSeconds; - (void)refreshUIIfApplicableWithBatchCount:(unsigned long long)a0; - (BOOL)enforceAccountsMatchForMocAndShowDialogIfNeeded; - (void)beginChatSyncPeriodic:(BOOL)a0 activity:(id)a1; - (unsigned long long)_maxTimeToDeferInSeconds; - (BOOL)_hasDumpedRestoreFailureLogsInPastHour; - (void)_didPassAccountAndIdentityUpdateNeeds; - (id)_sharedDatabaseManager; - (void)resumeSyncOnLaunchIfNeeded; - (void)handleAKUserInfoChangedNotification:(id)a0; - (void)_noteMetricsForSyncStartFrom:(id)a0 fullSync:(BOOL)a1; - (BOOL)_serverAllowsUIRefreshWhileSyncing; - (void)kickOffCloudKitSyncIfNeededOnImagentLaunch; - (void)_clearTombstonesWithActivity:(id)a0; - (void)syncCoordinatorStartedSyncWithName:(id)a0 identifier:(id)a1; - (void)_reloadChatRegistryOnMainThread; - (id)syncStateDebuggingInfo:(id)a0; - (void)beginPeriodicSyncWithChecks:(unsigned long long)a0 priority:(const char *)a1 reason:(id)a2; - (BOOL)_serverDeniesDailySyncStateAnalytics; - (id)_recordManager; - (BOOL)_serverAllowsUIRefreshTimerWhileSyncing; - (void)syncChatsWithMessageContext:(id)a0; - (double)_minimumChatComingOnlineSyncInterval; - (id)messageSyncController; - (void)_dispatchNotification:(id)a0 withBlock:(id /* block */)a1; - (void)sendRestoreFailuresLogDumps; @end