luxlabs header browser preview


@class PBFApplicationStateMonitor, NSDictionary, PBFPosterExtensionDataStoreAssertionManager, BSAtomicFlag, PBFPosterSnapshotManager, NSString, NSMutableSet, ATXFaceGalleryConfiguration, NSArray, NSMutableDictionary, PBFPosterExtensionDataStorePrewarmHelper, NSObject, PRSwitcherConfiguration, NSSet, PBFPosterExtensionInstanceCollection, PBFGalleryConfiguration, PBFComplicationSnapshotService, PBFPosterExtensionDataStoreSQLiteDatabase, PBFGalleryController, NSURL, FCActivityManager, NSNumber, NSHashTable;
@protocol PRPosterExtensionProvider, PBFRuntimeAssertionProviding, BSInvalidatable, OS_dispatch_queue;

@interface PBFPosterExtensionDataStore : NSObject <PRPosterExtensionProviderObserver, PBFPosterExtensionDataStoreAssertionManagerObserver, PBFBehaviorAssertionObserver, PBFPosterSnapshotManagerObserving, PBFModelCoordinatorProviding, PBFGalleryControllerObserving, PBFPosterRoleCoordinatorDelegate, PBFPosterRoleProcessorObserver, PBFExtensionProviding, BSInvalidatable, PBFBehaviorAssertionProviding> {
    NSURL *_baseURL;
    NSURL *_extensionEnvironmentURL;
    id<PBFRuntimeAssertionProviding> _runtimeAssertionProvider;
    id<BSInvalidatable> _foregroundKeepDatabaseAliveAssertion;
    PBFComplicationSnapshotService *_complicationSnapshotService;
    PBFPosterExtensionDataStoreSQLiteDatabase *_database;
    PBFGalleryController *_galleryController;
    NSHashTable *_observers;
    NSMutableDictionary *_extensionProvidingLock_extensionStoreCoordinatorForExtensionBundleIdentifier;
    PBFPosterExtensionInstanceCollection *_instanceCollection;
    PBFGalleryConfiguration *_stateLock_configuration;
    ATXFaceGalleryConfiguration *_stateLock_suggestedLayout;
    NSMutableDictionary *_stateLock_extensionStoreCoordinatorForExtensionBundleIdentifier;
    NSMutableDictionary *_stateLock_descriptorsForExtensionBundleIdentifier;
    NSMutableDictionary *_stateLock_staticDescriptorsForExtensionBundleIdentifier;
    PRSwitcherConfiguration *_stateLock_switcherConfiguration;
    long long _stateLock_maximumPosterConfigurationCount;
    NSMutableSet *_stateLock_activePathAssertions;
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _extensionProvidingLock;
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _stateLock;
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _activePosterLock;
    NSObject<OS_dispatch_queue> *_notificationQueue;
    NSObject<OS_dispatch_queue> *_clientSnapshotRequestQueue;
    BSAtomicFlag *_invalidationFlag;
    BSAtomicFlag *_isPrewarmingFlag;
    PBFPosterExtensionDataStorePrewarmHelper *_prewarmer;
    BOOL _stateLock_updatingExtensions;
    BOOL _stateLock_initialRoleCoordinatorSetupPerformed;
    NSNumber *_stateLock_hasBeenUnlockedSinceBoot;
    PBFApplicationStateMonitor *_applicationStateMonitor;
    NSDictionary *_roleToRoleCoordinator;
    NSMutableDictionary *_activePosterLock_roleToActivePosterConfiguration;
    NSNumber *_stateLock_wasMigrationJustPerformed;
    BSAtomicFlag *_extensionsInputIsValidAtomicFlag;
}

@property (class, readonly) long long defaultMaximumPosterConfigurationCount;
@property (class, readonly) NSSet *supportedRoles;
@property (class, readonly) FCActivityManager *sharedActivityManager;
@property (class, readonly) long long minimumDataStoreVersion;
@property (class, readonly) long long dataStoreVersion;

