luxlabs header browser preview


@class ReorderingAutoscroller, UIVisualEffectView, UITapGestureRecognizer, NSMutableArray, UIView, PinnedTabsOverflowButton, NSString, SFTabHoverPreviewController, UIDragInteraction, NSIndexSet, UIScrollView, UIHoverGestureRecognizer, NSArray, UIPanGestureRecognizer;
@protocol TabBarDelegate;

@interface TabBar : UIView <UIGestureRecognizerDelegate, UIScrollViewDelegate, TabCollectionView, TabCollectionViewDragDropSupport> {
    NSMutableArray *_tabBarItemViewReuseStack;
    UIScrollView *_scrollView;
    UITapGestureRecognizer *_tapRecognizer;
    unsigned long long _visiblePinnedItemCount;
    PinnedTabsOverflowButton *_pinnedOverflowButton;
    NSIndexSet *_overflowPinnedItemIndexes;
    UIView *_leadingContainer;
    UIView *_trailingContainer;
    UIView *_dragPreviewContainer;
    UIVisualEffectView *_leadingVibrancyEffectView;
    UIVisualEffectView *_trailingVibrancyEffectView;
    UIPanGestureRecognizer *_reorderRecognizer;
    UIDragInteraction *_dragInteraction;
    UIHoverGestureRecognizer *_hoverRecognizer;
    BOOL _newTabVisibleInTabBar;
}

@property (weak, nonatomic) id<TabBarDelegate> delegate;
@property (copy, nonatomic) NSArray *items;
@property (nonatomic) long long tintStyle;
@property (nonatomic) BOOL hidesTitles;
@property (readonly, nonatomic) double itemWidth;
@property (readonly, nonatomic) double minimumTabWidth;
@property (readonly, nonatomic) SFTabHoverPreviewController *tabHoverPreviewController;
@property (readonly, nonatomic) unsigned long long indexOfCenterItem;
@property (readonly, nonatomic) unsigned long long maxNumberOfVisibleTabs;
@property (nonatomic, getter=isDraggingItem) BOOL draggingItem;
@property (nonatomic) BOOL allowsScrollingPinnedItems;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;
@property (readonly, nonatomic) UIView *view;
@property (readonly, nonatomic) long long itemDragContentType;
@property (readonly, nonatomic) ReorderingAutoscroller *reorderingAutoscroller;
@property (readonly, nonatomic) unsigned long long layoutAxes;
@property (readonly, nonatomic) BOOL supportsDropTransitionToItemView;
@property (readonly, nonatomic) BOOL canDragOntoActiveTab;
@property (readonly, nonatomic) BOOL hidesInactiveTabs;
@property (readonly, nonatomic) BOOL lastDecelerationWasInterrupted;

+ (double)defaultHeight;

- (void)scrollViewDidEndDecelerating:(id)a0;
- (void)dealloc;
- (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })frameForItem:(id)a0;
- (void)_tap:(id)a0;
- (void)_didReceiveMemoryWarning:(id)a0;
- (BOOL)gestureRecognizer:(id)a0 shouldReceiveTouch:(id)a1;
- (void)activateItem:(id)a0;
- (id)viewForItem:(id)a0;
- (id)targetedDragPreviewForLiftingItem:(id)a0;
- (void)scrollViewDidEndDragging:(id)a0 willDecelerate:(BOOL)a1;
- (id)initWithFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0;
- (BOOL)gestureRecognizerShouldBegin:(id)a0;
- (id)targetItemForDropAtPoint:(struct CGPoint { double x0; double x1; })a0;
- (void)_updateBackground;
- (void)addInteraction:(id)a0;
- (void).cxx_destruct;
- (id)hitTest:(struct CGPoint { double x0; double x1; })a0 withEvent:(id)a1;
- (void)layoutSubviews;
- (void)scrollViewDidScroll:(id)a0;
- (void)scrollViewWillBeginDragging:(id)a0;
- (id)itemAtPoint:(struct CGPoint { double x0; double x1; })a0;
- (void)_didCompleteScrolling;
- (double)_itemWidth;
- (void)_hover:(id)a0;
- (BOOL)_itemAtIndexIsPinned:(unsigned long long)a0;
- (double)_pinnedItemsWidth;
- (void)scrollToItem:(id)a0 animated:(BOOL)a1;
- (BOOL)_isScrollable;
- (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })_frameForItemAtIndex:(unsigned long long)a0;
- (unsigned int)_edgeToAlignWithPreviewForItem:(id)a0;
- (void)_activateItemIfNeeded:(id)a0;
- (unsigned long long)_effectiveIndexForIndex:(unsigned long long)a0 ofItems:(id)a1 currentItems:(id)a2;
- (id)_firstVisibleItemAfterIndex:(unsigned long long)a0;
- (double)_horizontalPositionForItemAtIndex:(unsigned long long)a0;
- (double)_horizontalPositionForItemAtIndex:(unsigned long long)a0 withSlowingFactor:(double)a1;
- (double)_horizontalPositionForItemAtIndex:(unsigned long long)a0 withSlowingFactor:(double)a1 pinned:(BOOL)a2;
- (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })_initialFrameForItemAtIndex:(unsigned long long)a0;
- (id)_itemAtLocation:(struct CGPoint { double x0; double x1; })a0;
- (void)_itemDidPressCloseButton:(id)a0;
- (id)_itemForTouch:(id)a0;
- (unsigned long long)_lastVisiblePinnedItemIndex;
- (void)_layOutPinnedOverflowButton;
- (void)_layoutContainers;
- (void)_layoutIndexes:(id)a0 ofItems:(id)a1 currentItems:(id)a2;
- (void)_layoutItem:(id)a0 atIndex:(unsigned long long)a1 inRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a2 itemCount:(unsigned long long)a3 beforeActiveItem:(BOOL)a4;
- (unsigned long long)_maximumTruncationIndexForTitle:(id)a0;
- (id)_overflowPinnedItemsMenuElements;
- (struct UIEdgeInsets { double x0; double x1; double x2; double x3; })_pinnedItemInsets;
- (void)_relinquishReusableTabBarItemView:(id)a0;
- (void)_reorder:(id)a0;
- (id)_requestReusableTabBarItemView;
- (void)_scrollToItemIfNeeded:(id)a0;
- (void)_scrollTowardItem:(id)a0 byAmount:(double)a1;
- (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })_scrollableItemArea;
- (unsigned long long)_scrollableItemCount;
- (double)_scrollableWidth;
- (void)_toggleMediaStateMutedForItem:(id)a0;
- (unsigned long long)_totalPinnedItemCount;
- (void)_updatePinnedItemCount;
- (void)_updateReorderRecognizer;
- (void)cleanUpDragPreviewForItem:(id)a0;
- (unsigned long long)contextMenuOptionsForItem:(id)a0;
- (id)dragPreviewForItem:(id)a0 pinned:(BOOL)a1;
- (BOOL)shouldPinItemsDroppedAtPoint:(struct CGPoint { double x0; double x1; })a0;
- (void)updatePinnedItems;

@end