luxlabs header browser preview


@class PUScrollViewSpeedometer, NSIndexPath, NSMutableArray, NSString, NSMutableSet, PUAssetTransitionInfo, PUPhotosSharingCollectionViewLayout, PUPhotosSharingViewControllerSpec, PHAsset, NSMutableDictionary, PXPhotosDataSource, PHFetchResult, PUPhotoSelectionManager, PXAssetBadgeManager, NSObject, UICollectionView, UICollectionViewLayout, PUPhotosSharingTransitionContext, PHCachingImageManager, NSMapTable, UITapGestureRecognizer;
@protocol OS_os_log, PUCarouselSharingViewControllerDelegate;

@interface PUCarouselSharingViewController : UIViewController <UIGestureRecognizerDelegate, UICollectionViewDataSource, UICollectionViewDelegate, PUPhotosSharingCollectionViewLayoutDelegate, PUScrollViewSpeedometerDelegate, PXPhotoLibraryUIChangeObserver, PUPhotoViewContentHelperDelegate, PUPhotosSharingTransitionViewController, PHAssetCollectionDataSource, PUOneUpPhotosSharingTransitionViewController, PUOneUpAssetTransitionViewController> {
    PUScrollViewSpeedometer *_speedometer;
    NSMutableDictionary *_resultsForAssetCollection;
    NSMutableDictionary *_assetItemsByAssetIdentifier;
    NSMapTable *_indexPathsByOptionView;
    UITapGestureRecognizer *_tapGestureRecognizer;
    NSIndexPath *_inFlightReferenceIndexPath;
    BOOL _shouldScrollToSelection;
    BOOL _inFlightRotation;
    BOOL _shouldPlayVitalityHintAfterViewDidAppear;
}

@property (retain, nonatomic) PUPhotosSharingViewControllerSpec *spec;
@property (retain, nonatomic, setter=_setMainCollectionView:) UICollectionView *mainCollectionView;
@property (retain, nonatomic, setter=_setMainCollectionViewLayout:) PUPhotosSharingCollectionViewLayout *mainCollectionViewLayout;
@property (nonatomic, getter=_isViewInSyncWithModel, setter=_setViewInSyncWithModel:) BOOL _viewInSyncWithModel;
@property (retain, nonatomic) PUPhotoSelectionManager *photoSelectionManager;
@property (readonly, nonatomic) PHCachingImageManager *cachingImageManager;
@property (nonatomic, setter=_setPreviousPreheatRect:) struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } _previousPreheatRect;
@property (retain, nonatomic, setter=_setPreheatedAssets:) NSMutableSet *_preheatedAssets;
@property (retain, nonatomic, setter=_setTransitionLayout:) UICollectionViewLayout *_transitionLayout;
@property (retain, nonatomic) PUPhotosSharingTransitionContext *photosSharingTransitionContext;
@property (retain, nonatomic) PUAssetTransitionInfo *assetTransitionInfo;
@property (retain, nonatomic) PUAssetTransitionInfo *leadingAssetTransitionInfo;
@property (retain, nonatomic) PUAssetTransitionInfo *trailingAssetTransitionInfo;
@property (retain, nonatomic, setter=_setLastKnownReferenceAsset:) PHAsset *_lastKnownReferenceAsset;
@property (retain, nonatomic, setter=_setLastKnownReferenceIndexPath:) NSIndexPath *_lastKnownReferenceIndexPath;
@property (nonatomic, getter=_isLoopingPlaybackAllowed, setter=_setLoopingPlaybackAllowed:) BOOL _loopingPlaybackAllowed;
@property (readonly, nonatomic) PXAssetBadgeManager *_badgeManager;
@property (copy, nonatomic, setter=_pptSetOnDidEndScrollingBlock:) id /* block */ _pptOnDidEndScrollingBlock;
@property (readonly, nonatomic) NSObject<OS_os_log> *sharingLog;
@property (readonly, nonatomic) NSMutableArray *_photoViewLoaderBlocks;
@property (readonly, nonatomic) NSMutableArray *_livePhotoViewLoaderBlocks;
@property (retain, nonatomic) PXPhotosDataSource *photosDataSource;
@property (retain, nonatomic) NSMutableSet *analyticsEventsSent;
@property (readonly, nonatomic) PHFetchResult *photoCollectionsFetchResult;
@property (weak, nonatomic) id<PUCarouselSharingViewControllerDelegate> delegate;
@property (readonly, nonatomic) PHAsset *currentAsset;
@property (readonly, nonatomic) NSString *localizedSelectionTitle;
@property (nonatomic, getter=isReadyForInteraction) BOOL readyForInteraction;
@property (nonatomic) BOOL sendAsAssetBundles;
@property (nonatomic) BOOL sendAsUnmodifiedOriginals;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;
@property (readonly, nonatomic) PHFetchResult *assetCollectionsFetchResult;

