@class FBSSceneSettings, NSString, FBSSceneHostHandle, BSAuditToken, FBSSceneDefinition, FBSSceneIdentity, FBSSceneSpecification, FBSSceneIdentityToken, FBSSerialQueue, NSMutableArray, FBSSceneClientSettings, NSMapTable; @protocol FBSSceneDelegate, FBSSceneUpdater, FBSSceneClientAgent; @interface FBSScene : NSObject { FBSSerialQueue *_callOutQueue; BOOL _hasAgent; id _callOutQueue_agent; NSMutableArray *_callOutQueue_agentSessions; id /* block */ _callOutQueue_agentMessageHandler; BOOL _callOutQueue_agentInvalidateCalled; BOOL _callOutQueue_mutationLocked; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _lock; id _lock_updater; FBSSceneSettings *_lock_settings; FBSSceneClientSettings *_lock_clientSettings; id _lock_delegate; NSMutableArray *_lock_sceneObservers; NSMapTable *_lock_components; FBSSceneHostHandle *_lock_hostHandle; } @property (readonly, nonatomic) FBSSceneDefinition *definition; @property (readonly, nonatomic) BSAuditToken *hostAuditToken; @property (readonly, copy, nonatomic) NSString *identifier; @property (readonly, nonatomic) FBSSceneIdentity *identity; @property (readonly, nonatomic) FBSSceneIdentityToken *identityToken; @property (readonly, nonatomic) FBSSceneSpecification *specification; @property (weak, nonatomic) id delegate; @property (readonly, nonatomic) FBSSceneSettings *settings; @property (readonly, nonatomic) FBSSceneClientSettings *clientSettings; @property (readonly, nonatomic) FBSSceneHostHandle *hostHandle; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; - (id)hostProcess; - (id)_observers; - (void)closeSession:(id)a0; - (id)init; - (void)removeObserver:(id)a0; - (id)callOutQueue; - (void)agent:(id)a0 registerMessageHandler:(id /* block */)a1; - (id)parameters; - (id)succinctDescriptionBuilder; - (void)sendActions:(id)a0; - (void)attachContext:(id)a0; - (id)descriptionBuilderWithMultilinePrefix:(id)a0; - (void)detachContext:(id)a0; - (BOOL)performSnapshotWithContext:(id)a0; - (BOOL)snapshotRequestAllowSnapshot:(id)a0; - (BOOL)snapshotRequest:(id)a0 performWithContext:(id)a1; - (id)descriptionWithMultilinePrefix:(id)a0; - (id)openSessionWithName:(id)a0 executionPolicy:(id)a1; - (void).cxx_destruct; - (id)contexts; - (id)succinctDescription; - (id)layers; - (BOOL)isEqual:(id)a0; - (id)loggingIdentifier; - (void)updateClientSettingsWithBlock:(id /* block */)a0; - (void)addObserver:(id)a0; - (id)clientProcess; - (void)agent:(id)a0 sendMessage:(id)a1 withResponse:(id /* block */)a2; - (id)counterpartAgent; - (id)display; - (void)attachLayer:(id)a0; - (void)detachLayer:(id)a0; - (id)fbsDisplay; - (BOOL)invalidateSnapshotWithContext:(id)a0; - (void)updateClientSettingsWithTransitionBlock:(id /* block */)a0; - (void)updateClientSettings:(id)a0 withTransitionContext:(id)a1; - (void)_callOutQueue_updateExtensionsFromSettings:(id)a0 toSettings:(id)a1 withDiff:(id)a2; - (id)snapshotRequest; - (void)_callOutQueue_didCreateWithTransitionContext:(id)a0 completion:(id /* block */)a1; - (void)_callOutQueue_didUpdateHostHandle:(id)a0; - (void)_callOutQueue_invalidate; - (void)_callOutQueue_invalidateAgent; - (void)_callOutQueue_willDestroyWithTransitionContext:(id)a0 completion:(id /* block */)a1; - (id)_createTransitionContext; - (BOOL)_hasAgent; - (id)_initWithUpdater:(id)a0 identityToken:(id)a1 identity:(id)a2 specification:(id)a3 settings:(id)a4 initialClientSettings:(id)a5 hostHandle:(id)a6; - (id)_lock_allComponents; - (void)_updateClientSettings:(id)a0 withTransitionContext:(id)a1; - (void)addObserver:(id)a0 withConfiguration:(id /* block */)a1; - (void)attachSceneContext:(id)a0; - (id)componentForExtension:(Class)a0 ofClass:(Class)a1; - (BOOL)conformsToExtension:(Class)a0; - (void)detachSceneContext:(id)a0; - (void)sendActions:(id)a0 toExtension:(Class)a1; - (void)updateClientSettings:(id /* block */)a0; - (void)updater:(id)a0 didReceiveActions:(id)a1 forExtension:(Class)a2; - (void)updater:(id)a0 didReceiveMessage:(id)a1 withResponse:(id /* block */)a2; - (void)updater:(id)a0 didUpdateSettings:(id)a1 withDiff:(id)a2 transitionContext:(id)a3 completion:(id /* block */)a4; @end