@class NSDate, NSString, NSArray, NSPredicate, FPAppRegistry, NSMutableDictionary, FPItemID, _FPItemList, NSObject, NSMutableSet, FPPacer; @protocol FPItemCollectionMinimalDelegate, FPItemCollectionIndexPathBasedDelegate, FPCollectionDataSource, OS_dispatch_source, OS_dispatch_queue, FPItemCollectionItemIDBasedDelegate; @interface FPItemCollection : NSObject { _FPItemList *_currentItems; NSObject *_itemAccessQueue; NSObject *_restartTimer; NSDate *_lastInvalidationOnError; unsigned long long _invalidationOnErrorCount; NSMutableDictionary *_updatedItemsByIdentifiers; NSMutableSet *_deletedItemsIdentifiers; NSMutableDictionary *_formerItemsIdentifiers; NSMutableDictionary *_pendingItemsStitching; NSMutableDictionary *_pendingItemsFields; BOOL _shouldResort; BOOL _regathering; long long _regatheringGeneration; long long _flushableRegatheringGeneration; BOOL _shouldRetryOnceAfterCrash; NSPredicate *_itemFilteringPredicate; FPAppRegistry *_appRegistry; id _itemIDBasedDelegate; id _indexPathBasedDelegate; } @property (readonly) NSString *providerIdentifier; @property (readonly) NSString *domainIdentifier; @property (readonly) FPItemID *enumeratedItemID; @property (readonly, nonatomic) id dataSource; @property (nonatomic, getter=isGathering) BOOL gathering; @property (retain, nonatomic) NSPredicate *additionalItemFilteringPredicate; @property (nonatomic) BOOL observing; @property (readonly, nonatomic) NSObject *updateQueue; @property (readonly, nonatomic) FPPacer *updatePacer; @property (retain, nonatomic) NSPredicate *itemFilteringPredicate; @property (weak, nonatomic) id delegate; @property (readonly, nonatomic, getter=isImmutable) BOOL immutable; @property (readonly, nonatomic) BOOL hasMoreUpdates; @property (nonatomic) BOOL showHiddenFiles; @property (readonly, nonatomic) NSArray *sortDescriptors; @property (retain, nonatomic) NSObject *workingQueue; @property (readonly, nonatomic) NSArray *items; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; @property (readonly) unsigned long long lastForcedUpdate; + (void)initialize; + (id)_bouncedItem:(id)a0 withinItems:(id)a1; + (id)activeCollections; + (void)addActiveCollection:(id)a0; + (void)consumeUpdates:(id)a0 deletes:(id)a1; + (BOOL)isEnumerationSuspended; + (void)refreshActiveCollectionsForDecorationChange; + (void)removeActiveCollection:(id)a0; + (void)replacePlaceholders:(id)a0 withActualItems:(id)a1 deletedIDs:(id)a2; + (void)resumeVendorEnumeration; + (void)suspendVendorEnumeration; - (void)startObserving; - (void)_startObserving; - (void)stopObserving; - (id)init; - (void)dealloc; - (long long)numberOfItems; - (id)itemAtIndexPath:(id)a0; - (void)resumeUpdates; - (void).cxx_destruct; - (long long)_numberOfItems; - (void)reachabilityMonitor:(id)a0 didChangeReachabilityStatusTo:(BOOL)a1; - (void)suspendUpdates; - (unsigned long long)_indexOfItemID:(id)a0; - (id)initWithPacing:(BOOL)a0; - (void)updateRootItem:(id)a0; - (BOOL)__isUsingDataSource:(id)a0; - (void)_cancelStartTime; - (void)_didEncounterError:(id)a0 forObservationID:(unsigned long long)a1; - (void)_flushPendingUpdates; - (unsigned long long)_indexOfItem:(id)a0; - (BOOL)_isUsingDataSource:(id)a0; - (id)_itemsMutableCopy; - (void)_receivedBatchWithUpdatedItems:(id)a0 deletedItemsIdentifiers:(id)a1; - (void)_receivedBatchWithUpdatedItems:(id)a0 deletedItemsIdentifiers:(id)a1 dropForReplacedPlaceholders:(BOOL)a2; - (void)_receivedBatchWithUpdatedItems:(id)a0 deletedItemsIdentifiers:(id)a1 forceFlush:(BOOL)a2 dropForReplacedPlaceholders:(BOOL)a3; - (id)_reorderWithPlaceholdersLast:(id)a0; - (void)_replaceContentsWithVendorItems:(id)a0; - (void)_restartObservation; - (void)_restartObservationWithReason:(id)a0; - (void)_setObserving:(BOOL)a0; - (void)_startRegathering; - (id)_t_items; - (void)_updateObservedItem:(id)a0; - (id)computeIndexPathsBasedDiffsWithOldItems:(id)a0 futureItems:(id)a1; - (id)computeItemIDBasedDiffs; - (id)createDataSourceWithSortDescriptors:(id)a0; - (void)dataSource:(id)a0 receivedUpdatedItems:(id)a1 deletedItems:(id)a2 hasMoreChanges:(BOOL)a3; - (void)dataSource:(id)a0 replaceContentsWithItems:(id)a1 hasMoreChanges:(BOOL)a2; - (void)dataSource:(id)a0 wasInvalidatedWithError:(id)a1; - (BOOL)dataSourceShouldAlwaysReplaceContents:(id)a0; - (void)forceRefreshOfItemWithItemID:(id)a0; - (id)indexPathFromIndex:(long long)a0; - (id)indexPathsFromIndexSet:(id)a0; - (BOOL)isCollectionValidForItem:(id)a0; - (BOOL)isHiddenItem:(id)a0; - (BOOL)isRegatheringAfterSignal; - (BOOL)isRootItem:(id)a0; - (void)receivedBatchWithUpdatedItems:(id)a0 deletedItemsIdentifiers:(id)a1; - (void)receivedBatchWithUpdatedItems:(id)a0 deletedItemsIdentifiers:(id)a1 hasMoreChanges:(BOOL)a2; - (BOOL)recoverFromError:(id)a0; - (void)reorderItemsWithSortDescriptors:(id)a0; - (void)replacePlaceholders:(id)a0 withActualItems:(id)a1 deletedIDs:(id)a2; - (id)scopedSearchQuery; - (void)sendIndexPathBasedDiffs:(id)a0; - (void)sendItemIDBasedDiffs:(id)a0; - (BOOL)shouldConsiderUsingPlaceholder:(id)a0 forItem:(id)a1 skipForwardFormerID:(BOOL *)a2; - (BOOL)shouldRetryError:(id)a0; - (void)startObservingWithEnumerationProperties:(id)a0; @end