- (void)scrollViewDidEndDecelerating:(id)a0;
- (id)currentIndexPath;
- (void)viewWillAppear:(BOOL)a0;
- (void)dealloc;
- (void)collectionView:(id)a0 didEndDisplayingSupplementaryView:(id)a1 forElementOfKind:(id)a2 atIndexPath:(id)a3;
- (id)assetsInAssetCollection:(id)a0;
- (void)photoLibraryDidChangeOnMainQueue:(id)a0;
- (void)viewWillLayoutSubviews;
- (BOOL)gestureRecognizer:(id)a0 shouldReceiveTouch:(id)a1;
- (void)viewDidLayoutSubviews;
- (void)viewDidLoad;
- (void)scrollViewDidEndDragging:(id)a0 willDecelerate:(BOOL)a1;
- (void)scrollViewDidEndScrollingAnimation:(id)a0;
- (BOOL)gestureRecognizerShouldBegin:(id)a0;
- (void)viewWillDisappear:(BOOL)a0;
- (void)collectionView:(id)a0 didEndDisplayingCell:(id)a1 forItemAtIndexPath:(id)a2;
- (void).cxx_destruct;
- (BOOL)prepareForDismissingForced:(BOOL)a0;
- (BOOL)collectionView:(id)a0 shouldSelectItemAtIndexPath:(id)a1;
- (void)viewDidAppear:(BOOL)a0;
- (long long)collectionView:(id)a0 numberOfItemsInSection:(long long)a1;
- (long long)numberOfSectionsInCollectionView:(id)a0;
- (void)viewWillTransitionToSize:(struct CGSize { double x0; double x1; })a0 withTransitionCoordinator:(id)a1;
- (id)prepareForPhotoLibraryChange:(id)a0;
- (void)scrollViewDidScroll:(id)a0;
- (id)collectionView:(id)a0 viewForSupplementaryElementOfKind:(id)a1 atIndexPath:(id)a2;
- (id)collectionView:(id)a0 cellForItemAtIndexPath:(id)a1;
- (void)scrollViewWillBeginDragging:(id)a0;
- (void)scrollViewWillEndDragging:(id)a0 withVelocity:(struct CGPoint { double x0; double x1; })a1 targetContentOffset:(inout struct CGPoint { double x0; double x1; } *)a2;
- (BOOL)gestureRecognizer:(id)a0 shouldRecognizeSimultaneouslyWithGestureRecognizer:(id)a1;
- (long long)_numberOfSections;
- (void)deselectItemAtIndexPath:(id)a0;
- (void)selectItemAtIndexPath:(id)a0;
- (long long)_numberOfItemsInSection:(long long)a0;
- (id)ppt_scrollView;
- (void)_updateCell:(id)a0 forItemAtIndexPath:(id)a1;
- (void)_handleTapInMainCollectionView:(id)a0;
- (void)ppt_faultInScollViewContentSize;
- (id)_activityAssetItemForAsset:(id)a0 createIfNecessary:(BOOL)a1;
- (void)_addActivityAssetItem:(id)a0;
- (void)_arrowKey:(id)a0;
- (id)_assetAtIndexPath:(id)a0;
- (id)_badgeTransitionInfosForCell:(id)a0;
- (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })_collectionViewContentFrame;
- (id)_firstSelectedIndexPath;
- (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })_frameAtIndexPath:(id)a0 inView:(id)a1;
- (void)_getFirstValidIndexPath:(id *)a0 lastValidIndexPath:(id *)a1;
- (void)_getMainCollectionViewFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } *)a0 collectionViewLayoutInsets:(struct UIEdgeInsets { double x0; double x1; double x2; double x3; } *)a1;
- (void)_handleAnimatedImageResult:(id)a0 forCell:(id)a1 asset:(id)a2 tag:(long long)a3;
- (void)_handleLivePhotoRequestResult:(id)a0 forCell:(id)a1 tag:(long long)a2;
- (void)_handleLoopingVideoRequestResult:(id)a0 forCell:(id)a1 asset:(id)a2 tag:(long long)a3;
- (void)_handlePhotoViewLoaderBlocks;
- (void)_handleSchedulingLivePhotoRequestResult:(id)a0 forCell:(id)a1 tag:(long long)a2;
- (void)_handleSchedulingStillPhotoRequestResult:(id)a0 forCell:(id)a1 tag:(long long)a2;
- (void)_handleSelectionOption:(id)a0;
- (void)_handleStillImageRequestResult:(id)a0 info:(id)a1 forCell:(id)a2 indexPath:(id)a3;
- (void)_handleStillPhotoRequestResult:(id)a0 forCell:(id)a1 tag:(long long)a2;
- (void)_handleTapAtIndexPath:(id)a0;
- (double)_horizontalOffsetInCollectionView:(id)a0 forCenteringOnItemAtIndexPath:(id)a1;
- (unsigned long long)_indexForPhotoCollection:(id)a0;
- (id)_indexPathInCollectionView:(id)a0 closestToContentOffsetX:(double)a1;
- (id)_indexPathInCollectionView:(id)a0 closestToPoint:(struct CGPoint { double x0; double x1; })a1;
- (id)_indexPathOfAsset:(id)a0 sectionHint:(long long)a1;
- (id)_indexPathOfCenterVisibleItemInCollectionView:(id)a0;
- (BOOL)_isAnyAssetSelected;
- (id)_optionViewAtIndexPath:(id)a0 forCollectionView:(id)a1;
- (void)_pageToIndexPath:(id)a0 animated:(BOOL)a1;
- (id)_photoCollectionAtIndex:(long long)a0;
- (void)_playLivePhotoHintIfNeededAtIndexPath:(id)a0;
- (void)_playVitalityHintAfterViewDidAppear;
- (void)_processCollectionListChangeNotifications:(id)a0 singleCollectionNotifications:(id)a1 needsReloadData:(BOOL)a2;
- (void)_removeActivityAssetItem:(id)a0;
- (void)_replaceActivityAssetItem:(id)a0 withAssetItem:(id)a1 notifyDelegate:(BOOL)a2;
- (void)_resetPreheating;
- (id)_selectionViewAtIndexPath:(id)a0 forCollectionView:(id)a1;
- (void)_setLastKnownReferenceAsset:(id)a0 indexPath:(id)a1;
- (void)_setSelected:(BOOL)a0 atIndexPath:(id)a1 animated:(BOOL)a2;
- (BOOL)_shouldShowAsset:(id)a0;
- (struct CGSize { double x0; double x1; })_sizeForItemAtIndexPath:(id)a0;
- (void)_updateAdditionalContentForAsset:(id)a0 cell:(id)a1;
- (void)_updateAdditionalContentForVisibleCells;
- (void)_updateAssetTransitionInfo:(id)a0;
- (void)_updateCellAtIndexPath:(id)a0 withTransitionInfo:(id)a1;
- (void)_updateInterfaceForModelReloadAnimated:(BOOL)a0;
- (void)_updateLastKnownReferenceIndexPath;
- (void)_updateMainViewAnimated:(BOOL)a0;
- (void)_updateOptionView:(id)a0 atIndexPath:(id)a1;
- (void)_updatePhotoForAsset:(id)a0 cell:(id)a1 atIndexPath:(id)a2;
- (void)_updatePreheatedAssets;
- (void)_updateVisibleCellBadges;
- (void)_updateVisibleCells;
- (id)_updatedActivityAssetItemsForAssets:(id)a0;
- (id)_validIndexPathFromIndexPath:(id)a0;
- (id)adjacentVisibleAssetsTransitionInfos;
- (id)currentActivityAssetItems;
- (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })frameForBadgeOfKind:(id)a0 forItemFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 atIndexPath:(id)a2;
- (id)initWithPhotoCollectionsFetchResult:(id)a0 assetsFetchResultsByAssetCollection:(id)a1 selection:(id)a2;
- (BOOL)isItemAtIndexPathSelected:(id)a0;
- (double)layout:(id)a0 collectionView:(id)a1 bottomBadgeInsetforItemAtIndexPath:(id)a2;
- (void)layout:(id)a0 collectionView:(id)a1 itemAtIndexPath:(id)a2 didChangeToVisibleFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a3;
- (id)layout:(id)a0 collectionView:(id)a1 referenceIndexPathWithOffsetX:(double *)a2;
- (struct CGSize { double x0; double x1; })layout:(id)a0 collectionView:(id)a1 sizeForBadgeViewOfKind:(id)a2 forItemAtIndexPath:(id)a3;
- (struct CGSize { double x0; double x1; })layout:(id)a0 collectionView:(id)a1 sizeForItemAtIndexPath:(id)a2;
- (void)oneUpAssetTransition:(id)a0 requestTransitionContextWithCompletion:(id /* block */)a1;
- (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })oneUpAssetTransitionAssetFinalFrame:(id)a0;
- (void)photoViewContentHelper:(id)a0 livePhotoWillBeginPlaybackWithStyle:(long long)a1;
- (BOOL)ppt_scrollToAssetAtRelativeIndex:(long long)a0 completion:(id /* block */)a1;
- (id)referenceAssetTransitionInfo;
- (void)scrollViewSpeedometer:(id)a0 regimeDidChange:(long long)a1 from:(long long)a2;
- (void)setHideCellForCurrentReferenceAsset:(BOOL)a0;
- (void)setOneUpPhotosSharingTransitionContext:(id)a0;
- (void)setOneUpPhotosSharingTransitionInfo:(id)a0;
- (void)setPhotosSharingTransitionLayout:(id)a0 animated:(BOOL)a1;
- (id)transitionCollectionView;

@end