luxlabs header browser preview


@class UIWindow, NSString, RPPGPipViewController, RPBroadcastController, UIView, NSURL, RPPipViewController;
@protocol RPScreenRecorderDelegate, RPScreenRecorderPrivateDelegate, RPScreenCaptureKitControlCenterManagerDelegate, RPScreenRecorderScreenCapureKitDelegate, RPScreenCaptureKitContentSharingPickerDelegate, RPScreenRecorderScreenCapureKitPreviewDelegate;

@interface RPScreenRecorder : NSObject <RPPreviewViewControllerDelegate, UINavigationControllerDelegate, UIPopoverPresentationControllerDelegate>

@property (nonatomic) unsigned long long previousAudioSessionOptions;
@property (retain, nonatomic) NSString *previousAudioCategory;
@property (nonatomic, getter=isRecording) BOOL recording;
@property (nonatomic, getter=isAvailable) BOOL available;
@property (retain, nonatomic) UIWindow *windowToRecord;
@property (retain, nonatomic) UIView *cameraPreviewView;
@property (retain, nonatomic) RPPipViewController *pipViewController;
@property (retain, nonatomic) RPPGPipViewController *pgPipViewController;
@property (copy, nonatomic) id /* block */ saveVideoToCameraRollCompletionBlock;
@property (nonatomic) BOOL hasUserConsentForCamera;
@property (nonatomic) BOOL hasUserConsentForMicrophone;
@property (copy, nonatomic) id /* block */ captureHandler;
@property (retain, nonatomic) RPBroadcastController *activeBroadcastController;
@property (nonatomic, getter=isPaused) BOOL paused;
@property (nonatomic, setter=updateProcessIDForAudioCapture:) int processIDForAudioCapture;
@property (nonatomic) BOOL systemRecording;
@property (retain, nonatomic) NSURL *broadcastURL;
@property (retain, nonatomic) id<RPScreenRecorderPrivateDelegate> privateDelegate;
@property (retain, nonatomic) id<RPScreenRecorderScreenCapureKitDelegate> screenCaptureKitDelegate;
@property (retain, nonatomic) id<RPScreenCaptureKitControlCenterManagerDelegate> screenCaptureKitControlCenterManagerDelegate;
@property (retain, nonatomic) id<RPScreenCaptureKitContentSharingPickerDelegate> screenCaptureKitContentSharingPickerDelegate;
@property (retain, nonatomic) id<RPScreenRecorderScreenCapureKitPreviewDelegate> screenCaptureKitPreviewDelegate;
@property (retain, nonatomic) id<RPScreenRecorderDelegate> secondDelegate;
@property (weak, nonatomic) id<RPScreenRecorderDelegate> delegate;
@property (nonatomic, getter=isMicrophoneEnabled) BOOL microphoneEnabled;
@property (nonatomic, getter=isCameraEnabled) BOOL cameraEnabled;
@property (nonatomic) long long cameraPosition;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

+ (id)sharedRecorder;

- (id)init;
- (void)dealloc;
- (void).cxx_destruct;
- (void)startCaptureWithHandler:(id /* block */)a0 completionHandler:(id /* block */)a1;
- (void)stopCaptureWithHandler:(id /* block */)a0;
- (id)audioQueue;
- (id)processQueue;
- (void)startSystemRecordingWithMicrophoneEnabled:(BOOL)a0 handler:(id /* block */)a1;
- (void)stopSystemRecordingWithURLHandler:(id /* block */)a0;
- (id)videoQueue;
- (void)startRecordingWithHandler:(id /* block */)a0;
- (void)stopRecordingWithHandler:(id /* block */)a0;
- (void)stopRecordingWithOutputURL:(id)a0 completionHandler:(id /* block */)a1;
- (void)resumeInAppClip;
- (void)startInAppBroadcastWithHandler:(id /* block */)a0;
- (void)stopSystemBroadcastWithHandler:(id /* block */)a0;
- (id)applicationWindow;
- (void)captureHandlerWithAudioSample:(id)a0 bufferType:(long long)a1;
- (void)captureHandlerWithSample:(id)a0 timingData:(id)a1;
- (BOOL)checkContextID:(id)a0 withHandler:(id /* block */)a1;
- (void)clientDidUpdateBroadcastServiceInfo:(id)a0;
- (id)currentWindowLayerContextID;
- (struct CGSize { double x0; double x1; })currentWindowSize;
- (void)didStopRecordingWithError:(id)a0 previewViewController:(id)a1;
- (void)discardRecordingWithHandler:(id /* block */)a0;
- (void)exportClipToURL:(id)a0 duration:(double)a1 completionHandler:(id /* block */)a2;
- (id)handleUnavailableState;
- (void)instantiatePipView;
- (BOOL)isConnectionInterruptedOrInvalid:(id)a0;
- (void)isScreenRecordingAvailable;
- (void)notifyDelegateOfUpdatedState;
- (void)pauseInAppBroadcast;
- (void)pauseInAppCapture;
- (void)pauseInAppRecording;
- (void)recordingDidPause;
- (void)recordingDidStopWithError:(id)a0 movieURL:(id)a1;
- (void)recordingLockInterrupted:(id)a0;
- (void)recordingTimerDidUpdate:(id)a0;
- (void)registerAppForStateChangeSetRotationLock:(BOOL)a0;
- (void)removePipView;
- (void)resumeInAppBroadcast;
- (void)resumeInAppCapture;
- (void)resumeInAppRecording;
- (void)resumeSystemBroadcast;
- (void)resumeSystemRecording;
- (void)saveClipToCameraRoll:(id)a0 handler:(id /* block */)a1;
- (void)saveVideo:(id)a0 handler:(id /* block */)a1;
- (void)saveVideoToCameraRoll:(id)a0 handler:(id /* block */)a1;
- (BOOL)screenRecordingAllowed;
- (BOOL)screenRecordingSupportedOnDevice;
- (void)setWindowRotationLocked:(BOOL)a0;
- (void)setupSystemBroadcastWithExtension:(id)a0 handler:(id /* block */)a1;
- (BOOL)shouldNotifyDidStop;
- (void)shouldResumeSessionType:(id)a0;
- (void)startClipBufferingWithCompletionHandler:(id /* block */)a0;
- (void)startRecordingWithMicrophoneEnabled:(BOOL)a0 handler:(id /* block */)a1;
- (void)startSystemBroadcastWithHandler:(id /* block */)a0;
- (void)stopClipBufferingWithCompletionHandler:(id /* block */)a0;
- (void)stopInAppBroadcastWithHandler:(id /* block */)a0;
- (void)stopRecordingWithAdditionalShareFileAttachment:(id)a0 overrideShareMessage:(id)a1 previewViewControllerOverrideTintColor:(id)a2 handler:(id /* block */)a3;
- (void)stopRecordingWithVideoURLHandler:(id /* block */)a0;
- (void)stopSystemRecording:(id /* block */)a0;
- (void)updateRecordingAvailability:(id)a0;
- (void)updateScreenRecordingStateWithCurrentState:(id)a0;
- (void)updateStateWithActive:(BOOL)a0 error:(id)a1;

@end