#import <UIKit/UIKit.h>
#import <ZoomVideoSDK/ZoomVideoSDK.h>

/**
 * Native view that renders the active broadcast stream's video to its
 * surface (via AVSampleBufferDisplayLayer fed CVPixelBufferRef frames)
 * and plays the broadcast audio (via AVAudioEngine + AVAudioPlayerNode).
 *
 * Auto-subscribes the SDK's singleton broadcast streaming viewer helper
 * on willMoveToWindow: (entering window) and unsubscribes on
 * willMoveToWindow:nil (leaving window) / dealloc.
 *
 * Prerequisite: the host app must already be in StreamingJoinStatus.Joined
 * state (via [[ZoomVideoSDK shareInstance] getBroadcastStreamingViewerHelper]
 * joinStreaming:]) before mounting this view.
 */
@interface RNZoomBroadcastStreamingView : UIView <ZoomVideoSDKBroadcastStreamingVideoDelegate, ZoomVideoSDKBroadcastStreamingAudioDelegate>

/// Subscription resolution for video. Default ZoomVideoSDKVideoResolution_720.
@property (nonatomic, assign) ZoomVideoSDKVideoResolution videoResolution;

@end
