luxlabs header browser preview


@class PLLocalCreationDateCreator, PLDateRangeTitleGenerator, NSDateInterval, NSMutableSet, PLHighlightHierarchy, PLPhotosHighlightClusterGenerator, PLFrequentLocationManager;
@protocol PLMomentGenerationDataManagement, PLHighlightItemModelReader;

@interface PLPhotosHighlightGenerator : NSObject

@property (retain, nonatomic) PLHighlightHierarchy *entitiesToUpdate;
@property (retain, nonatomic) NSMutableSet *highlightsWithDeletedAssets;
@property (retain, nonatomic) NSMutableSet *upsertedHighlights;
@property (retain, nonatomic) NSMutableSet *highlightsToDelete;
@property (nonatomic) BOOL didCallBeginGeneration;
@property (weak, nonatomic) id<PLMomentGenerationDataManagement, PLHighlightItemModelReader> dataManager;
@property (readonly, nonatomic) NSDateInterval *recentHighlightsDateInterval;
@property (readonly, nonatomic) PLPhotosHighlightClusterGenerator *highlightClusterGenerator;
@property (retain, nonatomic) NSMutableSet *highlightsNeedingNewKeyAsset;
@property (readonly, nonatomic) PLFrequentLocationManager *frequentLocationManager;
@property (readonly, nonatomic) PLLocalCreationDateCreator *localCreationDateCreator;
@property (readonly, nonatomic) PLDateRangeTitleGenerator *dateRangeTitleGenerator;

+ (double)curationScoreForAsset:(id)a0;
+ (id)_provisionalKeyAssetForDayHighlight:(id)a0 sharingConsideration:(long long)a1;
+ (void)updateTitleForHighlights:(id)a0 forKind:(unsigned short)a1 forceUpdateLocale:(BOOL)a2 dateRangeTitleGenerator:(id)a3;
+ (void)updateKeyAssetForHighlights:(id)a0;
+ (id)provisionalKeyAssetForHighlight:(id)a0 sharingConsideration:(long long)a1;
+ (void)setLastHighlightTitlesUpdateDay:(id)a0;
+ (id)userDefaults;
+ (id)_bestAssetInAssets:(id)a0 fallback:(BOOL)a1;
+ (BOOL)assetEligibleForCuration:(id)a0;
+ (id)_provisionalKeyAssetForMonthAndYearHighlight:(id)a0 sharingConsideration:(long long)a1;
+ (void)_updateParentHighlightNeedingNewKeyAsset:(id)a0 withProvisionalKeyAssetPrivate:(id)a1 andProvisionalKeyAssetShared:(id)a2 updatedHighlights:(id)a3;
+ (id)lastHighlightTitlesUpdateDay;
+ (BOOL)assetEligibleForRecents:(id)a0;
+ (BOOL)_shouldUpdateKeyAssetForParentHighlight:(id)a0 withPrivateKeyAssetObjectID:(id)a1 andSharedKeyAssetObjectID:(id)a2;
+ (void)setLastRecentHighlightUpdateDate:(id)a0;
+ (void)_updateMixedSharingCompositionKeyAssetRelationshipForHighlight:(id)a0;
+ (id)_provisionalKeyAssetForDayGroupHighlight:(id)a0 sharingConsideration:(long long)a1;
+ (id)lastRecentHighlightUpdateDate;

- (id)_collectMomentsRequiringReprocessingFromMoments:(id)a0 withAllMoments:(id)a1;
- (void)processUnprocessedMomentLocations;
- (BOOL)_highlightTypeSupportsVisibilityStateDayOnly:(unsigned short)a0;
- (void)beginGenerationWithAssets:(id)a0 hiddenAssets:(id)a1;
- (id)updateElectedEventForUpdatedMonths:(id)a0;
- (void)markHighlightNeedingNewKeyAssetsWithAsset:(id)a0;
- (void)updateCurationForHighlight:(id)a0 withAssetsBelongingToCuration:(id)a1;
- (BOOL)_setVisibilityStateForHighlight:(id)a0 shouldForceUpdate:(BOOL)a1 sharingConsideration:(long long)a2;
- (id)_fetchMomentsRequiringLocationProcessingWhenCoreRoutineIsAvailable;
- (BOOL)_highlightShouldNotBeVisible:(id)a0 sharingConsideration:(long long)a1;
- (void)cleanupEmptyHighlights;
- (BOOL)_updateHighlightProperties:(id)a0 fromHighlightCluster:(id)a1;
- (void)generateHighlightListForUpdatedHighlights:(id)a0 deletedHighlights:(id)a1;
- (void)processRecentHighlights;
- (void)_updateDayHighlight:(id)a0 withNewAssets:(id)a1;
- (void)updateRecentHighlightCurationForHighlight:(id)a0;
- (void)generateHighlightsForUpsertedMoments:(id)a0 frequentLocationsDidChange:(BOOL)a1;
- (void)registerHighlightsWithDeletedMoments:(id)a0;
- (void)finishGeneration;
- (id)_fetchAllMoments;
- (void)_insertDayPhotosHighlightCluster:(id)a0;
- (void)_consumeHighlightItemListChanges:(id)a0 forKind:(unsigned short)a1 rule:(id)a2 resultBlock:(id /* block */)a3;
- (id)initWithDataManager:(id)a0 frequentLocationManager:(id)a1 localCreationDateCreator:(id)a2 dateRangeTitleGenerator:(id)a3;
- (void).cxx_destruct;
- (void)resetPreviousRecentHighlightCurationForHighlight:(id)a0;
- (id)_fetchMomentsRequiringLocationProcessingWhenFrequentLocationsAreAvailable;
- (id)_insertDayGroupPhotosHighlightCluster:(id)a0;
- (id)_highlightToReuseForMoments:(id)a0;
- (void)updateHighlightTitles;
- (id)fetchAllRecentHighlights;
- (void)_resetProperties;
- (id)_highlightMomentClustersForMoments:(id)a0 excludingMomentIds:(id)a1;
- (void)resetDayGroupCurationForAsset:(id)a0;
- (void)updateTitlesForHighlight:(id)a0 options:(unsigned long long)a1;
- (id)_fetchMomentsRequiringLocationProcessingWhenFrequentLocationsChanged;
- (BOOL)setVisibilityStateForHighlight:(id)a0 shouldForceUpdate:(BOOL)a1;
- (void)_updateDayGroupHighlight:(id)a0 withNewAssets:(id)a1;
- (id)_recentHighlightsDateIntervalWithDate:(id)a0;
- (id)fetchAllOngoingTripDayGroupHighlights;
- (BOOL)shouldForceVisibilityStateUpdateForHighlight:(id)a0 highlightCluster:(id)a1;

@end