@class NSDictionary, BRCSyncOperationBackoffRatio, BRCItemID, CKOperationGroup, BRCSyncDownOperation, BRCSyncBudgetThrottle, NSMutableArray, NSString, BRCThrottleBase, NSError, BRCFetchRecentAndFavoriteDocumentsOperation, NSMutableIndexSet, NSArray, brc_task_tracker, NSMutableDictionary, BRCAccountSessionFPFS, BRCPQLConnection, UMUserSyncTask, NSObject, NSSet, BRCZoneRowID, BRCDeadlineSource, BRCServerZone, BRCThrottle, BRCSyncOperationThrottle, BRMangledID, NSDate, BRCSyncUpOperation; @protocol OS_dispatch_source, NSObject, BRCClientZoneDelegate; @interface BRCClientZone : NSObject <BRCReachabilityDelegate, BRCZone> { NSString *_ownerName; BOOL _isInitialCreation; BRCThrottleBase *_readerThrottle; long long _syncUpRetryAfter; _Atomic unsigned int _syncState; BRCSyncUpOperation *_syncUpOperation; NSError *_lastSyncUpError; BOOL _lastSyncUpErrorWasOnChainedItem; BRCSyncDownOperation *_syncDownOperation; id _syncDeadlineSourceResumer; NSError *_lastSyncDownError; BRCSyncOperationThrottle *_syncUpThrottle; BRCSyncBudgetThrottle *_syncUpBudget; BRCSyncOperationBackoffRatio *_syncUpBackoffRatio; BRCSyncOperationThrottle *_syncDownThrottle; NSMutableArray *_blockedOperationsOnInitialSync; NSMutableDictionary *_runningListOperations; NSMutableDictionary *_recursiveListOperations; NSMutableDictionary *_fetchParentOperations; NSMutableDictionary *_locateRecordOperations; BRCFetchRecentAndFavoriteDocumentsOperation *_fetchRecentsOperation; BOOL _invokeFetchRecentsOperation; BRCThrottle *_serverStitchingOperationThrottle; NSMutableIndexSet *_appliedTombstoneRanks; NSDate *_lastSyncDownDate; NSObject<OS_dispatch_source> *_resetTimer; NSMutableDictionary *_syncDownBlockToPerformForBookmarkData; BOOL _shouldShowiCloudDriveAppInstallationNotification; NSMutableArray *_faultsLiveBarriers; NSMutableDictionary *_onDiskBlockToPerformForItemID; NSMutableDictionary *_downloadedBlockToPerformForItemID; NSMutableDictionary *_syncDownBlockToPerformForItemID; NSMutableDictionary *_locateBlocksToPerformForRecordID; NSMutableArray *_nextSyncDownBarriers; NSMutableArray *_currentSyncDownBarriers; id<NSObject> _hasWorkDidUpdateObserver; NSMutableArray *_nextIdleHandlers; NSMutableArray *_directoriesCreatedLastSyncUp; CKOperationGroup *_syncDownGroup; NSMutableArray *_syncDownDependencies; NSMutableArray *_allItemsDidUploadTrackers; float _syncUpBatchSizeMultiplier; UMUserSyncTask *_bubbleSyncTask; } @property (retain, nonatomic) BRCServerZone *serverZone; @property (retain, nonatomic) NSDate *lastAttemptedSyncDownDate; @property (readonly, nonatomic) NSString *zoneName; @property (retain, nonatomic) id<BRCClientZoneDelegate> delegate; @property (retain, nonatomic) BRCAccountSessionFPFS *session; @property (readonly, nonatomic) unsigned int state; @property (readonly, nonatomic) BRCItemID *rootItemID; @property (readonly, nonatomic) BRMangledID *mangledID; @property (readonly, nonatomic) BRCPQLConnection *db; @property (readonly, nonatomic) brc_task_tracker *taskTracker; @property (readonly, nonatomic) BOOL isCloudDocsZone; @property (readonly, nonatomic) NSString *osNameRequiredToSync; @property (readonly, nonatomic) BOOL isForeground; @property (readonly, nonatomic) BOOL activated; @property (readonly, nonatomic) unsigned long long currentRequestID; @property (readonly) unsigned int syncState; @property (readonly, nonatomic) NSArray *syncThrottles; @property (readonly, nonatomic) BRCDeadlineSource *syncDeadlineSource; @property (readonly, nonatomic) BOOL hasHighPriorityWatchers; @property (readonly, nonatomic) long long lastInsertedRank; @property (readonly, nonatomic) unsigned int syncUpBatchSize; @property (readonly, nonatomic) NSSet *itemIDsBlockedFromSyncForCZMProcessing; @property (readonly, nonatomic) NSDictionary *parentsOfCZMFaults; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; @property (nonatomic) BOOL needsSave; @property (retain, nonatomic) BRCZoneRowID *dbRowID; @property (readonly, nonatomic) BOOL isSharedZone; @property (readonly, nonatomic) BOOL isPrivateZone; @property (readonly, nonatomic) NSMutableDictionary *plist; - (id)ownerName; - (void)close; - (id)allItems; - (id)init; - (void)dealloc; - (void)networkReachabilityChanged:(BOOL)a0; - (id)itemByRowID:(unsigned long long)a0 db:(id)a1; - (void)resume; - (void).cxx_destruct; - (BOOL)isEqual:(id)a0; - (id)itemByRowID:(unsigned long long)a0; - (BOOL)hasItems; - (BOOL)_isIdle; - (void)_removeAllShareAcceptanceBlocks; - (void)clearStateBits:(unsigned int)a0; - (BOOL)existsByItemID:(id)a0; - (void)fetchRecentAndFavoriteDocuments; - (BOOL)hasCompletedInitialSyncDownOnce; - (id)itemByParentID:(id)a0 andPhysicalName:(id)a1; - (void)_registerLocateRecordOperation:(id)a0; - (void)listedUpToRank:(long long)a0; - (void)notifyClient:(id)a0 afterNextSyncDown:(id /* block */)a1; - (void)recomputeAllItemsDidUploadState; - (unsigned int)_activateState:(unsigned int)a0 origState:(unsigned int)a1; - (void)_allItemsDidUploadWithError:(id)a0; - (void)_appendToString:(id)a0 descriptionOfFieldNamed:(id)a1 inResultSet:(id)a2 pos:(int *)a3 containsSize:(BOOL)a4 context:(id)a5; - (BOOL)_blockExistingOperationIfNecessary:(id)a0 onNewOperation:(id)a1; - (void)_blockLowPriorityStitchingOperationsForOperation:(id)a0; - (void)_blockSyncDownOnStitchingOperations; - (id)_cancelAllOperationsForReset; - (BOOL)_checkIfEnumeratorContainsNonDiscretionaryOp:(id)a0; - (BOOL)_crossZoneMoveDocumentsToZone:(id)a0; - (void)_decreaseSyncUpBatchSizeAfterError; - (void)_deleteJobsMatchingServerZone; - (BOOL)_deleteRelevantPackageItemsWithDB:(id)a0 error:(id *)a1; - (BOOL)_dumpItemsToContext:(id)a0 includeAllItems:(BOOL)a1 error:(id *)a2; - (void)_dumpRecursivePropertiesOfItemByRowID:(unsigned long long)a0 context:(id)a1 depth:(int)a2; - (void)_enumerateAndClearLocateBlocksForRecordID:(id)a0 exists:(BOOL)a1; - (void)_enumerateFaultsWithBlock:(id /* block */)a0 rowID:(unsigned long long)a1 batchSize:(unsigned long long)a2; - (id)_faultsEnumeratorFromRow:(unsigned long long)a0 batchSize:(unsigned long long)a1; - (void)_finishedReset:(unsigned long long)a0 completionHandler:(id /* block */)a1; - (void)_fixupMissingCrossMovedItems; - (void)_flushIdleBlocksIfNeeded; - (void)_forDBUpgrade_setStateBits:(unsigned int)a0 clearStateBits:(unsigned int)a1; - (id)_getRelevantClientTruthItemEnumerator; - (void)_handleSoftResetOfLocalItem:(id)a0 wantsUnlink:(BOOL)a1; - (BOOL)_hasAllItemsDidUploadHandlers; - (BOOL)_hasNonDiscretionaryServerStitchingOperation; - (void)_increaseSyncUpBatchSizeAfterSuccess; - (BOOL)_isSideSyncOperationBlockedWithName:(id)a0; - (BOOL)_isSideSyncOperationBlockedWithName:(id)a0 isListDirectoryOp:(BOOL)a1; - (void)_markLatestSyncRequestFailed; - (void)_markRequestIDAcked; - (void)_performAfterResetServerAndClientPrivateTruthsAndUnlinkData:(id /* block */)a0; - (void)_performAfterResetServerAndClientSharedTruthsAndUnlinkData:(id /* block */)a0; - (void)_performAfterResetServerAndClientTruthsAndUnlinkData:(id /* block */)a0; - (void)_performAfterResetServerAndClientTruthsAndUnlinkDataAndPurgeTheZone:(id /* block */)a0; - (BOOL)_performHardResetOnClientItemsAndWantsUnlink:(BOOL)a0 db:(id)a1 error:(id *)a2; - (void)_performResetAndWantsUnlink:(BOOL)a0 clientTruthBlock:(id /* block */)a1 completionBlock:(id /* block */)a2; - (void)_performSoftResetOnItems:(id)a0 wantsUnlink:(BOOL)a1; - (BOOL)_postHardResetHandlingWithDB:(id)a0 completionBlock:(id /* block */)a1 error:(id *)a2; - (void)_postSoftResetHandlingAndWantsUnlink:(BOOL)a0 completionBlock:(id /* block */)a1; - (void)_prepareForForegroundSyncDown; - (void)_recreateSyncBudgetsAndThrottlesIfNeeded; - (void)_registerFetchParentChainOperation:(id)a0; - (void)_registerListOperation:(id)a0; - (void)_registerServerStitchingOperation:(id)a0; - (void)_removeDownloadedBlockToPerformForItemID:(id)a0; - (void)_removeOnDiskBlockToPerformForItemID:(id)a0; - (void)_reset:(unsigned long long)a0 completionHandler:(id /* block */)a1; - (void)_resetAndDeleteServerTruthData; - (BOOL)_resetItemsTable; - (BOOL)_shouldFailSyncDownWaitImmediately; - (void)_startSync; - (void)_syncUpOfRecords:(id)a0 createdAppLibraryNames:(id)a1 didFinishWithError:(id)a2 errorWasOnPCSChainedItem:(BOOL)a3; - (void)addSyncDownDependency:(id)a0; - (id)allItemsSortedByDepthDescending:(BOOL)a0; - (unsigned long long)allocateSyncUpRequestID; - (id)asPrivateClientZone; - (id)asSharedClientZone; - (void)associateWithServerZone:(id)a0; - (void)associateWithServerZone:(id)a0 offline:(BOOL)a1; - (void)beginSyncBubbleActivityIfNecessary; - (id)cancelFetchParentChainOperationAndReschedule:(id)a0; - (id)cancelListOperationAndReschedule:(id)a0; - (id)cancelLocateRecordOperationAndReschedule:(id)a0; - (void)cancelReset; - (void)clearAndRefetchRecentAndFavoriteDocuments; - (void)clearSyncStateBits:(unsigned int)a0; - (void)clearSyncUpError; - (id)clientChildCountWithParentID:(id)a0 db:(id)a1; - (BOOL)containsNonRejectedChildWithParentID:(id)a0 db:(id)a1; - (id)descriptionWithContext:(id)a0; - (void)didApplyTombstoneForRank:(long long)a0; - (void)didClearOutOfQuota; - (void)didGCTombstoneRanks:(id)a0; - (void)didSyncDownRequestID:(unsigned long long)a0 maxApplyRank:(long long)a1 caughtUpWithServer:(BOOL)a2 syncDownDate:(id)a3; - (id)directoryItemIDsCreatedLastSyncUp; - (id)directoryOrRootItemIDByFileID:(unsigned long long)a0; - (id)directoryOrRootItemIDByFileID:(unsigned long long)a0 db:(id)a1; - (void)disconnectNSMDQListenerAsync; - (id)documentItemByItemID:(id)a0; - (id)documentItemByItemID:(id)a0 db:(id)a1; - (id)documentsNotIdleEnumeratorWithDB:(id)a0 startingRowID:(unsigned long long)a1 batchSize:(unsigned long long)a2; - (BOOL)dumpActivityToContext:(id)a0 includeExpensiveActivity:(BOOL)a1 error:(id *)a2; - (BOOL)dumpStatusToContext:(id)a0 error:(id *)a1; - (BOOL)dumpTablesToContext:(id)a0 includeAllItems:(BOOL)a1 error:(id *)a2; - (void)enumerateFaultsAsyncWithBlock:(id /* block */)a0 batchSize:(unsigned long long)a1; - (BOOL)existsByItemID:(id)a0 db:(id)a1; - (BOOL)existsByParentID:(id)a0 andCaseInsensitiveLogicalName:(id)a1; - (BOOL)existsByParentID:(id)a0 andLogicalName:(id)a1; - (BOOL)existsByParentID:(id)a0 andLogicalName:(id)a1 db:(id)a2; - (BOOL)existsByParentID:(id)a0 andLogicalName:(id)a1 excludingItemID:(id)a2; - (BOOL)existsByParentID:(id)a0 andLogicalName:(id)a1 excludingItemID:(id)a2 db:(id)a3; - (id)fetchDirectoryContentsIfNecessary:(id)a0 isUserWaiting:(BOOL)a1 rescheduleApplyScheduler:(BOOL)a2; - (id)fetchParentChainIfNecessaryWithParentItemID:(id)a0 isUserWaiting:(BOOL)a1; - (void)fetchRecentAndFavoriteDocuments:(BOOL)a0; - (id)fetchRecursiveDirectoryContentsIfNecessary:(id)a0 isUserWaiting:(BOOL)a1 rescheduleApply:(BOOL)a2; - (void)flushAppliedTombstones; - (void)handleRootRecordDeletion; - (BOOL)handleZoneLevelErrorIfNeeded:(id)a0 forItemCreation:(BOOL)a1; - (BOOL)hasItemsWithInFlightDiffs; - (id)initWithMangledID:(id)a0 dbRowID:(id)a1 db:(id)a2 plist:(id)a3 session:(id)a4 initialCreation:(BOOL)a5; - (BOOL)isEqualToClientZone:(id)a0; - (BOOL)isSyncBlocked; - (BOOL)isSyncBlockedBecauseAppNotInstalled; - (BOOL)isSyncBlockedBecauseOSNeedsUpgrade; - (id)itemByDocumentID:(unsigned int)a0; - (id)itemByDocumentID:(unsigned int)a0 db:(id)a1; - (id)itemByFileID:(unsigned long long)a0; - (id)itemByFileID:(unsigned long long)a0 db:(id)a1; - (id)itemByItemID:(id)a0; - (id)itemByItemID:(id)a0 db:(id)a1; - (id)itemByParentID:(id)a0 andLogicalName:(id)a1; - (id)itemByParentID:(id)a0 andLogicalName:(id)a1 db:(id)a2; - (id)itemByParentID:(id)a0 andPhysicalName:(id)a1 db:(id)a2; - (id)itemCountPendingUploadOrSyncUpAndReturnError:(id *)a0; - (void)itemMovedIntoShareInThisZone:(id)a0 associatedItemID:(id)a1; - (char)itemTypeByItemID:(id)a0 db:(id)a1; - (id)itemsEnumeratorWithDB:(id)a0; - (id)itemsParentedToThisZoneButLivingInAnOtherZone; - (id)itemsWithInFlightDiffsEnumerator; - (void)learnCKInfosFromSavedRecords:(id)a0 isOutOfBandModifyRecords:(BOOL)a1; - (id)locateRecordIfNecessaryForRecordID:(id)a0 isUserWaiting:(BOOL)a1; - (void)notifyClient:(id)a0 whenFaultingIsDone:(id /* block */)a1; - (void)notifyClient:(id)a0 whenIdle:(id /* block */)a1; - (void)performBlock:(id /* block */)a0 whenItemWithIDIsDownloaded:(id)a1; - (void)performBlock:(id /* block */)a0 whenItemWithRecordIDIsOnDisk:(id)a1; - (void)performBlock:(id /* block */)a0 whenLocatingCompletesForItemWithRecordID:(id)a1; - (void)performBlock:(id /* block */)a0 whenSyncDownCompletesLookingForItemID:(id)a1; - (id /* block */)popDownloadedBlockForItemID:(id)a0; - (id /* block */)popOnDiskBlockForItemID:(id)a0; - (void)prepareDirectoryForSyncUp:(id)a0; - (void)registerAllItemsDidUploadTracker:(id)a0; - (BOOL)removeItemIsDownloadedBlock:(id)a0; - (BOOL)removeItemOnDiskBlock:(id)a0; - (void)removeSyncDownDependency:(id)a0; - (BOOL)removeSyncDownForItemIDBlock:(id)a0; - (void)resetSyncBudgetAndThrottle; - (void)resetSyncUpBackoffRatio; - (void)scheduleReset:(unsigned long long)a0; - (void)scheduleReset:(unsigned long long)a0 completionHandler:(id /* block */)a1; - (void)scheduleResetServerAndClientTruthsForReason:(id)a0; - (void)scheduleResetServerAndClientTruthsForReason:(id)a0 completionHandler:(id /* block */)a1; - (void)scheduleSyncDown; - (void)scheduleSyncDownFirst; - (void)scheduleSyncDownForOOBModifyRecordsAck; - (void)scheduleSyncDownWithGroup:(id)a0; - (void)scheduleSyncUp; - (id)serverChildCountWithParentID:(id)a0 db:(id)a1; - (id)serverHiddenChildCountWithParentID:(id)a0 db:(id)a1; - (id)serverItemByItemID:(id)a0; - (id)serverItemByItemID:(id)a0 db:(id)a1; - (id)serverItemByParentID:(id)a0 andLogicalName:(id)a1; - (id)serverItemByParentID:(id)a0 andLogicalName:(id)a1 db:(id)a2; - (id)serverItemByRank:(long long)a0; - (id)serverItemByRowID:(unsigned long long)a0; - (id)serverItemByRowID:(unsigned long long)a0 db:(id)a1; - (char)serverItemTypeByItemID:(id)a0 db:(id)a1; - (id)serverQuotaUsageWithParentID:(id)a0 db:(id)a1; - (long long)serverRankByItemID:(id)a0; - (long long)serverRankByItemID:(id)a0 db:(id)a1; - (BOOL)setStateBits:(unsigned int)a0; - (void)setSyncStateBits:(unsigned int)a0; - (BOOL)shouldSyncMangledID:(id)a0; - (void)signalFaultingWatchersWithError:(id)a0; - (id)sizeOfItemsNeedingSyncUpOrUploadAndReturnError:(id *)a0; - (BOOL)supportsKeepingClientItemsDuringReset; - (id)syncDownAnalyticsError; - (id)syncDownImmediately; - (void)syncDownOperation:(id)a0 didFinishWithError:(id)a1 status:(long long)a2; - (id)syncUpAnalyticsError; - (float)syncUpBackoffDelay; - (float)syncUpBackoffRatio; - (long long)throttleHashWithItemID:(id)a0; - (void)unregisterAllItemsDidUploadTracker:(id)a0; - (void)updateWithPlist:(id)a0; - (BOOL)validateItemsLoggingToFile:(struct __sFILE { char *x0; int x1; int x2; short x3; short x4; struct __sbuf { char *x0; int x1; } x5; int x6; void *x7; void /* function */ *x8; void /* function */ *x9; void /* function */ *x10; void /* function */ *x11; struct __sbuf { char *x0; int x1; } x12; struct __sFILEX *x13; int x14; unsigned char x15[3]; unsigned char x16[1]; struct __sbuf { char *x0; int x1; } x17; int x18; long long x19; } *)a0 db:(id)a1; - (BOOL)validateStructureLoggingToFile:(struct __sFILE { char *x0; int x1; int x2; short x3; short x4; struct __sbuf { char *x0; int x1; } x5; int x6; void *x7; void /* function */ *x8; void /* function */ *x9; void /* function */ *x10; void /* function */ *x11; struct __sbuf { char *x0; int x1; } x12; struct __sFILEX *x13; int x14; unsigned char x15[3]; unsigned char x16[1]; struct __sbuf { char *x0; int x1; } x17; int x18; long long x19; } *)a0 db:(id)a1; - (id)deadItemByParentID:(id)a0 andUnbouncedLogicalName:(id)a1; - (id)insertParentChainForItem:(id)a0; - (id)liveItemByParentID:(id)a0 andCaseInsensitiveLogicalName:(id)a1 excludingItemID:(id)a2; - (id)liveItemByParentID:(id)a0 andLogicalName:(id)a1 excludingItemID:(id)a2; @end