@class NSCountedSet, NSMapTable, SBHIconImageCache, SBHLibrarySearchController, ATXAppDirectoryClient, _UILegibilitySettings, SBHAppLibrarySettings, UIView, NSString, SBHIconModel, NSSet, SBRootFolder, SBHIconLibraryQuery, SBFolderIconImageCache, SBHTableViewIconLibrary, SBHScrollableIconViewInteraction, NSHashTable, SBHLibraryCategoryMap, SBHIconTableViewDiffableDataSource; @protocol SBHIconLibraryTableViewControllerLayoutDelegate, SBIconViewProviding, SBIconListLayoutProvider, BSInvalidatable, SBHIconLibraryTableViewControllerObserver; @interface SBHIconLibraryTableViewController : SBHTableViewController <UITableViewDragDelegate, SBIconObserver, SBIconViewObserver, PTSettingsKeyObserver, UITableViewDelegatePrivate, UIGestureRecognizerDelegate, SBHTableViewIconLibraryObserver, SBHScrollableIconViewContaining, SBHLibraryChildViewController, SBHSearchResultsUpdating> { BOOL _showHeaders; BOOL _needsLowQualityAlphaFade; ATXAppDirectoryClient *_appDirectoryClient; SBHScrollableIconViewInteraction *_scrollingInteraction; NSHashTable *_grabbedIconViews; NSHashTable *_observedIcons; NSMapTable *_dragSessionsForIconView; SBHAppLibrarySettings *_settings; BOOL _usesPlatterAppearance; BOOL _hasAppeared; id<BSInvalidatable> _isVisibleLibrarySearchPrewarmAssertion; NSCountedSet *_libraryPrewarmAssertions; } @property (readonly, nonatomic) SBHTableViewIconLibrary *library; @property (readonly, nonatomic) SBHIconLibraryQuery *currentQuery; @property (readonly, nonatomic) SBHIconTableViewDiffableDataSource *dataSource; @property (retain, nonatomic) id<SBIconViewProviding> iconViewProvider; @property (weak, nonatomic) id<SBHIconLibraryTableViewControllerObserver> observer; @property (weak, nonatomic) id<SBHIconLibraryTableViewControllerLayoutDelegate> layoutDelegate; @property (retain, nonatomic) SBHIconModel *iconModel; @property (retain, nonatomic) SBRootFolder *rootFolder; @property (retain, nonatomic) SBHLibraryCategoryMap *libraryCategoryMap; @property (retain, nonatomic) UIView *headerBlurView; @property (nonatomic) BOOL disablesNullQueryExecution; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; @property (retain, nonatomic) SBHIconImageCache *iconImageCache; @property (retain, nonatomic) id<SBIconListLayoutProvider> listLayoutProvider; @property (retain, nonatomic) SBFolderIconImageCache *folderIconImageCache; @property (readonly, copy, nonatomic) NSSet *presentedIconLocations; @property (retain, nonatomic) _UILegibilitySettings *legibilitySettings; @property (weak, nonatomic) SBHLibrarySearchController *searchController; + (Class)tableViewClass; - (void)scrollViewDidEndDecelerating:(id)a0; - (id)tableView:(id)a0 viewForHeaderInSection:(long long)a1; - (id)firstIconViewForIcon:(id)a0 inLocations:(id)a1; - (id)init; - (void)viewWillAppear:(BOOL)a0; - (void)_invalidatePrewarmAssertion:(id)a0; - (void)_refreshLibrary:(id)a0; - (BOOL)isDisplayingIconView:(id)a0; - (void)_reloadAppIcons; - (void)_updateShowHeadersFromQueryResult:(id)a0; - (void)_reloadRowsAtIndexPaths:(id)a0; - (id /* block */)_iconFilter; - (struct UIEdgeInsets { double x0; double x1; double x2; double x3; })visibleContainerInsets; - (void)_reloadVisibleCells; - (id)initWithStyle:(long long)a0; - (void)tableView:(id)a0 willDisplayCell:(id)a1 forRowAtIndexPath:(id)a2; - (void)_setupLibrary; - (double)headerTopOccludingInset; - (void)_notifyDelegatesOfAppLaunchFromSearchController:(id)a0; - (id)_contentUnavailableConfigurationState; - (BOOL)tableView:(id)a0 shouldHaveFullLengthBottomSeparatorForSection:(long long)a1; - (void)_refreshIconIfVisible:(id)a0; - (void)tableView:(id)a0 didSelectRowAtIndexPath:(id)a1; - (void)enumerateScrollableIconViewsUsingBlock:(id /* block */)a0; - (void)_logLaunchOfIcon:(id)a0 atIndexPath:(id)a1; - (id)_visibleSectionIndicies; - (BOOL)tableView:(id)a0 shouldDrawBottomSeparatorForSection:(long long)a1; - (BOOL)_startObservingIcon:(id)a0; - (id)_nullQuery; - (void)viewDidLoad; - (id)tableView:(id)a0 contextMenuConfigurationForRowAtIndexPath:(id)a1 point:(struct CGPoint { double x0; double x1; })a2; - (BOOL)_isViewControllerVisible; - (void)scrollViewDidEndDragging:(id)a0 willDecelerate:(BOOL)a1; - (void)_stopObservingIcon:(id)a0; - (void)scrollViewDidEndScrollingAnimation:(id)a0; - (id)tableView:(id)a0 dragPreviewParametersForRowAtIndexPath:(id)a1; - (void)tableView:(id)a0 dragSessionWillBegin:(id)a1; - (void)_setupObservedIcons; - (void)iconViewDidEndDrag:(id)a0; - (void)iconAccessoriesDidUpdate:(id)a0; - (void)_resetDragSession:(id)a0; - (id)tableView:(id)a0 titleForHeaderInSection:(long long)a1; - (id)acquireLibrarySearchPrewarmAssertionForReason:(id)a0; - (BOOL)gestureRecognizerShouldBegin:(id)a0; - (BOOL)searchControllerShouldReturn:(id)a0; - (id)_visibleIndexPaths; - (void)_handleAlphaFadeForCell:(id)a0 atIndexPath:(id)a1; - (id)_visibleIcons; - (BOOL)isDisplayingIcon:(id)a0 inLocations:(id)a1; - (BOOL)tableView:(id)a0 dragSessionAllowsMoveOperation:(id)a1; - (BOOL)isDisplayingIconView:(id)a0 inLocation:(id)a1; - (BOOL)isDisplayingIcon:(id)a0; - (id)_indexPathForDefaultSearchResult; - (void)enumerateDisplayedIconViewsUsingBlock:(id /* block */)a0; - (id)_dragSessionForIconView:(id)a0; - (void)_handleDidTapEmptyResultsArea:(id)a0; - (id)_iconViewForIcon:(id)a0; - (void)enumerateDisplayedIconViewsForIcon:(id)a0 usingBlock:(id /* block */)a1; - (BOOL)isPresentingIconLocation:(id)a0; - (id)initWithNibName:(id)a0 bundle:(id)a1; - (void)viewWillDisappear:(BOOL)a0; - (BOOL)_isIndexPathVisible:(id)a0; - (id)_searchTextField; - (id)_iconViewForDragSession:(id)a0; - (void)_mapIconView:(id)a0 forDragSession:(id)a1; - (void)settings:(id)a0 changedValueForKey:(id)a1; - (void)_updateSectionHeaderHeight; - (id)firstIconViewForIcon:(id)a0 excludingLocations:(id)a1; - (void)updateSearchResultsForSearchController:(id)a0; - (void).cxx_destruct; - (void)_refreshIconCache; - (id)firstIconViewForIcon:(id)a0; - (void)tableView:(id)a0 dragSessionDidEnd:(id)a1; - (BOOL)_executeQuery:(id)a0; - (void)viewDidAppear:(BOOL)a0; - (void)_configureCell:(id)a0 forIcon:(id)a1; - (id)_processDragItemsForIconView:(id)a0 session:(id)a1; - (void)_iconModelWillReload:(id)a0; - (void)_updateContentUnavailableConfigurationUsingState:(id)a0; - (void)_teardownObservedIcons; - (void)tableView:(id)a0 didEndDisplayingCell:(id)a1 forRowAtIndexPath:(id)a2; - (id)iconViewForIcon:(id)a0 location:(id)a1; - (void)iconLibrary:(id)a0 hasUpdatedQueryResult:(id)a1; - (id)_iconViewAtIndexPath:(id)a0; - (id)_queryForCurrentSearchTextField; - (void)_teardownLibrary; - (void)_unobserveIcon:(id)a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })tableView:(id)a0 frameForSectionIndexGivenProposedFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1; - (void)_handleLowQualityAlphaFade; - (void)viewDidDisappear:(BOOL)a0; - (void)scrollViewDidScroll:(id)a0; - (id)initWithCoder:(id)a0; - (BOOL)_shouldShowNoResultsViewForQueryResult:(id)a0; - (void)scrollViewWillBeginDragging:(id)a0; - (BOOL)_observeIcon:(id)a0; - (id)tableView:(id)a0 itemsForBeginningDragSession:(id)a1 atIndexPath:(id)a2; - (BOOL)isDisplayingIcon:(id)a0 inLocation:(id)a1; - (id)_createIconView; - (void)iconViewWillBeginDrag:(id)a0; @end