luxlabs header browser preview


@class WebAVMediaSelectionOption, NSArray, NSString, AVValueTiming, AVPlayerController;

@interface WebAVPlayerController : NSObject {
    struct WeakPtr<WebCore::PlaybackSessionModel, WTF::DefaultWeakPtrImpl> { struct RefPtr<WTF::DefaultWeakPtrImpl, WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl>, WTF::DefaultRefDerefTraits<WTF::DefaultWeakPtrImpl>> { struct DefaultWeakPtrImpl *m_ptr; } m_impl; } _delegate;
    struct WeakPtr<WebCore::PlaybackSessionInterfaceAVKit, WTF::DefaultWeakPtrImpl> { struct RefPtr<WTF::DefaultWeakPtrImpl, WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl>, WTF::DefaultRefDerefTraits<WTF::DefaultWeakPtrImpl>> { struct DefaultWeakPtrImpl *m_ptr; } m_impl; } _playbackSessionInterface;
    double _defaultPlaybackRate;
    double _rate;
    BOOL _liveStreamEventModePossible;
    BOOL _isScrubbing;
    BOOL _allowsPictureInPicture;
    BOOL _pictureInPictureInterrupted;
    BOOL _muted;
    double _seekToTime;
    WebAVMediaSelectionOption *_currentAudioMediaSelectionOption;
    WebAVMediaSelectionOption *_currentLegibleMediaSelectionOption;
}

@property (retain) AVPlayerController *playerControllerProxy;
@property void *delegate;
@property void *playbackSessionInterface;
@property (readonly) BOOL canScanForward;
@property BOOL canScanBackward;
@property (readonly) BOOL canSeekToBeginning;
@property (readonly) BOOL canSeekToEnd;
@property (readonly) BOOL isScrubbing;
@property (readonly) BOOL canSeekFrameBackward;
@property (readonly) BOOL canSeekFrameForward;
@property (readonly) BOOL hasContentChapters;
@property (readonly) BOOL isSeeking;
@property (readonly) double seekToTime;
@property BOOL canPlay;
@property (getter=isPlaying) BOOL playing;
@property BOOL canPause;
@property BOOL canTogglePlayback;
@property double defaultPlaybackRate;
@property double rate;
@property BOOL canSeek;
@property double contentDuration;
@property struct CGSize { double width; double height; } contentDimensions;
@property BOOL hasEnabledAudio;
@property BOOL hasEnabledVideo;
@property BOOL hasVideo;
@property (readonly) double minTime;
@property (readonly) double maxTime;
@property double contentDurationWithinEndTimes;
@property (retain) NSArray *loadedTimeRanges;
@property long long status;
@property (retain) AVValueTiming *timing;
@property (retain) NSArray *seekableTimeRanges;
@property (getter=isMuted) BOOL muted;
@property double volume;
@property (readonly) BOOL hasMediaSelectionOptions;
@property (readonly) BOOL hasAudioMediaSelectionOptions;
@property (retain) NSArray *audioMediaSelectionOptions;
@property (retain) WebAVMediaSelectionOption *currentAudioMediaSelectionOption;
@property (readonly) BOOL hasLegibleMediaSelectionOptions;
@property (retain) NSArray *legibleMediaSelectionOptions;
@property (retain) WebAVMediaSelectionOption *currentLegibleMediaSelectionOption;
@property (readonly, getter=isPlayingOnExternalScreen) BOOL playingOnExternalScreen;
@property (nonatomic, getter=isPlayingOnSecondScreen) BOOL playingOnSecondScreen;
@property (getter=isExternalPlaybackActive) BOOL externalPlaybackActive;
@property long long externalPlaybackType;
@property (retain) NSString *externalPlaybackAirPlayDeviceLocalizedName;
@property BOOL allowsExternalPlayback;
@property (readonly, getter=isPictureInPicturePossible) BOOL pictureInPicturePossible;
@property (getter=isPictureInPictureInterrupted) BOOL pictureInPictureInterrupted;
@property double seekableTimeRangesLastModifiedTime;
@property double liveUpdateInterval;
@property (retain, nonatomic) AVValueTiming *minTiming;
@property (retain, nonatomic) AVValueTiming *maxTiming;

+ (id)keyPathsForValuesAffectingHasLegibleMediaSelectionOptions;
+ (id)keyPathsForValuesAffectingCanScanForward;
+ (id)keyPathsForValuesAffectingCurrentTimeWithinEndTimes;
+ (id)keyPathsForValuesAffectingHasLiveStreamingContent;
+ (id)keyPathsForValuesAffectingHasSeekableLiveStreamingContent;
+ (id)keyPathsForValuesAffectingMinTime;
+ (id)keyPathsForValuesAffectingPlayingOnExternalScreen;
+ (id)keyPathsForValuesAffectingCanSeekToBeginning;
+ (id)keyPathsForValuesAffectingCanSeekToEnd;
+ (id)keyPathsForValuesAffectingMaxTime;
+ (id)keyPathsForValuesAffectingHasAudioMediaSelectionOptions;
+ (id)keyPathsForValuesAffectingPlaying;
+ (id)keyPathsForValuesAffectingHasMediaSelectionOptions;

- (id)player;
- (id)init;
- (void)dealloc;
- (void)seekByTimeInterval:(double)a0 toleranceBefore:(double)a1 toleranceAfter:(double)a2;
- (id)forwardingTargetForSelector:(SEL)a0;
- (void)beginScanningForward:(id)a0;
- (void)toggleMuted:(id)a0;
- (void)play:(id)a0;
- (void)beginScrubbing:(id)a0;
- (void)skipBackwardThirtySeconds:(id)a0;
- (id).cxx_construct;
- (void)seekToEnd:(id)a0;
- (void)togglePlayback:(id)a0;
- (BOOL)hasLiveStreamingContent;
- (void)seekToBeginning:(id)a0;
- (void)pause:(id)a0;
- (double)currentTimeWithinEndTimes;
- (void)setCurrentTimeWithinEndTimes:(double)a0;
- (void)observeValueForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2 context:(void *)a3;
- (void)endScrubbing:(id)a0;
- (void).cxx_destruct;
- (void)endScanningBackward:(id)a0;
- (void)seekToTime:(double)a0;
- (void)seekToTime:(double)a0 toleranceBefore:(double)a1 toleranceAfter:(double)a2;
- (void)endScanningForward:(id)a0;
- (void)togglePlaybackEvenWhenInBackground:(id)a0;
- (BOOL)hasSeekableLiveStreamingContent;
- (void)gotoEndOfSeekableRanges:(id)a0;
- (void)seekChapterBackward:(id)a0;
- (void)updateMinMaxTiming;
- (void)beginScanningBackward:(id)a0;
- (void)seekChapterForward:(id)a0;
- (void)seekByTimeInterval:(double)a0;
- (void)volumeChanged:(double)a0;
- (void)setAllowsPictureInPicture:(BOOL)a0;
- (void)setDefaultPlaybackRate:(double)a0 fromJavaScript:(BOOL)a1;
- (void)setRate:(double)a0 fromJavaScript:(BOOL)a1;

@end