@class PXVideoSessionManager, PXNumberAnimator, PXStoryStyleManager, NSUndoManager, AVAudioSession, PXAssetReference, PXStoryAnimationController, NSMutableArray, PXStoryTimelineManager, NSString, PXCoordinatedRect, PXStoryLayoutSpecManager, PXStoryResourcesDataSourceManager, NSMutableSet, NSObject, NSSet, PXUpdater, PXStoryViewModeTransition, PXStoryLoadingStatusReporter, PXStoryChapterCollectionManager, PXExtendedTraitCollection, PXStoryRecipeManager, PXStoryConfiguration, NSMapTable, NSIndexSet, NSHashTable; @protocol PXStoryThumbnailActionPerformer, PXDisplayAssetFetchResult, PXDisplayAssetCollection, PXStoryStyle, OS_dispatch_queue, PXDisplayAsset, PXStoryErrorReporter, PXStoryColorGradingRepository, PXStorySongResource, PXStoryTimelineSpec, PXStoryChapter, NSCopying, PXStoryTimeline, PXStoryLayoutSpec; @interface PXStoryModel : PXObservable { NSMutableSet *_changesOrigins; NSMutableArray *_persistenceRequests; NSMutableSet *_musicDuckingTokens; } @property (readonly, nonatomic) PXStoryLayoutSpecManager *layoutSpecManager; @property (readonly, nonatomic) PXUpdater *updater; @property (readonly, nonatomic) NSMapTable *HUDContentProvidersByType; @property (readonly, nonatomic) NSHashTable *videoPresentationControllers; @property (copy, nonatomic) id /* block */ overallDurationChangeCompletionHandler; @property (nonatomic) long long bufferingEvents; @property (nonatomic) long long numberOfPresentedAlerts; @property (nonatomic) long long colorGradeKind; @property (nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } outroDuration; @property (nonatomic) double outroFractionCompleted; @property (nonatomic) struct { double pressedFraction; double pressedFractionVelocity; struct CGSize { double width; double height; } timelineSizeBeforePressing; } pressAnimationInfo; @property (readonly, nonatomic) PXNumberAnimator *pressedFractionAnimator; @property (nonatomic) BOOL didReachOutroOnce; @property (nonatomic) BOOL didPrerequestPersistencePermission; @property (retain, nonatomic) NSUndoManager *undoManager; @property (retain, nonatomic) id desiredStartAsset; @property (readonly, nonatomic) PXStoryConfiguration *configuration; @property (readonly, nonatomic) PXStoryTimelineManager *timelineManager; @property (readonly, nonatomic) double playbackMaxFractionCompleted; @property (readonly, nonatomic) id curatedAssets; @property (readonly, nonatomic) id untruncatedCuratedAssets; @property (readonly, nonatomic) id uniqueIdentifier; @property (readonly, nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } nominalPlaybackTime; @property (readonly, nonatomic) unsigned long long lastPlaybackTimeChangeSource; @property (readonly, nonatomic) double playbackFractionCompleted; @property (readonly, nonatomic) BOOL isAtPlaybackEnd; @property (readonly, nonatomic) long long desiredPlayState; @property (readonly, nonatomic) BOOL isActuallyPlaying; @property (readonly, nonatomic) long long viewMode; @property (readonly, nonatomic) long long thumbnailStyle; @property (readonly, nonatomic) long long detailsViewButtonDisplayStyle; @property (readonly, nonatomic) BOOL shouldAutoplayThumbnail; @property (readonly, nonatomic) struct { struct { long long value; int timescale; unsigned int flags; long long epoch; } start; struct { long long value; int timescale; unsigned int flags; long long epoch; } duration; } thumbnailAutoplayTimeRange; @property (readonly, nonatomic) id thumbnailActionPerformer; @property (readonly, nonatomic) BOOL shouldAspectFitCurrentSegment; @property (readonly, nonatomic) PXStoryViewModeTransition *viewModeTransition; @property (readonly, nonatomic) BOOL prefersExportLayoutMatchesPlayback; @property (readonly, nonatomic) double chromeVisibilityFraction; @property (readonly, nonatomic) double titleOpacity; @property (readonly, nonatomic) PXCoordinatedRect *presentedTitleFrame; @property (readonly, nonatomic) PXCoordinatedRect *presentedSubtitleFrame; @property (readonly, nonatomic) long long titleAlignment; @property (readonly, nonatomic) struct CGPoint { double x; double y; } currentGridScrollPosition; @property (readonly, nonatomic) struct { long long firstSegmentIdentifier; double secondSegmentMixFactor; long long secondSegmentIdentifier; } currentScrollPosition; @property (readonly, nonatomic) BOOL isScrolling; @property (readonly, nonatomic) BOOL allowsScrolling; @property (readonly, nonatomic) BOOL isTouching; @property (readonly, nonatomic) BOOL isHovering; @property (readonly, nonatomic) BOOL isPresentingAssetPicker; @property (readonly, nonatomic) BOOL isPresentingMusicEditor; @property (readonly, nonatomic) BOOL isPresentingColorGradeEditor; @property (readonly, nonatomic) BOOL isPerformingViewControllerTransition; @property (readonly, nonatomic) BOOL isPresentingAnyAlert; @property (readonly, nonatomic) id timeline; @property (readonly, nonatomic) unsigned long long timelineAttributes; @property (readonly, nonatomic) id timelineSpec; @property (readonly, nonatomic) id gridTimeline; @property (readonly, nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } timeIntoCurrentSegment; @property (readonly, nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } timeLeftInCurrentSegment; @property (readonly, nonatomic) long long currentSegmentIdentifier; @property (readonly, nonatomic) long long previousSegmentIdentifier; @property (readonly, copy, nonatomic) NSIndexSet *visibleSegmentIdentifiers; @property (readonly, nonatomic) long long lastHitClipIdentifier; @property (readonly, copy, nonatomic) PXAssetReference *lastHitAssetReference; @property (readonly, nonatomic) id visibleDisplayAssets; @property (readonly, nonatomic) BOOL isFirstSegmentVisible; @property (readonly, nonatomic) BOOL isLastSegmentVisible; @property (readonly, nonatomic) long long readinessStatus; @property (readonly, nonatomic) long long contentReadinessStatus; @property (readonly, nonatomic) long long musicReadinessStatus; @property (readonly, nonatomic) id currentStyle; @property (readonly, nonatomic) double styleSwitcherVisibilityFraction; @property (readonly, nonatomic) PXStoryStyleManager *styleManager; @property (readonly, nonatomic) id colorGradingRepository; @property (readonly, nonatomic) NSString *titleCategory; @property (readonly, nonatomic) id editorPreviewSong; @property (readonly, nonatomic) PXStoryResourcesDataSourceManager *resourcesDataSourceManager; @property (readonly, nonatomic) PXStoryRecipeManager *recipeManager; @property (readonly, nonatomic) PXStoryChapterCollectionManager *chapterCollectionManager; @property (readonly, nonatomic) AVAudioSession *audioSession; @property (readonly, nonatomic) id activeSongResource; @property (readonly, nonatomic) id currentSongResource; @property (readonly, nonatomic) id currentAssetCollection; @property (readonly, nonatomic) BOOL currentAssetCollectionIsFavorite; @property (readonly, nonatomic) id currentChapter; @property (readonly, nonatomic) BOOL currentChapterTitleIsVisible; @property (readonly, nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } elapsedTime; @property (readonly, nonatomic) PXStoryAnimationController *animationController; @property (readonly, nonatomic) PXVideoSessionManager *videoSessionManager; @property (readonly, nonatomic) PXExtendedTraitCollection *extendedTraitCollection; @property (readonly, nonatomic) id layoutSpec; @property (readonly, nonatomic) unsigned long long options; @property (readonly, nonatomic) BOOL isExporting; @property (readonly, nonatomic) BOOL inLiveResize; @property (readonly, nonatomic) PXStoryLoadingStatusReporter *loadingStatusReporter; @property (readonly, nonatomic) id errorReporter; @property (readonly, nonatomic) BOOL isHUDVisible; @property (readonly, nonatomic) long long diagnosticHUDType; @property (readonly, nonatomic) NSSet *changesOrigins; @property (readonly, nonatomic) long long persistencePermission; @property (readonly, nonatomic) BOOL wantsMusicDucked; @property (readonly, nonatomic) double volume; @property (readonly, nonatomic) float volumeDuringViewControllerTransition; @property (readonly, nonatomic) double desiredInfoPanelVisibilityFraction; @property (readonly, nonatomic) double infoPanelVisibilityFraction; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; @property (readonly, nonatomic) NSObject *storyQueue; - (void)setViewMode:(long long)a0; - (void)setTitleAlignment:(long long)a0; - (void)performChanges:(id /* block */)a0; - (void)setVolume:(double)a0; - (id)init; - (void)observable:(id)a0 didChange:(unsigned long long)a1 context:(void *)a2; - (void)didPerformChanges; - (void)setIsScrolling:(BOOL)a0; - (void)_setNeedsUpdate; - (void)collectTapToRadarDiagnosticsIntoContainer:(id)a0; - (void)setConfiguration:(id)a0; - (void)setTitleOpacity:(double)a0; - (void)setElapsedTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0; - (void)setCurrentStyle:(id)a0; - (void)setTimeline:(id)a0; - (void).cxx_destruct; - (void)setIsHUDVisible:(BOOL)a0; - (void)setAllowsScrolling:(BOOL)a0; - (void)setInLiveResize:(BOOL)a0; - (void)setAudioSession:(id)a0; - (void)addVideoPresentationController:(id)a0; - (void)_invalidateCurrentStyleAndFocus; - (void)_updateTimeline; - (void)reconfigureWithAssetCollection:(id)a0; - (void)setInfoPanelVisibilityFraction:(double)a0; - (id)_appleMusicCapabilitiesDebugInformation; - (void)_callCompletionHandlersPendingTimelineChange; - (void)_clearLastHitAssetClip; - (void)_completePersistenceRequestsWithSuccess:(BOOL)a0 error:(id)a1; - (id)_currentAssetCollectionDescriptionForHUDType:(long long)a0; - (void)_displayCollectionPersistenceConfirmationIfNeeded; - (void)_enumerateVisibleAssetVideoPresentationControllersUsingBlock:(id /* block */)a0; - (void)_invalidateCurrentAssetCollection; - (void)_invalidateLayoutSpec; - (void)_invalidateNominalPlaybackTime; - (void)_invalidateOutroDuration; - (void)_invalidateOutroFractionCompleted; - (void)_invalidatePersistencePermission; - (void)_invalidatePlaybackFractionCompleted; - (void)_invalidatePressAnimationInfo; - (void)_invalidatePressedFractionAnimator; - (void)_invalidateShouldAspectFitCurrentSegment; - (void)_invalidateTimeline; - (void)_invalidateTimelineAttributes; - (void)_invalidateTimelineSpec; - (void)_invalidateWantsMusicDucked; - (id)_musicCurationDebugInformation; - (void)_updateCurrentAssetCollection; - (void)_updateCurrentStyle; - (void)_updateLayoutSpec; - (void)_updateNominalPlaybackTime; - (void)_updateOutroDuration; - (void)_updateOutroFractionCompleted; - (void)_updatePersistencePermission; - (void)_updatePlaybackFractionCompleted; - (void)_updatePressAnimationInfo; - (void)_updatePressedFractionAnimator; - (void)_updateShouldAspectFitCurrentSegment; - (void)_updateTimelineAttributes; - (void)_updateTimelineSpec; - (void)_updateWantsMusicDucked; - (id)assetReferenceForClipIdentifier:(long long)a0; - (id)beginMusicDucking; - (void)changeOverallDuration:(long long)a0 completionHandler:(id /* block */)a1; - (BOOL)checkIfShouldPreventAdvancingAndReturnReason:(out id *)a0; - (id)currentGradeDescription; - (id)currentSongDescription; - (id)currentSongPaceDescription; - (id)currentSongTagsDescription; - (id)currentStyleDescription; - (id)currentTimeDescription; - (id)diagnosticDescriptionForAllHUDTypes; - (id)diagnosticHUDContentProviderForType:(long long)a0; - (id)diagnosticTextForHUDType:(long long)a0; - (void)didEndChangeHandling; - (void)didEndPresentingAlert; - (void)didStartPresentingAlert; - (void)endMusicDuckingWithToken:(id)a0; - (void)flickedPastEnd; - (BOOL)getMainVisibleClipIdentifier:(out long long *)a0 assetReferece:(id *)a1; - (id)initWithConfiguration:(id)a0 extendedTraitCollection:(id)a1; - (id)initWithConfiguration:(id)a0 extendedTraitCollection:(id)a1 loadingCoordinator:(id)a2 paperTrailOptions:(unsigned long long)a3; - (id)initWithTimelineManager:(id)a0 layoutSpecManager:(id)a1 configuration:(id)a2; - (void)makeAssetKeyPhoto:(id)a0; - (void)makeCurrentAssetKeyPhoto; - (void)performChanges:(id /* block */)a0 origin:(id)a1; - (void)performWithPrerequestedPersistencePermission:(id /* block */)a0; - (void)prerequestPersistencePermission:(id /* block */)a0; - (void)removeAssetsFromCuration:(id)a0; - (void)removeVideoPresentationController:(id)a0; - (void)reportNetworkRelatedPlaybackFailure; - (void)reportPersistenceFailureWithError:(id)a0; - (void)requestPersistencePermission:(id /* block */)a0; - (void)requestPersistencePermissionWithTimeout:(double)a0 completionHandler:(id /* block */)a1; - (void)restartPlaybackFromBeginning; - (BOOL)rewindToBeginningOfCurrentSegment; - (void)scrollToPosition:(struct { long long x0; double x1; long long x2; })a0; - (void)setActiveSongResource:(id)a0; - (void)setChromeVisibilityFraction:(double)a0; - (void)setContentReadinessStatus:(long long)a0; - (void)setCurrentAssetCollection:(id)a0; - (void)setCurrentAssetCollectionIsFavorite:(BOOL)a0; - (void)setCurrentGridScrollPosition:(struct CGPoint { double x0; double x1; })a0; - (void)setCurrentScrollPosition:(struct { long long x0; double x1; long long x2; })a0; - (BOOL)setCurrentSegmentIdentifier:(long long)a0 timeIntoSegment:(struct { long long x0; int x1; unsigned int x2; long long x3; })a1 timeLeftInSegment:(struct { long long x0; int x1; unsigned int x2; long long x3; })a2 changeSource:(unsigned long long)a3; - (void)setDesiredInfoPanelVisibilityFraction:(double)a0; - (void)setDesiredPlayState:(long long)a0; - (void)setDetailsViewButtonDisplayStyle:(long long)a0; - (void)setDiagnosticHUDContentProvider:(id)a0 forType:(long long)a1; - (void)setDiagnosticHUDType:(long long)a0; - (void)setEditorPreviewSong:(id)a0; - (void)setIsActuallyPlaying:(BOOL)a0; - (void)setIsAtPlaybackEnd:(BOOL)a0; - (void)setIsHovering:(BOOL)a0; - (void)setIsPerformingViewControllerTransition:(BOOL)a0; - (void)setIsPresentingAnyAlert:(BOOL)a0; - (void)setIsPresentingAssetPicker:(BOOL)a0; - (void)setIsPresentingColorGradeEditor:(BOOL)a0; - (void)setIsPresentingMusicEditor:(BOOL)a0; - (void)setIsTouching:(BOOL)a0; - (void)setLastHitAssetReference:(id)a0; - (void)setLastHitClipIdentifier:(long long)a0; - (void)setLastPlaybackTimeChangeSource:(unsigned long long)a0; - (void)setLayoutSpec:(id)a0; - (void)setMusicReadinessStatus:(long long)a0; - (void)setNominalPlaybackTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0; - (void)setPersistencePermission:(long long)a0; - (void)setPlaybackFractionCompleted:(double)a0; - (void)setPlaybackMaxFractionCompleted:(double)a0; - (void)setPrefersExportLayoutMatchesPlayback:(BOOL)a0; - (void)setPresentedSubtitleFrame:(id)a0; - (void)setPresentedTitleFrame:(id)a0; - (void)setPreviousSegmentIdentifier:(long long)a0; - (void)setReadinessStatus:(long long)a0; - (void)setShouldAspectFitCurrentSegment:(BOOL)a0; - (void)setShouldAutoplayThumbnail:(BOOL)a0; - (void)setStyleSwitcherVisibilityFraction:(double)a0; - (void)setThumbnailAutoplayTimeRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0; - (void)setThumbnailStyle:(long long)a0; - (void)setTimelineAttributes:(unsigned long long)a0; - (void)setTimelineSpec:(id)a0; - (void)setViewModeTransition:(id)a0; - (void)setVisibleSegmentIdentifiers:(id)a0; - (void)setVolumeDuringViewControllerTransition:(float)a0; - (void)setWantsMusicDucked:(BOOL)a0; - (BOOL)skipToBeginningOfSegmentWithIdentifier:(long long)a0; - (BOOL)skipToSegmentWithOffset:(long long)a0; @end