@class BRCAsyncDirectoryEnumerator, NSString, BRCFairSource, NSMutableSet, BRCCountedSet, NSObject, brc_task_tracker; @protocol OS_dispatch_group, OS_dispatch_source; @interface BRCFSReader : BRCFSSchedulerBase { BRCCountedSet *_coordinatedReaders; BOOL _readerCountReachedMax; BRCAsyncDirectoryEnumerator *_currentScan; NSMutableSet *_lostSet; BRCFairSource *_lostScanSource; NSObject *_lostScanDelay; struct { unsigned long long sectionID; char *function; int line; } _lostScanDelaySection; BOOL _resumed; unsigned long long _lostItemCountUnderUnknownParent; } @property (readonly, nonatomic) NSObject *lostScanGroup; @property (readonly, nonatomic) brc_task_tracker *taskTracker; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; @property (readonly, nonatomic) BOOL isCancelled; - (void)_close; - (void)reset; - (void)dealloc; - (void)suspend; - (void)schedule; - (void)resume; - (void).cxx_destruct; - (id)initWithAccountSession:(id)a0; - (void)cancel; - (void)_delayJobID:(id)a0 by:(double)a1; - (void)fseventOnDocument:(id)a0 flags:(unsigned int)a1 lookup:(id)a2; - (void)scanContainerDocumentsIfNeeded:(id)a0; - (void)_attemptSchedulingCoordinatedReadForItem:(id)a0 path:(id)a1; - (unsigned long long)_backoffBeforeProcessingLostItemWithStamp:(unsigned long long)a0 appLibrary:(id)a1; - (void)_cancelScan; - (BOOL)_createSharedZoneIfNecessaryWithLookup:(id)a0; - (void)_didResolvedDocumentID:(unsigned int)a0 fileID:(unsigned long long)a1 zone:(id)a2; - (BOOL)_fetchNextLostItemID:(id *)a0 parentID:(id *)a1 appLibraryRowID:(id *)a2 tooManyScans:(BOOL *)a3 stamp:(long long *)a4; - (void)_finishCurrentRelpathScan; - (void)_finishedScanWithError:(int)a0; - (void)_fseventOnDocument:(id)a0 flags:(unsigned int)a1 options:(unsigned long long)a2 item:(id)a3 lookup:(id)a4 unresolvedLastPathComponent:(id)a5; - (void)_lostScanSchedule; - (id)_nextLostItemIDWithBackoff:(long long *)a0 appLibrary:(id *)a1 now:(long long)a2; - (void)_processDeadItem:(id)a0; - (void)_processLostItem:(id)a0; - (void)_processLostItem:(id)a0 resolvedToPath:(id)a1; - (unsigned long long)_readCoordinationCount; - (void)_recoverFromUnknownParentLoopAtPath:(id)a0; - (void)_refaultItem:(id)a0 withFaultPath:(id)a1; - (void)_resolveDocumentID:(unsigned int)a0 zone:(id)a1; - (void)_scanDirectory:(id)a0 atPath:(id)a1 lookup:(id)a2; - (void)_scanDone:(id)a0 atPath:(id)a1 lookup:(id)a2; - (void)_scheduleCoordinatedReadForItem:(id)a0 path:(id)a1; - (void)_scheduleReadJobWithID:(id)a0; - (BOOL)_slowScanDirectoryAtPath:(id)a0; - (void)_startScanOfRegularAppLibrary:(id)a0; - (void)_startScanOfRelpath:(id)a0; - (BOOL)canRetryJobWithID:(id)a0; - (BOOL)canScheduleMoreJobs; - (void)createReadingJobForItem:(id)a0 state:(int)a1; - (void)deleteReadingJobForItem:(id)a0; - (id)descriptionForItem:(id)a0 context:(id)a1; - (void)endReadCoordinationInAppLibrary:(id)a0; - (void)fseventAtPath:(id)a0 flags:(unsigned int)a1; - (void)fseventAtPath:(id)a0 flags:(unsigned int)a1 options:(unsigned long long)a2 unresolvedLastPathComponent:(id)a3; - (void)fseventAtPath:(id)a0 flags:(unsigned int)a1 unresolvedLastPathComponent:(id)a2; - (void)fseventOnAlias:(id)a0 flags:(unsigned int)a1 lookup:(id)a2; - (void)fseventOnContainer:(id)a0 flags:(unsigned int)a1; - (void)fseventOnDeadPath:(id)a0 item:(id)a1; - (void)fseventOnDirectory:(id)a0 flags:(unsigned int)a1 lookup:(id)a2; - (void)fseventOnDocument:(id)a0 flags:(unsigned int)a1 options:(unsigned long long)a2 lookup:(id)a3; - (void)fseventOnDocument:(id)a0 flags:(unsigned int)a1 options:(unsigned long long)a2 lookup:(id)a3 unresolvedLastPathComponent:(id)a4; - (void)fseventOnRoot:(id)a0 flags:(unsigned int)a1; - (void)fseventOnSymlink:(id)a0 flags:(unsigned int)a1 lookup:(id)a2; - (void)fseventOnURL:(id)a0 dbFlags:(unsigned int)a1; - (void)fseventRecursiveAtRoot:(id)a0 withReason:(id)a1; - (id)itemForCreatedDocumentsDirectory:(id)a0 appLibrary:(id)a1 path:(id)a2; - (id)lookupAndReadItemUnderCoordinationAtURL:(id)a0; - (char)needsLookupReloadAfterHandlingCrossZoneMoveWithItem:(id)a0 relpath:(id)a1; - (void)readUnderCoordinationAtURL:(id)a0; - (BOOL)readUnderCoordinationWithLookup:(id)a0; - (unsigned int)recoverAndReportMissingJobs; - (void)scheduleAppLibraryForLostScan:(id)a0; - (void)setState:(int)a0 forItem:(id)a1; - (BOOL)startReadCoordinationInAppLibrary:(id)a0; - (BOOL)thumbnailChangedForItem:(id)a0 relpath:(id)a1 url:(id)a2 error:(id *)a3; - (void)unscheduleAppLibraryForLostScan:(id)a0; - (BOOL)updateLookupAfterHandlingPathMatchWithFSRoot:(id *)a0 relpath:(id *)a1; @end