@class SBIcon, NSDate, NSArray, NSString, NSSet, SBRotatedIconListModel, NSHashTable, NSMutableDictionary, SBFolder, _SBIconListModelTransaction, NSMutableArray, SBIconIndexMutableList; @protocol SBTreeNode, SBIconListModelDelegate; @interface SBIconListModel : NSObject <SBIconIndexMutableListObserver, SBIconListModelObserver, SBTreeNode, SBIconIndexNode, NSFastEnumeration, NSCopying> { SBIconIndexMutableList *_icons; SBRotatedIconListModel *_rotatedIcons; NSHashTable *_nodeObservers; NSHashTable *_listObservers; NSMutableArray *_recordedRotatedListObserverCallbacks; BOOL _iconStateIsDirty; unsigned short _layoutInvalidations; NSString *_nodeIdentifier; NSMutableDictionary *_fixedIconLocations; } @property (copy, nonatomic) NSDate *hiddenDate; @property (retain, nonatomic) _SBIconListModelTransaction *activeTransaction; @property (nonatomic) unsigned long long activeTransactionCount; @property (readonly, weak, nonatomic) SBFolder *folder; @property (nonatomic) struct SBHIconGridSize { unsigned short columns; unsigned short rows; } gridSize; @property (readonly, nonatomic) unsigned long long numberOfIcons; @property (readonly, nonatomic) unsigned long long numberOfNonPlaceholderIcons; @property (readonly, nonatomic) unsigned long long maxNumberOfIcons; @property (readonly, nonatomic) struct SBHIconGridSizeClassSizes { struct SBHIconGridSize { unsigned short columns; unsigned short rows; } small; struct SBHIconGridSize { unsigned short columns; unsigned short rows; } medium; struct SBHIconGridSize { unsigned short columns; unsigned short rows; } large; struct SBHIconGridSize { unsigned short columns; unsigned short rows; } newsLargeTall; struct SBHIconGridSize { unsigned short columns; unsigned short rows; } extraLarge; } iconGridSizeClassSizes; @property (nonatomic) unsigned long long allowedGridSizeClasses; @property (nonatomic) unsigned long long rotatedLayoutClusterGridSizeClass; @property (nonatomic) BOOL allowsRotatedLayout; @property (nonatomic) unsigned long long iconLayoutBehavior; @property (readonly, nonatomic) unsigned long long numberOfUsedRows; @property (readonly, nonatomic) unsigned long long numberOfUsedColumns; @property (copy, nonatomic) NSArray *icons; @property (readonly, nonatomic) SBIcon *firstIcon; @property (readonly, nonatomic) SBIcon *lastIcon; @property (weak, nonatomic) id<SBIconListModelDelegate> delegate; @property (readonly, nonatomic) unsigned long long numberOfUsedSlots; @property (readonly, nonatomic, getter=isHiddenByUser) BOOL hiddenByUser; @property (nonatomic, getter=isHidden) BOOL hidden; @property (copy, nonatomic) NSSet *focusModeIdentifiers; @property (nonatomic) unsigned long long overflowSlotCount; @property (nonatomic) long long fixedIconLocationBehavior; @property (readonly, nonatomic) BOOL allowsFixedIconLocations; @property (readonly, nonatomic) BOOL hasFixedIconLocations; @property (readonly, nonatomic, getter=isLayoutReversibleWhenRotated) BOOL layoutReversibleWhenRotated; @property (readonly, nonatomic) unsigned long long layoutInvalidations; @property (readonly, copy, nonatomic) NSString *layoutDescription; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; @property (readonly, nonatomic) NSArray *children; @property (weak, nonatomic) id<SBTreeNode> parent; @property (readonly, copy, nonatomic) NSString *uniqueIdentifier; + (long long)defaultFixedIconLocationBehavior; + (void)applyIconLayoutFromGridCellInfo:(id)a0 inGridRange:(struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; })a1 iconOrder:(id)a2 toGridCellInfo:(id)a3 inGridRange:(struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; })a4 iconOrder:(id)a5; + (void)layOutIcons:(id)a0 atIndexes:(id)a1 inGridCellInfo:(id)a2 startingAtGridCellIndex:(unsigned long long)a3 gridSize:(struct SBHIconGridSize { unsigned short x0; unsigned short x1; })a4 gridSizeClassSizes:(struct SBHIconGridSizeClassSizes { struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x2; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x3; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x4; })a5 iconLayoutBehavior:(unsigned long long)a6 referenceIconOrder:(id)a7 fixedIconLocations:(id)a8 options:(unsigned long long)a9; + (id)listModelNodeIdentifierForUniqueIdentifier:(id)a0; + (BOOL)supportsRotatedLayout; + (BOOL)allowsRotatedLayoutByDefault; + (BOOL)isListModelNodeIdentifier:(id)a0; + (id)movedIconsWithOriginalOrder:(id)a0 newOrder:(id)a1; + (id)iconGridCellInfoForIcons:(id)a0 gridSize:(struct SBHIconGridSize { unsigned short x0; unsigned short x1; })a1 gridSizeClassSizes:(struct SBHIconGridSizeClassSizes { struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x2; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x3; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x4; })a2 iconLayoutBehavior:(unsigned long long)a3 referenceIconOrder:(id)a4 fixedIconLocations:(id)a5 options:(unsigned long long)a6; - (BOOL)isIconStateDirty; - (void)removeIcon:(id)a0; - (void)removeAllIcons; - (id)iconAtIndex:(unsigned long long)a0; - (id)addIcons:(id)a0 options:(unsigned long long)a1; - (void)removeIcons:(id)a0; - (void)list:(id)a0 didRemoveContainedNodeIdentifiers:(id)a1; - (id)iconsThatAreAllowedToBeContainedInIcons:(id)a0; - (id)replaceIconAtIndex:(unsigned long long)a0 withIcon:(id)a1 options:(unsigned long long)a2; - (id)_rotatedIconsFromList:(id)a0 gridCellInfoOptions:(unsigned long long)a1; - (id)replaceIcon:(id)a0 withIcons:(id)a1 options:(unsigned long long)a2; - (void)removeIcons:(id)a0 options:(unsigned long long)a1; - (BOOL)isIconFixed:(id)a0 gridCellInfoOptions:(unsigned long long)a1; - (void)markIconStateClean; - (id)initWithFolder:(id)a0 maxIconCount:(unsigned long long)a1; - (id)iconsInGridRow:(unsigned long long)a0 gridCellInfo:(id)a1; - (void)addIconsOfClass:(Class)a0 toSet:(id)a1; - (id)gridCellInfoForIcons:(id)a0 gridSize:(struct SBHIconGridSize { unsigned short x0; unsigned short x1; })a1 referenceIconOrder:(id)a2 fixedIconLocations:(id)a3 options:(unsigned long long)a4; - (id)replaceIcon:(id)a0 withIcon:(id)a1 options:(unsigned long long)a2; - (BOOL)addIcon:(id)a0; - (id)changeGridSizeClassOfContainedIcon:(id)a0 toGridSizeClass:(unsigned long long)a1 gridCellInfoOptions:(unsigned long long)a2; - (unsigned long long)gridCellIndexForIconIndex:(unsigned long long)a0 gridCellInfoOptions:(unsigned long long)a1; - (void)markIconStateDirty; - (id)initWithUniqueIdentifier:(id)a0 folder:(id)a1 gridSize:(struct SBHIconGridSize { unsigned short x0; unsigned short x1; })a2 gridSizeClassSizes:(struct SBHIconGridSizeClassSizes { struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x2; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x3; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x4; })a3; - (unsigned long long)largestClusteringSizeClassWithOptions:(unsigned long long)a0; - (id)addIcons:(id)a0; - (BOOL)isFull; - (id)iconsOfClass:(Class)a0; - (void)_beginDelayingForwardingObserverCallbacksFromRotatedListWithOptions:(unsigned long long)a0; - (unsigned long long)bestGridCellIndexForInsertingIcon:(id)a0 belowIconAtGridCellIndex:(unsigned long long)a1 gridCellInfoOptions:(unsigned long long)a2; - (BOOL)directlyContainsIconPassingTest:(id /* block */)a0; - (id)init; - (void)_notifyListObserversDidMoveIcon:(id)a0; - (void)removeLastIcon; - (void)moveContainedIcon:(id)a0 afterIcon:(id)a1 gridCellInfoOptions:(unsigned long long)a2 mutationOptions:(unsigned long long)a3; - (void)clearParentNodeForIconIfNecessary:(id)a0; - (unsigned long long)gridCellIndexAboveIconAtIndex:(unsigned long long)a0 options:(unsigned long long)a1; - (void)performChangesByClusteringForSizeClass:(unsigned long long)a0 behavior:(unsigned long long)a1 withGridCellInfoOptions:(unsigned long long)a2 block:(id /* block */)a3; - (id)setIcons:(id)a0 gridCellInfoOptions:(unsigned long long)a1 mutationOptions:(unsigned long long)a2; - (struct SBIconCoordinate { long long x0; long long x1; })coordinateForGridCellIndex:(unsigned long long)a0 gridCellInfo:(id)a1; - (void)moveContainedIcon:(id)a0 toIndex:(unsigned long long)a1 options:(unsigned long long)a2; - (BOOL)isIcon:(id)a0 fixedAtGridCellIndex:(unsigned long long)a1 gridCellInfoOptions:(unsigned long long)a2; - (struct SBIconListModelRotationReorderingInfo { BOOL x0; unsigned long long x1; unsigned long long x2; BOOL x3; })_rotationReorderingInfoWithClusterSizeClass:(unsigned long long)a0 gridCellInfoOptions:(unsigned long long)a1; - (void)_reorderIconsWithClusterSizeClass:(unsigned long long)a0 forRotationWithReorderingInfo:(struct SBIconListModelRotationReorderingInfo { BOOL x0; unsigned long long x1; unsigned long long x2; BOOL x3; })a1 gridCellInfoOptions:(unsigned long long)a2; - (void)performChangesByPreservingPositionsOfIconsLargerThanSizeClass:(unsigned long long)a0 block:(id /* block */)a1; - (unsigned long long)gridCellIndexBelowIconAtIndex:(unsigned long long)a0 options:(unsigned long long)a1; - (id)replaceIcon:(id)a0 withIcon:(id)a1 gridCellInfoOptions:(unsigned long long)a2 mutationOptions:(unsigned long long)a3; - (unsigned long long)indexOfDirectlyContainedIconPassingTest:(id /* block */)a0; - (void)sortUsingSelector:(SEL)a0; - (id)objectWithUniqueIdentifier:(id)a0; - (id)fixedIconLocations; - (id)insertIcons:(id)a0 atIndex:(unsigned long long)a1 options:(unsigned long long)a2; - (id)insertIcon:(id)a0 beforeIcon:(id)a1 gridCellInfoOptions:(unsigned long long)a2 mutationOptions:(unsigned long long)a3; - (id)repairModelByEliminatingGapsInIcons:(id)a0 avoidingIcons:(id)a1; - (void)setHidden:(BOOL)a0 byUser:(BOOL)a1 hiddenDate:(id)a2; - (BOOL)isFullIncludingPlaceholders; - (void)removeIconFromOtherPositionsInHierarchy:(id)a0; - (BOOL)containsNodeIdentifier:(id)a0; - (id)iconsForGridRange:(struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; })a0 gridCellInfoOptions:(unsigned long long)a1; - (id)iconGridCellInfoBySimulatingInsertionOfIcons:(id)a0 ignoringPlaceholders:(BOOL)a1 gridCellInfoOptions:(unsigned long long)a2 iconOrder:(id *)a3; - (void)saveOnlyRequiredIconLocationsAsFixedIfRequired; - (id)succinctDescriptionBuilder; - (void)swapContainedIcon:(id)a0 withContainedIcon:(id)a1 gridCellInfoOptions:(unsigned long long)a2 mutationOptions:(unsigned long long)a3; - (void)enumerateFolderIconsUsingBlock:(id /* block */)a0; - (struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; })gridRangeForIcon:(id)a0 gridCellInfo:(id)a1; - (void)_notifyListObserver:(id)a0 didAddIcons:(id)a1 didRemoveIcons:(id)a2 movedIcons:(id)a3 didReplaceIcon:(id)a4 withIcon:(id)a5; - (BOOL)containsWidgetIconWithExtensionBundleIdentifier:(id)a0; - (unsigned long long)bestGridCellIndexForInsertingIcon:(id)a0 afterIconAtGridCellIndex:(unsigned long long)a1 gridCellInfo:(id)a2; - (BOOL)isAllowedToContainIcons:(id)a0; - (id)_reorderedIconsWithClusterSizeClass:(unsigned long long)a0 forRotationWithReorderingInfo:(struct SBIconListModelRotationReorderingInfo { BOOL x0; unsigned long long x1; unsigned long long x2; BOOL x3; })a1 gridCellInfoOptions:(unsigned long long)a2; - (void)enumerateIconsWithOptions:(unsigned long long)a0 usingBlock:(id /* block */)a1; - (id)insertIcon:(id)a0 atGridCellIndex:(unsigned long long)a1 gridCellInfoOptions:(unsigned long long)a2 mutationOptions:(unsigned long long)a3; - (id)prependIcon:(id)a0 options:(unsigned long long)a1; - (void)didRemoveIcon:(id)a0 options:(unsigned long long)a1; - (unsigned long long)bestGridCellIndexForInsertingIconOfGridSizeClass:(unsigned long long)a0 atGridCellIndex:(unsigned long long)a1 gridCellInfo:(id)a2; - (BOOL)directlyContainsIcon:(id)a0; - (void)addNodeObserver:(id)a0; - (void)setFixedIconLocations:(id)a0 options:(unsigned long long)a1; - (BOOL)addIcon:(id)a0 options:(unsigned long long)a1; - (BOOL)isValidGridCellIndex:(unsigned long long)a0 options:(unsigned long long)a1; - (unsigned long long)gridCellIndexAboveIconAtIndex:(unsigned long long)a0 gridCellInfo:(id)a1; - (id)_iconAtIndex:(unsigned long long)a0; - (void)_reorderIconsAfterUnclusteringWithClusterSizeClass:(unsigned long long)a0 forRotationWithReorderingInfo:(struct SBIconListModelRotationReorderingInfo { BOOL x0; unsigned long long x1; unsigned long long x2; BOOL x3; })a1 gridCellInfoOptions:(unsigned long long)a2; - (unsigned long long)gridCellIndexBelowIconAtIndex:(unsigned long long)a0 gridCellInfo:(id)a1; - (struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; })gridRangeForIcon:(id)a0 gridCellInfoOptions:(unsigned long long)a1; - (struct SBHIconGridSize { unsigned short x0; unsigned short x1; })gridSizeForGridSizeClass:(unsigned long long)a0; - (id)gridCellInfoForIcons:(id)a0 gridSize:(struct SBHIconGridSize { unsigned short x0; unsigned short x1; })a1 referenceIconOrder:(id)a2 options:(unsigned long long)a3; - (id)indexPathsForContainedNodeIdentifier:(id)a0 prefixPath:(id)a1; - (id)iconAtCoordinate:(struct SBIconCoordinate { long long x0; long long x1; })a0 gridCellInfoOptions:(unsigned long long)a1; - (BOOL)requiresSomeFixedIconLocations; - (unsigned long long)_iconIndexForMovingIcon:(id)a0 toGridCellIndex:(unsigned long long)a1 gridCellInfo:(id)a2; - (id)_rotatedIconListModelIfApplicable; - (id)gridCellInfoForIcons:(id)a0 options:(unsigned long long)a1; - (void)_coalesceChangesWithRequestID:(id)a0 changeBlock:(id /* block */)a1; - (id)fixedIconLocationsWithGridCellInfoOptions:(unsigned long long)a0; - (void)ancestryDidChange; - (BOOL)getIconGridRange:(struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; } *)a0 forGridCellIndex:(unsigned long long)a1 gridCellInfo:(id)a2; - (void)removeFixedIconLocationForIcon:(id)a0; - (unsigned long long)indexForIcon:(id)a0; - (id)_rotatedIconsIfApplicable; - (void)_makeRotatedIconsListModelWithIcons:(id)a0 options:(unsigned long long)a1; - (void)list:(id)a0 didAddContainedNodeIdentifiers:(id)a1; - (void)setFixedLocation:(unsigned long long)a0 forIcon:(id)a1; - (id)nodesAlongIndexPath:(id)a0 consumedIndexes:(unsigned long long)a1; - (unsigned long long)firstFreeGridCellIndexOfRangeOfSize:(struct SBHIconGridSize { unsigned short x0; unsigned short x1; })a0 gridCellInfoOptions:(unsigned long long)a1; - (void)moveContainedIcon:(id)a0 belowIcon:(id)a1 gridCellInfoOptions:(unsigned long long)a2 mutationOptions:(unsigned long long)a3; - (void)removeIconAtIndex:(unsigned long long)a0; - (id)nodeIdentifier; - (void)performChangesByPreservingOrderOfDefaultSizedIcons:(id /* block */)a0; - (void)iconList:(id)a0 willAddIcon:(id)a1; - (void)removeAllFixedIconLocations; - (id)iconAtGridCellIndex:(unsigned long long)a0 gridCellInfo:(id)a1; - (id)descriptionBuilderWithMultilinePrefix:(id)a0; - (struct SBHIconGridSize { unsigned short x0; unsigned short x1; })gridSizeWithOptions:(unsigned long long)a0; - (id)changeGridSize:(struct SBHIconGridSize { unsigned short x0; unsigned short x1; })a0 options:(unsigned long long)a1; - (BOOL)isAllowedToContainIcon:(id)a0; - (id)_updateModelByRepairingGapsIfNecessaryAvoidingIcons:(id)a0; - (id)iconsWithGridCellInfoOptions:(unsigned long long)a0; - (void)_setRotatedIcons:(id)a0 clearRotatedFixedIconLocations:(BOOL)a1; - (void)_moveAllNonDefaultSizedIconsToBeginning; - (void)willRemoveIcon:(id)a0 options:(unsigned long long)a1; - (void)removeNodeObserver:(id)a0; - (void)_ensureRotatedIcons; - (unsigned long long)firstGridCellIndexOfRangeOfGridSizeClass:(unsigned long long)a0 withoutFixedIconsNearGridRange:(struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; })a1 gridCellInfo:(id)a2; - (id)iconsInGridColumnRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a0 gridCellInfo:(id)a1; - (void)_notifyListObserversWillAddIcon:(id)a0; - (unsigned long long)gridCellIndexForIcon:(id)a0 gridCellInfoOptions:(unsigned long long)a1; - (BOOL)isEmptyIgnoringPlaceholders; - (void)_notifyListObserversUsingRecordedCallback:(id)a0; - (id)_rotatedIcons; - (id)nodeDescriptionWithPrefix:(id)a0; - (id)parentNodeForChildren; - (void)setRotatedFixedIconLocations:(id)a0 options:(unsigned long long)a1; - (void)sortUsingComparator:(id /* block */)a0; - (id)_rotatedIconListModelIfAllowed; - (void)sortByIconGridSizeAreaWithGridCellInfoOptions:(unsigned long long)a0; - (id)containedNodeIdentifiers; - (void)setIconOrderFromGridCellInfo:(id)a0; - (unsigned long long)willAddIcon:(id)a0 atIndex:(unsigned long long)a1 options:(unsigned long long)a2; - (void)moveContainedIcon:(id)a0 aboveIcon:(id)a1 gridCellInfoOptions:(unsigned long long)a2 mutationOptions:(unsigned long long)a3; - (unsigned long long)bestGridCellIndexForInsertingIcon:(id)a0 belowIconAtGridCellIndex:(unsigned long long)a1 gridCellInfo:(id)a2; - (void)_moveDefaultSizedIconsOfCountIntoContiguousLeadingNonDefaultSizedIcons:(unsigned long long)a0; - (BOOL)isValidGridRange:(struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; })a0 options:(unsigned long long)a1; - (void)didAddIcon:(id)a0 options:(unsigned long long)a1; - (void)_notifyListObservers:(id /* block */)a0; - (void)removeFixedIconLocationsForIconsInGridRange:(struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; })a0 gridCellInfo:(id)a1; - (void)_notifyListObserversDidRemoveIcon:(id)a0; - (unsigned long long)bestGridCellIndexForInsertingIcon:(id)a0 atGridCellIndex:(unsigned long long)a1 gridCellInfoOptions:(unsigned long long)a2; - (id)gridCellInfoForIcons:(id)a0 gridSize:(struct SBHIconGridSize { unsigned short x0; unsigned short x1; })a1 options:(unsigned long long)a2; - (void)_notifyListObserversWillRemoveIcon:(id)a0; - (id)fixedIconsInGridRange:(struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; })a0 gridCellInfo:(id)a1; - (unsigned long long)indexForIconWithIdentifier:(id)a0; - (BOOL)directlyContainsNonDefaultSizeClassIcon; - (unsigned long long)bestGridCellIndexForInsertingIcon:(id)a0 aboveIconAtGridCellIndex:(unsigned long long)a1 gridCellInfoOptions:(unsigned long long)a2; - (BOOL)allowsAddingIcons:(id)a0 ignoringPlaceholders:(BOOL)a1; - (id)descriptionWithMultilinePrefix:(id)a0; - (id)_checkAndRemoveBouncedIconsAfterChangeToIcons:(id)a0 ignoringTrailingIconCheck:(BOOL)a1 options:(unsigned long long)a2; - (void)sortByLayoutOrderWithGridCellInfoOptions:(unsigned long long)a0; - (id)_clusterIconsForSizeClass:(unsigned long long)a0 behavior:(unsigned long long)a1 gridCellInfoOptions:(unsigned long long)a2; - (BOOL)directlyContainsIconOfClass:(Class)a0; - (id)relocateFixedIconsInGridRange:(struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; })a0 gridCellInfoOptions:(unsigned long long)a1; - (void)_unclusterIcons:(id)a0 ofSizeClass:(unsigned long long)a1 baseGridCellInfoOptions:(unsigned long long)a2 gridCellInfoProvider:(id /* block */)a3; - (void)_notifyListObserversDidAddIcons:(id)a0 didRemoveIcons:(id)a1 movedIcons:(id)a2 didReplaceIcon:(id)a3 withIcon:(id)a4; - (BOOL)isIcon:(id)a0 fixedAtGridCellIndex:(unsigned long long)a1; - (id)iconsInRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a0; - (id)iconAtGridCellIndex:(unsigned long long)a0 gridCellInfoOptions:(unsigned long long)a1; - (void)addIconsPassingTest:(id /* block */)a0 toSet:(id)a1; - (id)_clusterIconsForSizeClass:(unsigned long long)a0 behavior:(unsigned long long)a1 gridCellInfoProvider:(id /* block */)a2; - (BOOL)isGridLayoutValid; - (BOOL)directlyContainsIconWithIdentifier:(id)a0; - (void)_setRotatedIcons:(id)a0; - (BOOL)allowsAddingIcon:(id)a0 ignoringPlaceholders:(BOOL)a1; - (id)rotatedFixedIconLocations; - (id)allowedIconsForIcons:(id)a0; - (id)gridCellInfoForIcons:(id)a0 referenceIconOrder:(id)a1 options:(unsigned long long)a2; - (BOOL)_moveContainedIconWithinAffectedQuadsIfNecessary:(id)a0 toGridCellIndex:(unsigned long long)a1 gridCellInfoOptions:(unsigned long long)a2 mutationOptions:(unsigned long long)a3; - (void)setFixedLocation:(unsigned long long)a0 forIcon:(id)a1 options:(unsigned long long)a2; - (void).cxx_destruct; - (void)_updateRotatedIconsWithOptions:(unsigned long long)a0 usingBlock:(id /* block */)a1; - (void)addListObserver:(id)a0; - (void)saveCurrentIconLocationsAsFixed; - (BOOL)hasFixedIconInGridRange:(struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; })a0 gridCellInfo:(id)a1; - (void)setFixedIconLocations:(id)a0; - (id)insertIcon:(id)a0 atIndex:(unsigned long long)a1 options:(unsigned long long)a2; - (unsigned long long)firstFreeGridCellIndexOfRangeOfSizeClass:(unsigned long long)a0 gridCellInfoOptions:(unsigned long long)a1; - (id)initWithIconListModel:(id)a0 copyLeafIcons:(BOOL)a1; - (struct _NSRange { unsigned long long x0; unsigned long long x1; })rangeOfDirectlyContainedIconsInRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a0 passingTest:(id /* block */)a1; - (unsigned long long)gridCellIndexForCoordinate:(struct SBIconCoordinate { long long x0; long long x1; })a0 gridCellInfoOptions:(unsigned long long)a1; - (unsigned long long)bestGridCellIndexForInsertingIcon:(id)a0 atGridCellIndex:(unsigned long long)a1; - (unsigned long long)bestGridCellIndexForInsertingIcon:(id)a0 aboveIconAtGridCellIndex:(unsigned long long)a1 gridCellInfo:(id)a2; - (void)markIconStateDirtyWithOptions:(unsigned long long)a0; - (id)reversedOrderLayoutDescription; - (id)insertIconWhilePreservingQuads:(id)a0 toGridCellIndex:(unsigned long long)a1 gridCellInfoOptions:(unsigned long long)a2 mutationOptions:(unsigned long long)a3; - (BOOL)isInsertionFixedForIcon:(id)a0 options:(unsigned long long)a1; - (id)_rotatedIconOrderIfApplicable; - (id)initWithFolder:(id)a0 gridSize:(struct SBHIconGridSize { unsigned short x0; unsigned short x1; })a1 gridSizeClassSizes:(struct SBHIconGridSizeClassSizes { struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x2; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x3; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x4; })a2; - (id)insertIcon:(id)a0 afterIcon:(id)a1 gridCellInfoOptions:(unsigned long long)a2 mutationOptions:(unsigned long long)a3; - (void)_unclusterIcons:(id)a0 ofSizeClass:(unsigned long long)a1 gridCellInfoOptions:(unsigned long long)a2; - (id)succinctDescription; - (void)removeIcon:(id)a0 options:(unsigned long long)a1; - (unsigned long long)numberOfFreeSlots; - (void)swapFixedIconLocationForReplacedIcon:(id)a0 withReplacementIcon:(id)a1; - (id)gridCellInfoForGridSize:(struct SBHIconGridSize { unsigned short x0; unsigned short x1; })a0 options:(unsigned long long)a1; - (void)updateParentNodeForIconIfNecessary:(id)a0; - (BOOL)isGridLayoutValidWithOptions:(unsigned long long)a0; - (void)saveOnlyRequiredIconLocationsAsFixed; - (BOOL)addIcon:(id)a0 gridCellInfoOptions:(unsigned long long)a1 mutationOptions:(unsigned long long)a2; - (void)removeIcon:(id)a0 gridCellInfoOptions:(unsigned long long)a1 mutationOptions:(unsigned long long)a2; - (BOOL)canBounceIcon:(id)a0; - (BOOL)allowsAddingIcon:(id)a0; - (void)listDidMoveNodes:(id)a0; - (id)directlyContainedIconWithIdentifier:(id)a0; - (void)sortByLayoutOrderWithGridCellInfo:(id)a0; - (id)_targetListForGridCellInfoOptions:(unsigned long long)a0; - (id)insertIcon:(id)a0 atCoordinate:(struct SBIconCoordinate { long long x0; long long x1; })a1 gridCellInfoOptions:(unsigned long long)a2 mutationOptions:(unsigned long long)a3; - (id)iconsForGridRange:(struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; })a0 gridCellInfo:(id)a1; - (void)_updateRotatedIconsUsingBlock:(id /* block */)a0; - (BOOL)_canClusterIconsUsingSizeClass:(unsigned long long)a0; - (id)iconsAtIndexes:(id)a0; - (void)setRotatedFixedIconLocations:(id)a0; - (void)_configureRotatedIconsListModel:(id)a0; - (id)directlyContainedIconsPassingTest:(id /* block */)a0; - (unsigned long long)gridCellIndexForIcon:(id)a0 gridCellInfo:(id)a1; - (unsigned long long)bestGridCellIndexForInsertingIcon:(id)a0 afterIconAtGridCellIndex:(unsigned long long)a1 gridCellInfoOptions:(unsigned long long)a2; - (void)enumerateIconsUsingBlock:(id /* block */)a0; - (id)allowedIconsForByReplacingContentsWithIcons:(id)a0; - (id)setIconsFromIconListModel:(id)a0; - (BOOL)_moveContainedIconLargerThanQuadsIfNecessary:(id)a0 toGridCellIndex:(unsigned long long)a1 gridCellInfoOptions:(unsigned long long)a2 mutationOptions:(unsigned long long)a3; - (BOOL)isValidGridRange:(struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; })a0 gridCellInfo:(id)a1; - (void)iconListIconStateDidDirty:(id)a0; - (void)moveContainedIcon:(id)a0 beforeIcon:(id)a1 gridCellInfoOptions:(unsigned long long)a2 mutationOptions:(unsigned long long)a3; - (void)_rotatedList:(id)a0 didRecordObserverCallback:(id)a1; - (void)removeFixedIconLocationsForIconsInGridRange:(struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; })a0 gridCellInfoOptions:(unsigned long long)a1; - (void)setIconOrderFromGridCellInfo:(id)a0 referenceIconOrder:(id)a1; - (unsigned long long)countOfDirectlyContainedIconsPassingTest:(id /* block */)a0; - (unsigned long long)firstFreeSlotIndex; - (struct SBIconCoordinate { long long x0; long long x1; })coordinateForGridCellIndex:(unsigned long long)a0 gridCellInfoOptions:(unsigned long long)a1; - (void)_notifyListObserversDidReplaceIcon:(id)a0 withIcon:(id)a1; - (void)_notifyListObserversDidAddIcon:(id)a0; - (BOOL)isIconFixed:(id)a0; - (id)filteredIncomingFixedIconLocationsIfNecessary:(id)a0; - (unsigned long long)countByEnumeratingWithState:(struct { unsigned long long x0; id *x1; unsigned long long *x2; unsigned long long x3[5]; } *)a0 objects:(id *)a1 count:(unsigned long long)a2; - (id)layoutDescriptionWithOptions:(unsigned long long)a0; - (id)allowedIconsForIcons:(id)a0 ignoringPlaceholders:(BOOL)a1; - (void)updateForFocusModeActivated:(BOOL)a0 wantsListVisible:(BOOL)a1; - (id)rotatedLayoutDescription; - (unsigned long long)bestGridCellIndexForInsertingIcon:(id)a0 atGridCellIndex:(unsigned long long)a1 gridCellInfo:(id)a2; - (BOOL)allowsAddingIconCount:(unsigned long long)a0; - (id)insertIcon:(id)a0 relativeToIcon:(id)a1 positionDelta:(long long)a2 gridCellInfoOptions:(unsigned long long)a3 mutationOptions:(unsigned long long)a4; - (void)removeIconAtIndex:(unsigned long long)a0 options:(unsigned long long)a1; - (id)insertIcon:(id)a0 atIndex:(unsigned long long)a1; - (BOOL)hasFixedIconInGridRange:(struct SBHIconGridRange { unsigned long long x0; struct SBHIconGridSize { unsigned short x0; unsigned short x1; } x1; })a0 gridCellInfoOptions:(unsigned long long)a1; - (unsigned long long)bestGridCellIndexForInsertingIcon:(id)a0 gridCellInfo:(id)a1; - (unsigned long long)bestGridCellIndexForInsertingIcon:(id)a0 gridCellInfoOptions:(unsigned long long)a1; - (void)_endDelayingForwardingObserverCallbacksFromRotatedList; - (void)_changeFolderDuringCopy:(id)a0; - (BOOL)allowsAddingIcons:(id)a0; - (id)iconsAtGridCellIndexes:(id)a0 gridCellInfo:(id)a1; - (BOOL)isGridLayoutValid:(id)a0; - (BOOL)isValidGridCellIndex:(unsigned long long)a0 gridCellInfo:(id)a1; - (id)directlyContainedIconPassingTest:(id /* block */)a0; - (id)iconsInGridColumn:(unsigned long long)a0 gridCellInfo:(id)a1; - (id)allowedGapsLayoutDescription; - (id)iconAtCoordinate:(struct SBIconCoordinate { long long x0; long long x1; })a0 gridCellInfo:(id)a1; - (BOOL)areAllIconsFixed; - (BOOL)isInsertionFixedForIconGridSizeClass:(unsigned long long)a0 options:(unsigned long long)a1; - (long long)_moveIcon:(id)a0 byClusteringForSizeClass:(unsigned long long)a1 toGridCellIndex:(unsigned long long)a2 gridCellInfoOptions:(unsigned long long)a3; - (unsigned long long)gridCellIndexForIconIndex:(unsigned long long)a0 gridCellInfo:(id)a1; - (unsigned long long)firstFreeGridCellIndexWithOptions:(unsigned long long)a0; - (void)removeListObserver:(id)a0; - (id)_updateModelByRepairingGapsIfNecessary; - (BOOL)wantsRotatedGridForOptions:(unsigned long long)a0; - (id)indexesOfDirectlyContainedIconsPassingTest:(id /* block */)a0; - (id)copyWithZone:(struct _NSZone { } *)a0; - (unsigned long long)fixedLocationForIcon:(id)a0; - (unsigned long long)rotatedGridCellInfoOptions:(unsigned long long)a0; - (id)gridCellInfoWithOptions:(unsigned long long)a0; - (id)setIcons:(id)a0 gridCellInfoOptions:(unsigned long long)a1; - (void)_notifyListObserversDidAddIcons:(id)a0 didRemoveIcons:(id)a1 movedIcons:(id)a2; - (BOOL)directlyContainsLeafIconWithIdentifier:(id)a0; - (void)removeFixedIconLocationsForIcons:(id)a0; - (id)_rotatedIconListModel; - (struct SBHIconGridSize { unsigned short x0; unsigned short x1; })rotatedGridSizeWithOptions:(unsigned long long)a0; - (unsigned long long)removeIconFromOtherPositionsInHierarchy:(id)a0 forInsertingAtIndex:(unsigned long long)a1 removeIfAlreadyContained:(BOOL)a2; - (id)moveContainedIcon:(id)a0 toGridCellIndex:(unsigned long long)a1 gridCellInfoOptions:(unsigned long long)a2 mutationOptions:(unsigned long long)a3; - (BOOL)_validateIconsInArray:(id)a0 matchArray:(id)a1; - (void)_invalidateLayoutWithGridCellInfoOptions:(unsigned long long)a0 mutationOptions:(unsigned long long)a1; - (id)lastDirectlyContainedLeafIconWithApplicationBundleIdentifier:(id)a0; - (BOOL)isEmpty; - (unsigned long long)gridCellIndexForCoordinate:(struct SBIconCoordinate { long long x0; long long x1; })a0 gridCellInfo:(id)a1; @end