@property (readonly, nonatomic) NSURL *extensionStoreCoordinatorContainerURL;
@property (readonly, nonatomic) NSURL *galleryCacheURL;
@property (readonly, nonatomic) NSURL *extensionStoreCoordinatorPurgatoryURL;
@property (readonly, nonatomic) PBFPosterExtensionDataStoreAssertionManager *assertionManager;
@property (readonly, nonatomic) PBFPosterSnapshotManager *snapshotManager;
@property (nonatomic) long long maximumPosterConfigurationCount;
@property (readonly, nonatomic) id<PRPosterExtensionProvider> extensionProvider;
@property (readonly, nonatomic) NSURL *URL;
@property (readonly, copy, nonatomic) NSArray *knownExtensions;
@property (readonly, copy, nonatomic) PRSwitcherConfiguration *switcherConfiguration;
@property (readonly, nonatomic) BOOL canPersistNewPosterConfiguration;
@property (readonly, nonatomic) PBFGalleryConfiguration *currentGalleryConfiguration;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

+ (id)galleryCacheURLForBaseURL:(id)a0;
+ (id)dataStoreExtensionContainerURLForBaseURL:(id)a0;

- (void)fetchPosterSnapshotsForRequest:(id)a0 completion:(id /* block */)a1;
- (BOOL)_stateLock_processEvents:(id)a0 context:(id)a1 error:(out id *)a2;
- (id)_buildSwitcherConfigurationWithContext:(id)a0;
- (id)exportPosterConfigurationMatchingUUID:(id)a0 error:(out id *)a1;
- (BOOL)deletePosterDescriptorsForExtensionBundleIdentifier:(id)a0 error:(out id *)a1;
- (id)acquireSnapshotterDisabledAssertionForProvider:(id)a0 withReason:(id)a1;
- (id)_buildRoleCoordinatorTransitionContextForActivity:(id)a0;
- (void)_stateLock_fetchPosterSnapshotsWithClientRequest:(id)a0 completion:(id /* block */)a1;
- (void)refreshSnapshotForGalleryItemsMatchingDescriptorIdentifier:(id)a0 extensionIdentifier:(id)a1 completion:(id /* block */)a2;
- (void)_stateLock_duplicatePosterConfigurationMatchingUUID:(id)a0 completion:(id /* block */)a1;
- (id)pbf_posterExtensionStoreCoordinatorsForRole:(id)a0;
- (void)_stateLock_cullDataForInvalidExtensions;
- (void)_stateLock_enumerateConfigurationStoreCoordinators:(id /* block */)a0;
- (void)removeObserver:(id)a0;
- (void)updatePosterConfiguration:(id)a0 updates:(id)a1 completion:(id /* block */)a2;
- (id)acquireExtensionInstance:(id)a0 reason:(id)a1 error:(out id *)a2;
- (id)pbf_posterSnapshotCoordinatorForIdentity:(id)a0;
- (BOOL)togglePosterConfigurationHiddenMatchingUUID:(id)a0 error:(out id *)a1;
- (id)dataFreshnessForComponents:(id)a0;
- (void)_notifyObserversDidUpdateConfiguration:(id)a0;
- (id)_stateLock_prepareReloadConfigurationOperationForExtension:(id)a0 path:(id)a1 locationInUse:(BOOL)a2 sessionInfo:(id)a3 powerLogReason:(long long)a4 error:(out id *)a5;
- (void)fetchCurrentGalleryConfiguration:(id /* block */)a0;
- (BOOL)updateDataStoreForIncomingAvailableFocusModeChange:(id)a0 error:(out id *)a1;
- (id)activePosterConfigurationForRole:(id)a0 assocPoster:(out id *)a1;
- (id)posterWithUUID:(id)a0 error:(out id *)a1;
- (void)pbf_enumerateSnapshotCoordinators:(id /* block */)a0;
- (BOOL)_stateLock_cleanupAfterDeletedExtension:(id)a0 error:(out id *)a1;
- (BOOL)_stateLock_issueDescriptorUpdatedEventsForExtension:(id)a0 preUpdate:(id)a1 postUpdate:(id)a2 error:(out id *)a3;
- (BOOL)deletePosterConfigurationsMatchingUUID:(id)a0 error:(out id *)a1;
- (BOOL)markPosterConfigurationAsActive:(id)a0 forRole:(id)a1;
- (id)_stateLock_posterConfigurationPathForUUID:(id)a0;
- (id)_stateLock_extensionStoreCoordinatorForExtensionBundleIdentifier:(id)a0;
- (void)_stateLock_processIncomingPosterConfiguration:(id)a0 completion:(id /* block */)a1;
- (void)fetchHomeScreenAssociatedPosterConfigurationForConfigurationUUID:(id)a0 completion:(id /* block */)a1;
- (void)_notifyObserversDidUpdateConfigurations;
- (void)updateSnapshotsForGallery:(id)a0 intention:(unsigned long long)a1 powerLogReason:(long long)a2 completion:(id /* block */)a3;
- (BOOL)executeDataStoreUpdateWithChanges:(id)a0 diffs:(out id *)a1 options:(unsigned long long)a2 reason:(id)a3 error:(out id *)a4;
- (id)buildExtensionProvider;
- (BOOL)_stateLock_updateEnvironmentForExtension:(id)a0 fromExtension:(id)a1 error:(out id *)a2;
- (id)acquireSnapshotterInUseAssertionWithReason:(id)a0;
- (id)fetchPosterConfigurationsSortedByUseForRole:(id)a0;
- (void)_stateLock_updatePosterConfiguration:(id)a0 updates:(id)a1 completion:(id /* block */)a2;
- (id)updateDataStoreForSwitcherConfiguration:(id)a0 reason:(id)a1 error:(out id *)a2;
- (id)activeEditingSessionAssertionExtensionIdentifiers;
- (void)_notifyObserversDidUpdateExtensions;
- (void)_stateLock_cleanupStaleSnapshotsNotWithinGallery:(id)a0 completion:(id /* block */)a1;
- (void)removeBehaviorAssertionObserver:(id)a0;
- (void)_stateLock_pushUpdateNotificationsForRole:(id)a0 diff:(id)a1 previouslyActiveConfiguration:(id)a2 newActiveConfiguration:(id)a3 options:(unsigned long long)a4 reason:(id)a5 context:(id)a6;
- (id)_buildRoleCoordinatorTransitionNotingInitialUpdate;
- (id)_stateLock_updateDataStoreForSwitcherConfiguration:(id)a0 options:(unsigned long long)a1 reason:(id)a2 error:(out id *)a3;
- (void)_stateLock_pushPosterDescriptorsToProactiveForReason:(id)a0 force:(BOOL)a1 completion:(id /* block */)a2;
- (BOOL)updateDataStoreForIncomingActiveChargerIdentifierUpdate:(id)a0 error:(out id *)a1;
- (void)addBehaviorAssertionObserver:(id)a0;
- (void)_stateLock_enumerateExtensionStoreCoordinators:(id /* block */)a0;
- (void)_setupExtensionEnvironment;
- (void)_transitionToNewSwitcherConfigurationIfNeededForReason:(id)a0 error:(out id *)a1;
- (id)activePosterConfigurations;
- (void)_stateLock_updateFocusModeForActivePosterChange;
- (void)_setupGalleryEnvironment;
- (void)_stateLock_transitionToNewSwitcherConfigurationAfterAddedExtensions:(id)a0 deletedExtensions:(id)a1 error:(out id *)a2;
- (void)refreshSnapshotForPosterConfigurationMatchUUID:(id)a0 completion:(id /* block */)a1;
- (void)invalidate;
- (BOOL)_stateLock_canPersistNewPosterConfiguration;
- (void)updatePosterConfigurationMatchingUUID:(id)a0 updates:(id)a1 completion:(id /* block */)a2;
- (void)createPosterConfigurationForProviderIdentifier:(id)a0 posterDescriptorIdentifier:(id)a1 completion:(id /* block */)a2;
- (void)fetchPosterSuggestionsForFocusModeWithUUID:(id)a0 context:(id)a1 completion:(id /* block */)a2;
- (id)_stateLock_knownPosterDescriptorsForExtensionBundleIdentifier:(id)a0;
- (void)_stateLock_convertPosterUpdatesToRoleCoordinatorChanges:(id)a0 toPath:(id)a1 powerLogReason:(long long)a2 completion:(id /* block */)a3;
- (void)pushToProactiveWithCompletion:(id /* block */)a0;
- (BOOL)_stateLock_updateDescriptorsFromStaticDescriptorsForExtensionBundleIdentifier:(id)a0 reason:(long long)a1 error:(out id *)a2;
- (id)_stateLock_lastUseDatesForPosterCollection;
- (void)importPosterConfigurationFromArchiveData:(id)a0 completion:(id /* block */)a1;
- (id)_stateLock_switcherConfiguration;
- (void)_notifyObserversDidUpdateActivePosterForRoles:(id)a0;
- (BOOL)_stateLock_executeDataStoreUpdateWithChanges:(id)a0 diffs:(out id *)a1 options:(unsigned long long)a2 reason:(id)a3 context:(id)a4 error:(out id *)a5;
- (BOOL)_stateLock_setupEnvironmentForExtension:(id)a0 wasUpdated:(out BOOL *)a1 error:(out id *)a2;
- (id)_buildRoleCoordinatorTransitionContextForActiveFocusMode:(id)a0 chargerIdentifier:(id)a1;
- (id)_stateLock_buildSwitcherConfigurationWithContext:(id)a0 outMutated:(out BOOL *)a1;
- (id)_buildRoleCoordinatorTransitionContext;
- (id)_stateLock_knownStaticPosterDescriptorsForExtensionBundleIdentifier:(id)a0;
- (void)_notifyObserversDidUpdateSwitcherConfiguration:(id)a0;
- (void)snapshotManager:(id)a0 didUpdateSnapshotForPath:(id)a1 forDefinition:(id)a2;
- (void)_notifyObserversDidInitializeRoles:(id)a0 roleToPosterCollection:(id)a1;
- (void)createTemporaryPosterConfigurationForPosterMatchingUUID:(id)a0 andApplyUpdates:(id)a1 completion:(id /* block */)a2;
- (id)pbf_posterExtensionStoreCoordinatorForProviderIdentifier:(id)a0 error:(out id *)a1;
- (oneway void)updateGallery:(id)a0 completion:(id /* block */)a1;
- (void)assertionManager:(id)a0 pathIsNowMarkedAsNOTInUse:(id)a1;
- (void)ingestSnapshotCollection:(id)a0 forPosterConfigurationUUID:(id)a1 error:(out id *)a2;
- (id)_stateLock_posterWithUUID:(id)a0 error:(out id *)a1;
- (void)_notifyObserversDidUpdatePosterDescriptorsForExtensionBundleIdentifier:(id)a0;
- (id)posterCollectionForRole:(id)a0 error:(out id *)a1;
- (id)_stateLock_fetchPosterConfigurationsSortedByUse:(BOOL)a0 forRole:(id)a1;
- (void)assertionManager:(id)a0 pathIsNowMarkedInUse:(id)a1;
- (void)_notifyObserversDidUpdateConfiguration:(id)a0 homeScreenAssociatedConfiguration:(id)a1;
- (void)enumerateExtensionStoreCoordinators:(id /* block */)a0;
- (void)pushPosterDescriptorsToProactiveForReason:(id)a0 completion:(id /* block */)a1;
- (void)_stateLock_initialRoleCoordinatorSetup;
- (void)_stateLock_updateExtensionsFrom:(id)a0 toExtensions:(id)a1 refreshDescriptors:(long long)a2 powerLogReason:(long long)a3 galleryUpdateOptions:(unsigned long long)a4 queuedUpOperations:(out id *)a5;
- (id)activePosterForRole:(id)a0 assocPoster:(out id *)a1 error:(out id *)a2;
- (void)_stateLock_enqueueRefreshPosterConfigurationMatchingUUID:(id)a0 sessionInfo:(id)a1 powerLogReason:(long long)a2 completion:(id /* block */)a3;
- (void)refreshPosterConfigurationMatchingUUID:(id)a0 sessionInfo:(id)a1 completion:(id /* block */)a2;
- (void)executeUpdate:(id)a0 refreshStrategy:(long long)a1 galleryUpdateOptions:(unsigned long long)a2 powerLogReason:(long long)a3 cleanupOldResources:(BOOL)a4 completion:(id /* block */)a5;
- (id)staticPosterDescriptorsForExtensionBundleIdentifier:(id)a0 error:(out id *)a1;
- (id)acquireEditingSessionAssertionForProvider:(id)a0 withReason:(id)a1;
- (void)fetchSwitcherSnapshotForConfiguration:(id)a0 context:(id)a1 completion:(id /* block */)a2;
- (id)initWithURL:(id)a0 runtimeAssertionProvider:(id)a1 extensionProvider:(id)a2 observer:(id)a3 wasMigrationJustPerformed:(BOOL)a4 applicationStateMonitor:(id)a5 error:(out id *)a6;
- (BOOL)_stateLock_ingestReloadedDescriptorsForExtensionBundleIdentifier:(id)a0 preReloadDescriptors:(id)a1 postReloadDescriptors:(id)a2 error:(out id *)a3;
- (void)_notifyObserversDidUpdateGalleryConfiguration:(id)a0;
- (long long)_stateLock_maximumPosterConfigurationCount;
- (void)_stateLock_findStoreCoordinatorsForUUID:(id)a0 extensionStoreCoordinator:(out id *)a1 configurationStoreCoordinator:(out id *)a2;
- (id)_activeActivity;
- (void)_stateLock_setupRoleCoordinatorsIfNeeded;
- (long long)maximumPosterConfigurationCount;
- (id)_stateLock_extensionBundleIdentifierForConfigurationUUID:(id)a0;
- (void)_notifyObserversDidUpdateSelectedConfiguration:(id)a0 associatedConfiguration:(id)a1;
- (id)posterConfigurations;
- (void)enqueueGalleryConfigurationUpdateWithOptions:(unsigned long long)a0 powerLogReason:(long long)a1 completion:(id /* block */)a2;
- (void)_notifyObserversDidUpdateActiveConfiguration:(id)a0 associatedConfiguration:(id)a1;
- (id)posterConfigurationsForRole:(id)a0 error:(out id *)a1;
- (void)setMaximumPosterConfigurationCount:(long long)a0;
- (void)assertionProviderDidRelinquishInUseAssertion:(id)a0;
- (id)_stateLock_fetchPosterConfigurations;
- (void)_updateActiveActivity:(id)a0 active:(BOOL)a1 reason:(id)a2;
- (void).cxx_destruct;
- (BOOL)resetRole:(id)a0 error:(out id *)a1;
- (void)processEvents:(id)a0 context:(id)a1 QOS:(unsigned int)a2 reason:(id)a3 completion:(id /* block */)a4;
- (void)_setupExtensionProvider;
- (id)selectedPosterForRole:(id)a0 error:(out id *)a1;
- (id)providerForExtensionIdentifier:(id)a0;
- (void)_stateLock_transitionToNewSwitcherConfigurationIfNeeded:(id)a0 reason:(id)a1 error:(out id *)a2;
- (void)_stateLock_setupPathAssertionsAndUpdateActivePosterFromDiff:(id)a0 roleCoordinator:(id)a1 context:(id)a2;
- (void)_notifyObserversDidUpdateSnapshotForConfiguration:(id)a0;
- (id)posterDescriptorsForExtensionBundleIdentifier:(id)a0 error:(out id *)a1;
- (void)fetchPosterSnapshotsWithClientRequest:(id)a0 completion:(id /* block */)a1;
- (oneway void)fetchGalleryConfigurationWithOptions:(unsigned long long)a0 completion:(id /* block */)a1;
- (void)duplicatePosterConfigurationMatchingUUID:(id)a0 completion:(id /* block */)a1;
- (void)reloadPosterDescriptorsForExtensionBundleIdentifier:(id)a0 sessionInfo:(id)a1 completion:(id /* block */)a2;
- (void)_stateLock_updatePosterConfigurationMatchingUUID:(id)a0 updates:(id)a1 completion:(id /* block */)a2;
- (id)buildPrewarmPlanWithIdentifier:(id)a0 refreshStrategy:(long long)a1 galleryUpdateOptions:(unsigned long long)a2 powerLogReason:(long long)a3 cleanupOldResources:(BOOL)a4 prewarmDisplayContext:(id)a5;
- (void)_finishUpdateExtensionUpdateWithOptions:(unsigned long long)a0 updateExtensionSession:(id)a1 pushToProactiveError:(id)a2 didUpdateProactiveDescriptors:(BOOL)a3 runtimeAssertion:(id)a4;
- (id)_stateLock_currentGalleryConfiguration;
- (id)extensionStoreCoordinators;
- (void)_stateLock_updateGalleryWithSuggestedLayout:(id)a0 descriptorsByExtensionBundleIdentifier:(id)a1 staticDescriptorsByExtensionBundleIdentifier:(id)a2;
- (id)updateDataStoreForSwitcherConfiguration:(id)a0 options:(unsigned long long)a1 reason:(id)a2 error:(out id *)a3;
- (void)_notifyObserversDidDeleteConfiguration:(id)a0;
- (id)posterDescriptorsForOperation:(id)a0;
- (void)_notifyObserversDidUpdatePosterCollectionsForRoles:(id)a0;
- (void)fetchGallerySnapshotForConfiguration:(id)a0 context:(id)a1 completion:(id /* block */)a2;
- (void)_notifyObserversDidAddConfiguration:(id)a0;
- (void)overnightUpdateWithCompletion:(id /* block */)a0;
- (id)dataFreshnessForComponents:(id)a0 refreshStrategy:(long long)a1;
- (void)relinquishExtensionInstance:(id)a0 reason:(id)a1;
- (void)checkForGalleryUpdatesAndPrewarmSnapshots;
- (void)_stateLock_createTemporaryPosterConfigurationForPosterMatchingUUID:(id)a0 andApplyUpdates:(id)a1 completion:(id /* block */)a2;
- (void)roleProcessor:(id)a0 transactionFinished:(id)a1 success:(BOOL)a2 results:(id)a3 error:(id)a4;
- (void)updateFocusModeForActivePosterChange;
- (void)addObserver:(id)a0;
- (BOOL)_stateLock_processEvents:(id)a0 roles:(id)a1 context:(id)a2 error:(out id *)a3;
- (void)_notifyObserversDidInitializeWithSwitcherConfiguration:(id)a0 withChanges:(BOOL)a1;
- (id)_activityModeForFocusUUID:(id)a0;
- (void)galleryController:(id)a0 didUpdateCurrentGalleryConfiguration:(id)a1;
- (id)_stateLock_extensionStoreCoordinators;
- (void)_stateLock_pushPosterConfigurationsToProactiveWithCompletion:(id /* block */)a0;
- (BOOL)updateDataStoreForIncomingFocusModeChange:(id)a0 error:(out id *)a1;
- (void)posterExtensionProvider:(id)a0 updatedExtensionsFrom:(id)a1 to:(id)a2;
- (id)posterConfigurationsForExtension:(id)a0;
- (void)createPosterConfigurationForProviderIdentifier:(id)a0 posterDescriptorIdentifier:(id)a1 role:(id)a2 completion:(id /* block */)a3;
- (id)_stateLock_enqueueReloadDescriptorsOperationForExtensionBundleIdentifier:(id)a0 reason:(id)a1 powerLogReason:(long long)a2 postEnqueueGalleryUpdateOptions:(unsigned long long)a3 sessionInfo:(id)a4 completion:(id /* block */)a5;
- (id)_buildRoleCoordinatorTransitionContextWithDesiredActivePosterUUID:(id)a0 role:(id)a1;
- (id)providerForPath:(id)a0;
- (void)prewarmWithCompletion:(id /* block */)a0;
- (void)_ingestRefreshPosterConfiguration:(id)a0 completion:(id /* block */)a1;
- (id)_buildRoleCoordinatorTransitionContextForChargerIdentifier:(id)a0;
- (void)assertionProviderDidAcquireInUseAssertion:(id)a0;
- (void)processIncomingPosterConfiguration:(id)a0 completion:(id /* block */)a1;
- (void)roleCoordinatorWasReset:(id)a0 processInitialStateSetupEvents:(out id *)a1;
- (BOOL)updateSelectedPosterUUID:(id)a0 role:(id)a1 from:(id)a2 error:(out id *)a3;
- (BOOL)_stateLock_hasBeenUnlockedSinceBoot;
- (void)_stateLock_applyUpdatesAndIngestConfiguration:(id)a0 toPath:(id)a1 powerLogReason:(long long)a2 completion:(id /* block */)a3;

@end