@class BSProcessHandle, FBSProcessExecutionProvision, FBSProcessTerminationRequest, FBProcessWatchdogEventContext, NSMutableArray, NSString, BSMachPortTaskNameRight, RBSProcessHandle, FBProcessExitContext, NSMutableSet, RBSProcessIdentity, RBSAssertion, NSError, BSAbsoluteMachTimer, RBSProcessState, FBSProcessWatchdogPolicy, FBWorkspace, NSObject, FBProcessState, RBSTarget, FBProcessWatchdog, FBProcessCPUStatistics, FBSApplicationInfo, FBProcessExecutionContext, BSAuditToken; @protocol OS_dispatch_queue, FBProcessDelegate, FBProcessWatchdogProviding; @interface FBProcess : NSObject <FBProcessBootstrapping, FBSProcessInternal, RBSProcessMatching, FBSProcess> { struct os_unfair_recursive_lock_s { struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } ourl_lock; unsigned int ourl_count; } _lock; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _observerLock; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _bootstrapLock; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _watchdogProviderLock; NSString *_description; NSError *_bootstrapError; NSMutableSet *_observerLock_observers; RBSAssertion *_lock_gracefulExitAssertion; NSMutableArray *_lock_launchCompletionBlocks; NSMutableArray *_lock_bootstrapBlocks; FBProcessState *_lock_state; RBSProcessState *_lock_rbsState; unsigned char _lock_sceneState; FBProcessCPUStatistics *_lock_watchdogCPUStatistics; FBSProcessTerminationRequest *_lock_terminationRequest; FBProcessWatchdogEventContext *_lock_terminationWatchdogContext; long long _terminationReason; NSMutableArray *_lock_terminateRequestCompletionBlocks; BSAbsoluteMachTimer *_lock_exitTimer; id<FBProcessWatchdogProviding> _watchdogProvider; FBProcessWatchdog *_lock_watchdog; FBSProcessWatchdogPolicy *_sceneCreateWatchdogPolicy; FBSProcessExecutionProvision *_lock_latestViolatedProvision; BOOL _lock_pendingExit; BOOL _lock_invalidated; BOOL _lock_attemptedBootstrap; BOOL _lock_waitForDebugger; BOOL _lock_updatingState; BOOL _lock_didExit; BOOL _lock_launchFinalized; BOOL _lock_launchSuccess; long long _lock_executableLivesOnSystemPartition; long long _lock_platformBinary; BOOL _calloutQueue_sentWillExit; BOOL _calloutQueue_sentDidExit; BOOL _calloutQueue_sentAppWillLaunch; BOOL _calloutQueue_sentAppDidLaunch; } @property (class, readonly, retain, nonatomic) NSObject<OS_dispatch_queue> *calloutQueue; @property (readonly, nonatomic) BOOL executableLivesOnSystemPartition; @property (readonly, nonatomic, getter=isPlatformBinary) BOOL platformBinary; @property (readonly, nonatomic) double execTime; @property (readonly, nonatomic) RBSTarget *target; @property (readonly, nonatomic) RBSProcessHandle *rbsHandle; @property (readonly, nonatomic) BSAuditToken *auditToken; @property (readonly, weak, nonatomic) id<FBProcessDelegate> delegate; @property (readonly, nonatomic) unsigned char assertionState; @property (readonly, nonatomic) FBWorkspace *workspace; @property (readonly, nonatomic) BSProcessHandle *handle; @property (readonly, nonatomic) RBSProcessIdentity *identity; @property (readonly, nonatomic) FBSApplicationInfo *applicationInfo; @property (readonly, copy, nonatomic) NSString *bundleIdentifier; @property (readonly, copy, nonatomic) NSString *executablePath; @property (readonly, copy, nonatomic) FBProcessExecutionContext *executionContext; @property (readonly, nonatomic) FBProcessExitContext *exitContext; @property (readonly, copy, nonatomic) FBProcessState *state; @property (readonly, nonatomic) int pid; @property (readonly, nonatomic) long long versionedPID; @property (readonly, nonatomic, getter=isRunning) BOOL running; @property (readonly, nonatomic, getter=isForeground) BOOL foreground; @property (readonly, nonatomic, getter=isBeingDebugged) BOOL beingDebugged; @property (readonly, nonatomic, getter=isCurrentProcess) BOOL currentProcess; @property (readonly, nonatomic, getter=isFinishedLaunching) BOOL finishedLaunching; @property (readonly, nonatomic, getter=isPendingExit) BOOL pendingExit; @property (readonly, copy, nonatomic) NSString *name; @property (readonly, retain, nonatomic) BSMachPortTaskNameRight *taskNameRight; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (id)createProcessWithHandle:(id)a0; + (id)_currentProcess; + (id)createCurrentProcess; + (id)createProcessWithExecutionContext:(id)a0; - (id)processPredicate; - (BOOL)matchesProcess:(id)a0; - (id)_observers; - (id)init; - (void)dealloc; - (void)removeObserver:(id)a0; - (long long)taskState; - (id)succinctDescriptionBuilder; - (void)_bootstrapDidComplete; - (void)invalidate; - (id)descriptionBuilderWithMultilinePrefix:(id)a0; - (long long)visibility; - (void)_noteProcessDidExit:(id)a0; - (BOOL)hasEntitlement:(id)a0; - (void)setWatchdogProvider:(id)a0; - (id)valueForEntitlement:(id)a0; - (BOOL)isApplicationProcess; - (id)descriptionWithMultilinePrefix:(id)a0; - (void)_finishInit; - (void).cxx_destruct; - (id)succinctDescription; - (void)addObserver:(id)a0; - (id)_createBootstrapContext; - (BOOL)finishedLaunching; - (void)_terminateWithRequest:(id)a0 forWatchdog:(id)a1; - (BOOL)_watchdog:(id)a0 shouldTerminateWithDeclineReason:(out id *)a1; - (id)_watchdog:(id)a0 terminationRequestForViolatedProvision:(id)a1 error:(id)a2; - (void)_configureIntrinsicsFromHandle:(id)a0; - (void)_bootstrapAndExec; - (void)_executeBlockAfterBootstrap:(id /* block */)a0; - (void)_executeBlockAfterLaunchCompletes:(id /* block */)a0; - (void)_executeBlockAsCurrentProcess:(id /* block */)a0; - (id)_initWithIdentity:(id)a0 handle:(id)a1 executionContext:(id)a2; - (void)_killForReason:(long long)a0 andReport:(BOOL)a1 withDescription:(id)a2 completion:(id /* block */)a3; - (void)_launchDidComplete:(BOOL)a0 finalizeBlock:(id /* block */)a1; - (void)_lock_consumeLock_executeTerminationRequest; - (void)_lock_consumeLock_performGracefulKill; - (id)_newWatchdogForContext:(id)a0 completion:(id /* block */)a1; - (void)_noteAssertionStateDidChange; - (void)_notePendingExitForReason:(id)a0; - (void)_noteStateDidUpdate:(id)a0; - (void)_processDidExitWithContext:(id)a0; - (void)_rebuildState; - (void)_rebuildState:(id)a0; - (void)_setSceneLifecycleState:(unsigned char)a0; - (BOOL)_shouldWatchdogWithDeclineReason:(id *)a0; - (BOOL)_startWatchdogTimerForContext:(id)a0; - (void)_terminateWithRequest:(id)a0 completion:(id /* block */)a1; - (void)_updateStateWithBlock:(id /* block */)a0; - (id)_watchdogProvider; - (long long)_watchdogReportType; - (void)bootstrapLock:(id /* block */)a0; - (BOOL)bootstrapWithDelegate:(id)a0; - (BOOL)isExtensionProcess; - (BOOL)isSystemApplicationProcess; - (void)noteProcessPublished; @end