@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 { NSURL *_baseURL; NSURL *_extensionEnvironmentURL; id _runtimeAssertionProvider; id _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 *_notificationQueue; NSObject *_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 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