@class NSString, NSArray, NSSet, NSMutableDictionary, REUITrainingContext, RERelevanceEngine, NSMutableSet, NSMutableArray, RERelevanceEnginePreferences, _REUIControllerTrainingContext; @protocol REUIRelevanceEngineControllerDelegate; @interface REUIRelevanceEngineController : NSObject <RERelevanceEngineObserver, _REUIControllerTrainingContextDelegate> { NSMutableDictionary *_sectionNameOrdering; NSMutableDictionary *_currentElementStates; struct { unsigned char implementsPerformBatchUpdate : 1; unsigned char implementsReloadElement : 1; unsigned char implementsRemoveElement : 1; unsigned char implementsInsertElement : 1; unsigned char implementsMoveElement : 1; unsigned char implementsIndexPathVisibility : 1; unsigned char implementsBeginRelevanceUpdate : 1; unsigned char implementsFinishedRelevanceUpdate : 1; unsigned char implementsIdentifierBasedReloadElement : 1; } _delegateCallbacks; NSArray *_hiddenIndices; NSMutableSet *_hiddenBundleIdentifiers; NSMutableArray *_pendingOperations; RERelevanceEnginePreferences *_preferences; _REUIControllerTrainingContext *_trainingContext; BOOL _isShowingContentElements; BOOL _performingBatch; } @property (nonatomic) double maximumNegativeDwellTime; @property (nonatomic) double minimumPositiveDwellTime; @property (nonatomic) unsigned long long onScreenElementCount; @property (readonly, nonatomic) RERelevanceEngine *engine; @property (readonly, nonatomic) NSArray *sectionOrder; @property (weak, nonatomic) id<REUIRelevanceEngineControllerDelegate> delegate; @property (readonly, nonatomic) NSSet *disabledDataSources; @property (nonatomic) BOOL allowsLocationUse; @property (nonatomic) BOOL wantsLiveDataSources; @property (nonatomic) BOOL wantsIdealizedContent; @property (readonly, nonatomic) REUITrainingContext *trainingContext; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; - (void)dealloc; - (unsigned long long)numberOfSections; - (void).cxx_destruct; - (void)resignCurrent; - (id)elementAtIndexPath:(id)a0; - (id)_elementAtIndexPath:(id)a0; - (id)_sectionAtIndex:(long long)a0; - (long long)_indexForSection:(id)a0; - (id)_contentAtIndexPath:(id)a0; - (id)actionAtIndexPath:(id)a0; - (id)generateDiffableSnapshot; - (id)identifierForElementAtIndexPath:(id)a0; - (id)indexPathForElementWithIdentifier:(id)a0; - (void)makeCurrent; - (id)metadataForElementWithIdentifier:(id)a0; - (unsigned long long)numberOfItemsInSectionAtIndex:(unsigned long long)a0; - (void)relevanceEngine:(id)a0 didInsertElement:(id)a1 atPath:(id)a2; - (void)relevanceEngine:(id)a0 didMoveElement:(id)a1 fromPath:(id)a2 toPath:(id)a3; - (void)relevanceEngine:(id)a0 didReloadElement:(id)a1 atPath:(id)a2; - (void)relevanceEngine:(id)a0 didRemoveElement:(id)a1 atPath:(id)a2; - (BOOL)relevanceEngine:(id)a0 isElementAtPathVisible:(id)a1; - (void)relevanceEngine:(id)a0 performBatchUpdateBlock:(id /* block */)a1 completion:(id /* block */)a2; - (void)relevanceEngineDidBeginUpdatingRelevance:(id)a0; - (void)relevanceEngineDidFinishUpdatingRelevance:(id)a0; - (void)setDataSource:(id)a0 enabled:(BOOL)a1; - (unsigned long long)_numberOfItemsInSectionAtIndex:(unsigned long long)a0; - (void)_setElement:(id)a0 atIndexPath:(id)a1 hidden:(BOOL)a2; - (id)_contentForElement:(id)a0; - (id)_controllerIndexPathForEngineIndexPath:(id)a0; - (id)_engineIndexPathForControllerIndexPath:(id)a0; - (void)_enumerateEngineElementsInSection:(unsigned long long)a0 withOptions:(unsigned long long)a1 usingBlock:(id /* block */)a2; - (void)_enumerateEngineElementsWithOptions:(unsigned long long)a0 usingBlock:(id /* block */)a1; - (id)_indexPathForElementWithIdentifier:(id)a0; - (id)_indexPathForSectionPath:(id)a0; - (BOOL)_isElementHidden:(id)a0; - (void)_loadNewRelevanceEngine:(id)a0 withCompletion:(id /* block */)a1; - (void)_performBatchUpdateUsingBlock:(id /* block */)a0 completion:(id /* block */)a1; - (void)_performOperations:(id)a0 toSection:(unsigned long long)a1; - (void)_performOrEnqueueOperation:(id)a0; - (BOOL)_sectionHasContent:(id)a0; - (id)_sectionPathForIndexPath:(id)a0; - (id)_sectionSupportingNoContentElements; - (id)contentAtIndexPath:(id)a0; - (void)elemenAtIndexPathDidDisplay:(id)a0; - (void)elementAtIndexPathDidEndDisplay:(id)a0; - (void)elementAtIndexPathWasSelected:(id)a0; - (id)elementIdentifierAtIndexPath:(id)a0; - (BOOL)elementIsAvailable:(id)a0; - (id)elementsOrdered:(unsigned long long)a0 relativeToElement:(id)a1; - (id)initWithRelevanceEngine:(id)a0; - (id)initWithRelevanceEngine:(id)a0 sectionOrder:(id)a1; - (id)interactionTypeForElement:(id)a0; - (BOOL)isDataSourceEnabled:(id)a0; - (id)predictedContentForSectionAtIndex:(unsigned long long)a0 atDate:(id)a1 limit:(long long)a2; - (id)predictedElementsForSectionAtIndex:(unsigned long long)a0 atDate:(id)a1 limit:(long long)a2; - (id)predictionForElementAtIndexPath:(id)a0; @end