luxlabs header browser preview


@class NSString, NSURL, NSMutableDictionary, NSObject;
@protocol OS_dispatch_queue;

@interface WBSStartPageBackgroundManager : NSObject <WBTabGroupManagerObserver> {
    NSObject<OS_dispatch_queue> *_internalQueue;
    NSObject<OS_dispatch_queue> *_imageSavingQueue;
    struct RetainPtr<CGImage *> { void *m_ptr; } _prefetchedImage;
    struct RetainPtr<CGImage *> { void *m_ptr; } _prefetchedImageThumbnail;
    NSURL *_prefetchedImageURL;
    NSString *_lastPrefetchedFilePath;
    _Atomic long long _prefetchingCoalescingDelay;
    double _prefetchedImageLuminance;
    NSURL *_imageURL;
    long long _appearance;
    NSMutableDictionary *_backgroundImageIdentifierToImage;
    NSMutableDictionary *_backgroundImageIdentifierToLuminance;
}

@property (class, readonly, nonatomic) WBSStartPageBackgroundManager *defaultManager;

@property (readonly, nonatomic) struct RetainPtr<CGImage *> { void *m_ptr; } image;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

+ (void)warmUp;
+ (id)ciColorKernel;

- (void)clearImage;
- (BOOL)_tabGroupShouldInheritProfileBackgroundImage:(id)a0 forProfileWithIdentifier:(id)a1;
- (void)loadImageFromDiskForIdentifier:(id)a0;
- (id)presetIconColorForSymbol:(id)a0;
- (void)_setHasProfileSpecificBackgroundImage:(BOOL)a0 forIdentifier:(id)a1;
- (id)initWithImageURL:(id)a0;
- (void)_loadImageFromDiskForIdentifier:(id)a0;
- (void)_clearPrefetchedImage;
- (void)clearPrefetchedImage;
- (void)_prefetchImage:(id)a0 luminance:(double)a1 completion:(id /* block */)a2 withNanoSecondDelay:(long long)a3;
- (void)reloadTabGroupSpecificBackgroundImageFromDisk:(id)a0;
- (BOOL)hasProfileSpecificBackgroundImage:(id)a0;
- (void)_updateThumbnailIfNeeded;
- (void)processImageForIdentifier:(id)a0 isGeneratedImage:(BOOL)a1 withinProfile:(BOOL)a2;
- (unsigned long long)_primaryIndexForImage:(id)a0 source:(struct RetainPtr<CGImageSource> { void *x0; })a1 adjustForDarkAppearance:(BOOL)a2;
- (struct RetainPtr<CGImage *> { void *x0; })_templateImageWithImage:(id)a0 color:(id)a1;
- (void)cacheImageFromURL:(id)a0 completion:(id /* block */)a1;
- (struct RetainPtr<CGImage *> { void *x0; })prefetchedImageThumbnailForProfile:(id)a0;
- (struct RetainPtr<CGImage *> { void *x0; })thresholdImage:(struct CGImage { } *)a0 minValue:(double)a1 maxValue:(double)a2 multiplier:(double)a3;
- (id)prefetchedImageNameForProfile:(id)a0;
- (id).cxx_construct;
- (long long)_generatedImageScaleWithSymbol:(id)a0;
- (void)_deleteImageWithIdentifier:(id)a0;
- (void)_setExtendedAttributesOnBackgroundImage;
- (void)_processImageForIdentifier:(id)a0 isGeneratedImage:(BOOL)a1 withinProfile:(BOOL)a2 completionHandler:(id /* block */)a3;
- (void)tabGroupManager:(id)a0 didRemoveProfileWithIdentifier:(id)a1;
- (struct RetainPtr<CGImage *> { void *x0; })_thumbnailForImage:(id)a0 source:(struct RetainPtr<CGImageSource> { void *x0; })a1 adjustForDarkAppearance:(BOOL)a2;
- (void)processImageForIdentifier:(id)a0 isGeneratedImage:(BOOL)a1 withinProfile:(BOOL)a2 completionHandler:(id /* block */)a3;
- (void)commitPrefetchedImageWithLuminance:(double)a0 forIdentifier:(id)a1 isGeneratedImage:(BOOL)a2 withinProfile:(BOOL)a3;
- (BOOL)_tabGroupShouldUseGlobalBackgroundImage:(id)a0 forProfileWithIdentifier:(id)a1;
- (long long)appearanceIfImageExists:(BOOL)a0;
- (long long)appearanceForLuminance:(double)a0;
- (void)_setImageOnAnyQueue:(struct RetainPtr<CGImage *> { void *x0; })a0 withAppearance:(long long)a1 forIdentifier:(id)a2;
- (long long)appearanceForImageWithIdentifier:(id)a0 forProfile:(id)a1;
- (BOOL)hasGlobalBackgroundImage;
- (struct RetainPtr<CGImage *> { void *x0; })_fetchImage:(id)a0 source:(struct RetainPtr<CGImageSource> { void *x0; })a1 adjustForDarkAppearance:(BOOL)a2;
- (struct RetainPtr<CGImage *> { void *x0; })analyzeImageAndThresholdIfNecessary:(struct CGImage { } *)a0 thumbnail:(struct CGImage { } *)a1 precomputedLuminance:(double)a2 getAppearance:(long long *)a3 luminance:(double *)a4;
- (void)_setHasTabGroupSpecificBackgroundImage:(BOOL)a0 forIdentifier:(id)a1;
- (void).cxx_destruct;
- (void)prefetchImage:(id)a0 luminance:(double)a1 completion:(id /* block */)a2;
- (BOOL)isCorrectBackgroundImageLoadedForIdentifier:(id)a0;
- (struct RetainPtr<CGImage *> { void *x0; })imageForIdentifier:(id)a0 forProfile:(id)a1;
- (id)ciContext;
- (void)_readImagePropertiesFromImageSource:(struct RetainPtr<CGImageSource> { void *x0; })a0 forImageIdentifier:(id)a1 isNonGlobalBackgroundImage:(BOOL)a2;
- (struct RetainPtr<CGImage *> { void *x0; })fetchImage:(id)a0;
- (struct RetainPtr<CGImage *> { void *x0; })normalizeImage:(struct RetainPtr<CGImage *> { void *x0; })a0 imageSource:(struct RetainPtr<CGImageSource> { void *x0; })a1 properties:(id)a2;
- (void)clearImageWithIdentifier:(id)a0 withinProfile:(BOOL)a1;
- (void)prefetchImage:(id)a0 completion:(id /* block */)a1;
- (void)reloadProfileSpecificBackgroundImageFromDisk:(id)a0;
- (void)tabGroupManager:(id)a0 didRemoveTabGroupWithUUID:(id)a1;
- (void)_setImage:(struct RetainPtr<CGImage *> { void *x0; })a0 withAppearance:(long long)a1 forIdentifier:(id)a2;
- (void)_commitImage:(struct RetainPtr<CGImage *> { void *x0; })a0 appearanceName:(long long)a1 luminance:(double)a2 forIdentifier:(id)a3 isGeneratedImage:(BOOL)a4 withinProfile:(BOOL)a5 completionHandler:(id /* block */)a6;
- (void)_saveImage:(struct RetainPtr<CGImage *> { void *x0; })a0 appearance:(long long)a1 luminance:(double)a2 forIdentifier:(id)a3 isGeneratedImage:(BOOL)a4 withinProfile:(BOOL)a5 completion:(id /* block */)a6;
- (struct RetainPtr<CGImage *> { void *x0; })assignImage:(struct RetainPtr<CGImage *> { void *x0; })a0 oldImage:(struct RetainPtr<CGImage *> { void *x0; })a1;
- (double)_iconOpacityForBackgroundColor:(id)a0 forDarkIcon:(BOOL)a1;
- (void)generateProfileSpecificBackgroundImageWithSymbol:(id)a0 forProfile:(id)a1 withColor:(id)a2 completionHandler:(id /* block */)a3;
- (BOOL)hasTabGroupSpecificBackgroundImage:(id)a0;
- (BOOL)hasGeneratedBackgroundImage:(id)a0 forProfileWithIdentifier:(id)a1;
- (long long)appearanceForImage:(struct RetainPtr<CGImage *> { void *x0; })a0;

@end