@class PUFilmstripMediaProvider, NSString, UIImage, PUFilmstripDataSource, NSArray, PUTileViewAnimator, NSObject, AVVideoComposition, PUTilingView, AVAsset; @protocol OS_dispatch_queue; @interface PUFilmstripView : UIView { BOOL _needsUpdateThumbnailAspectRatio; BOOL _needsUpdateDataSource; BOOL _needsUpdateLayout; BOOL _needsUpdateGeneratedPlaceholder; NSObject *_placeholderGenerationQueue; PUTileViewAnimator *_animator; } @property (nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } visibleRect; @property (readonly, nonatomic) AVAsset *asset; @property (readonly, nonatomic) AVVideoComposition *videoComposition; @property (nonatomic) BOOL useContentAspectRatio; @property (weak, nonatomic) id thumbnailUpdatingDelegate; @property (nonatomic) BOOL preserveThumbnailsDuringReload; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; @property (readonly, nonatomic) PUTilingView *_tilingView; @property (retain, nonatomic, setter=_setMediaProvider:) PUFilmstripMediaProvider *_mediaProvider; @property (retain, nonatomic, setter=_setDataSource:) PUFilmstripDataSource *_dataSource; @property (nonatomic, setter=_setThumbnailAspectRatio:) double _thumbnailAspectRatio; @property (retain, nonatomic) UIImage *generatedPlaceholderImage; @property (readonly, nonatomic) AVAsset *asset; @property (readonly, nonatomic) AVVideoComposition *videoComposition; @property (retain, nonatomic) UIImage *placeholderImage; @property (nonatomic) BOOL generatesPlaceholderImage; @property (nonatomic) struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } visibleRect; @property (copy, nonatomic) NSArray *indicatorInfos; @property (nonatomic) BOOL useContentAspectRatio; @property (nonatomic) BOOL preserveThumbnailsDuringReload; @property (readonly, nonatomic) double desiredClippingOutset; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; - (id)tilingView:(id)a0 tileTransitionCoordinatorForTransitionFromLayout:(id)a1 toLayout:(id)a2 withContext:(id)a3; - (id)initWithFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (id)tilingView:(id)a0 dataSourceConverterForTransitionFromLayout:(id)a1 toLayout:(id)a2; - (void)_updateLayoutIfNeeded; - (void)_setNeedsUpdate; - (void)_updateIfNeeded; - (void).cxx_destruct; - (void)_invalidateDataSource; - (void)_invalidateLayout; - (id)tilingView:(id)a0 tileControllerWithIndexPath:(id)a1 kind:(id)a2 dataSource:(id)a3; - (void)layoutSubviews; - (void)setAsset:(id)a0; - (id)tilingView:(id)a0 tileTransitionCoordinatorForChangeFromFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 toFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a2 duration:(double)a3; - (void)_releaseAVObjects; - (void)_updateDataSourceIfNeeded; - (void)setAsset:(id)a0 videoComposition:(id)a1; - (void)setLivePhotoTrimScrubberThumbnail:(id)a0; - (void)_invalidateThumbnailAspectRatio; - (id)_filmstripLayout; - (void)_invalidateGeneratedPlaceholderImage; - (void)_invalidateMediaProvider; - (BOOL)_isMediaProviderValid; - (void)_updateGeneratedPlaceholderImageIfNeeded; - (void)_updateMediaProviderPlaceholderImage; - (void)_updateThumbnailAspectRatioIfNeeded; - (void)reloadThumbnails; @end