@class JFXPixelRotationSession, NSObject, JFXRemoteCommandServer, CFXThermalPolicyManager, UIView, CFXCameraControlsViewController, NSString, UIColor, CFXEffectBrowserViewController, NSTimer, JFXThreadSafeDictionary, JFXMetadataValidator, CFXCaptureViewController, CFXStageManagerWarningViewController, CFXCameraStreamBufferQueue; @protocol OS_dispatch_queue, CFXCameraViewControllerDelegate; @interface CFXCameraViewController : UIViewController @property (retain, nonatomic) CFXCaptureViewController *captureViewController; @property (retain, nonatomic) CFXEffectBrowserViewController *effectBrowserViewController; @property (retain, nonatomic) CFXCameraControlsViewController *cameraControlsViewController; @property (nonatomic) long long cameraPosition; @property (nonatomic) long long initialFlashMode; @property (nonatomic) BOOL cameraControlsShown; @property (nonatomic) BOOL capturingFunCamMedia; @property (retain, nonatomic) NSString *effectBrowserPresentedAppIdentifier; @property (retain, nonatomic) JFXRemoteCommandServer *remoteCommandServer; @property (retain, nonatomic) UIView *effectsPickerSnapshotContainerView; @property (readonly, nonatomic) NSObject *externalCaptureSessionInputDeserializationQueue; @property (readonly, nonatomic) NSObject *externalCaptureSessionInputProcessingQueue; @property (readonly, nonatomic) NSObject *externalCaptureSessionOutputProcessingQueue; @property (retain, nonatomic) JFXPixelRotationSession *externalCaptureSessionRotationSession; @property (nonatomic) long long lastDeviceOrientation; @property (nonatomic) long long externalCaptureSessionCameraPosition; @property (nonatomic) BOOL externalCaptureSessionCameraPositionSet; @property (retain, nonatomic) JFXThreadSafeDictionary *externalCaptureSessionInputFrameTimestamps; @property (nonatomic) struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } externalPresentationRect; @property (nonatomic) struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } externalContentRect; @property (retain, nonatomic) NSTimer *effectsInStreamTimer; @property (retain, nonatomic) CFXThermalPolicyManager *thermalPolicyManager; @property (retain, nonatomic) JFXMetadataValidator *metadataValidator; @property (retain, nonatomic) CFXCameraStreamBufferQueue *outputBufferQueue; @property (retain, nonatomic) CFXStageManagerWarningViewController *stageManagerWarning; @property (nonatomic) BOOL isEffectsAnalyticsRunning; @property (readonly, nonatomic) long long aspectRatioCrop; @property (readonly, nonatomic) long long captureMode; @property (weak, nonatomic) id delegate; @property (readonly, nonatomic) long long devicePosition; @property (retain, nonatomic) UIView *effectsPickerDrawer; @property (readonly, nonatomic, getter=isEffectsPickerHidden) BOOL effectsPickerHidden; @property (readonly, nonatomic) long long effectsState; @property (readonly, nonatomic) long long flashMode; @property (readonly, nonatomic) long long mode; @property (nonatomic) BOOL showsViewfinder; @property (nonatomic) double userInterfaceAlpha; @property (nonatomic) BOOL usesInternalCaptureSession; @property (retain, nonatomic) UIColor *animojiOnlyBackgroundColor; @property (retain, nonatomic) NSString *animojiOnlyEffectID; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (void)initialize; + (void)preheatWithWindow:(id)a0 captureMode:(long long)a1 devicePosition:(long long)a2 aspectRatioCrop:(long long)a3; - (void)dealloc; - (void)viewDidLayoutSubviews; - (void)viewDidLoad; - (id)initWithMode:(long long)a0; - (void)loadView; - (void).cxx_destruct; - (void)viewDidAppear:(BOOL)a0; - (void)stopCaptureSession; - (void)viewWillTransitionToSize:(struct CGSize { double x0; double x1; })a0 withTransitionCoordinator:(id)a1; - (void)willMoveToParentViewController:(id)a0; - (void)startCaptureSession; - (void)removeAllEffects; - (void)effectBrowserViewController:(id)a0 didSelectAppWithIdentifier:(id)a1; - (void)effectBrowserViewController:(id)a0 didSelectEffect:(id)a1; - (void)effectBrowserViewController:(id)a0 willChangeDockHeight:(double)a1; - (id)initWithCaptureMode:(long long)a0 devicePosition:(long long)a1 flashMode:(long long)a2 aspectRatioCrop:(long long)a3; - (void)renderFrameWithImageDataArchive:(id)a0 imagePixelBuffer:(struct __CVBuffer { } *)a1 depthPixelBuffer:(struct __CVBuffer { } *)a2 orientation:(long long)a3 presentationRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a4 contentsRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a5; - (void)resign; - (void)setEffectsPickerHidden:(BOOL)a0 animated:(BOOL)a1; - (BOOL)shouldAlwaysPresentExpandedAppsForEffectBrowserViewController:(id)a0; - (id)animojiEffectID; - (void)JFX_exitAnalytics; - (void)CFX_automationAddEffectWithEffectTypeIdentifier:(id)a0 identifier:(id)a1 string:(id)a2; - (BOOL)allowLandscapeForEffectBrowserViewController:(id)a0; - (id)cameraControlsViewControllerForCaptureViewController:(id)a0; - (void)captureViewController:(id)a0 didCaptureMediaItem:(id)a1; - (void)captureViewController:(id)a0 didChangeEffectComposition:(id)a1; - (void)captureViewController:(id)a0 didRenderFrame:(id)a1; - (void)captureViewController:(id)a0 presentationRectWasPinchedWithState:(long long)a1 scale:(double)a2 velocity:(double)a3; - (void)captureViewController:(id)a0 switchedToCameraPosition:(long long)a1; - (void)captureViewControllerCameraFlipButtonWasTapped:(id)a0; - (void)captureViewControllerDidStartVideoRecording:(id)a0; - (void)captureViewControllerDidStopVideoRecording:(id)a0; - (void)captureViewControllerDoneButtonWasTapped:(id)a0; - (void)captureViewControllerEffectsButtonWasTapped:(id)a0; - (void)captureViewControllerPresentationRectWasDoubleTapped:(id)a0; - (void)captureViewControllerStartCaptureSession:(id)a0; - (void)captureViewControllerStopCaptureSession:(id)a0; - (void)effectBrowserViewController:(id)a0 didDropOverlayEffect:(id)a1 atScreenLocation:(struct CGPoint { double x0; double x1; })a2 atScreenSize:(struct CGSize { double x0; double x1; })a3 rotationAngle:(double)a4; - (void)effectBrowserViewController:(id)a0 didRemoveAllEffectsOfType:(id)a1; - (void)effectBrowserViewController:(id)a0 filterPickerPreviewBackgroundImageAtSizeInPixels:(struct CGSize { double x0; double x1; })a1 completion:(id /* block */)a2; - (double)effectBrowserViewController:(id)a0 screenTopBarHeightForWindowBounds:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 orientation:(long long)a2; - (void)effectBrowserViewControllerDidStartCaptureSession:(id)a0; - (void)effectBrowserViewControllerDidStopCaptureSession:(id)a0; - (id)initWithCaptureMode:(long long)a0; - (id)localizedPromptForHidingAnimojiForEffectBrowserViewController:(id)a0; - (void)noteInputFrameWithTimestamp:(double)a0; - (struct { long long x0; int x1; unsigned int x2; long long x3; })noteOutputFrameWithTimestamp:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0; - (void)remoteCommandServer:(id)a0 didReceiveAddShapeCommandWithIdentifier:(id)a1; - (void)remoteCommandServer:(id)a0 didReceiveAddStickerCommandWithData:(id)a1 offset:(struct CGPoint { double x0; double x1; })a2 scale:(double)a3 rotation:(double)a4; - (void)remoteCommandServer:(id)a0 didReceiveAddStickerCommandWithIdentifier:(id)a1 offset:(struct CGPoint { double x0; double x1; })a2 scale:(double)a3 rotation:(double)a4; - (void)remoteCommandServer:(id)a0 didReceiveAddTextCommandWithIdentifier:(id)a1 string:(id)a2; - (void)remoteCommandServer:(id)a0 didReceiveRemoveEffectsCommandWithTypeIdentifiers:(id)a1; - (void)remoteCommandServer:(id)a0 didReceiveSetAnimojiCommandWithIdentifier:(id)a1; - (void)remoteCommandServer:(id)a0 didReceiveSetFilterCommandWithIdentifier:(id)a1; - (void)remoteCommandServer:(id)a0 didReceiveSetMemojiCommandWithContentsOfFile:(id)a1; - (void)renderFrameWithImageData:(id)a0 orientation:(long long)a1 presentationRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a2 contentsRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a3; - (id)selectedAnimojiIdentifierForEffectBrowserViewController:(id)a0; - (id)selectedFilterIdentifierForEffectBrowserViewController:(id)a0; - (void)setTransitionState:(long long)a0 animated:(BOOL)a1; - (BOOL)shouldRotateCellsForDeviceOrientation; - (void)stageManagerWarningDoneButtonWasTapped:(id)a0; - (void)updateUIForVideoRecording:(BOOL)a0; @end