


#import "SDWebImageCompat.h"

#if SD_MAC

#import "SDWebImageManager.h"



@interface NSButton (WebCache)





@property (nonatomic, strong, readonly, nullable) Cross *sd_currentImageURL;



- (void)sd_setImageWithURL:(nullable Cross *)url NS_REFINED_FOR_SWIFT;



- (void)sd_setImageWithURL:(nullable Cross *)url
          placeholderImage:(nullable UIImage *)placeholder NS_REFINED_FOR_SWIFT;



- (void)sd_setImageWithURL:(nullable Cross *)url
          placeholderImage:(nullable UIImage *)placeholder
                   options:(SDWebImageOptions)options NS_REFINED_FOR_SWIFT;



- (void)sd_setImageWithURL:(nullable Cross *)url
          placeholderImage:(nullable UIImage *)placeholder
                   options:(SDWebImageOptions)options
                   context:(nullable SDWebImageContext *)context;



- (void)sd_setImageWithURL:(nullable Cross *)url
                 completed:(nullable SDExternalCompletionBlock)completedBlock;



- (void)sd_setImageWithURL:(nullable Cross *)url
          placeholderImage:(nullable UIImage *)placeholder
                 completed:(nullable SDExternalCompletionBlock)completedBlock NS_REFINED_FOR_SWIFT;



- (void)sd_setImageWithURL:(nullable Cross *)url
          placeholderImage:(nullable UIImage *)placeholder
                   options:(SDWebImageOptions)options
                 completed:(nullable SDExternalCompletionBlock)completedBlock;



- (void)sd_setImageWithURL:(nullable Cross *)url
          placeholderImage:(nullable UIImage *)placeholder
                   options:(SDWebImageOptions)options
                  progress:(nullable SDImageLoaderProgressBlock)progressBlock
                 completed:(nullable SDExternalCompletionBlock)completedBlock;



- (void)sd_setImageWithURL:(nullable Cross *)url
          placeholderImage:(nullable UIImage *)placeholder
                   options:(SDWebImageOptions)options
                   context:(nullable SDWebImageContext *)context
                  progress:(nullable SDImageLoaderProgressBlock)progressBlock
                 completed:(nullable SDExternalCompletionBlock)completedBlock;





@property (nonatomic, strong, readonly, nullable) Cross *sd_currentAlternateImageURL;



- (void)sd_setAlternateImageWithURL:(nullable Cross *)url NS_REFINED_FOR_SWIFT;



- (void)sd_setAlternateImageWithURL:(nullable Cross *)url
                   placeholderImage:(nullable UIImage *)placeholder NS_REFINED_FOR_SWIFT;



- (void)sd_setAlternateImageWithURL:(nullable Cross *)url
                   placeholderImage:(nullable UIImage *)placeholder
                            options:(SDWebImageOptions)options NS_REFINED_FOR_SWIFT;



- (void)sd_setAlternateImageWithURL:(nullable Cross *)url
                   placeholderImage:(nullable UIImage *)placeholder
                            options:(SDWebImageOptions)options
                            context:(nullable SDWebImageContext *)context;



- (void)sd_setAlternateImageWithURL:(nullable Cross *)url
                          completed:(nullable SDExternalCompletionBlock)completedBlock;



- (void)sd_setAlternateImageWithURL:(nullable Cross *)url
                   placeholderImage:(nullable UIImage *)placeholder
                          completed:(nullable SDExternalCompletionBlock)completedBlock NS_REFINED_FOR_SWIFT;



- (void)sd_setAlternateImageWithURL:(nullable Cross *)url
                   placeholderImage:(nullable UIImage *)placeholder
                            options:(SDWebImageOptions)options
                          completed:(nullable SDExternalCompletionBlock)completedBlock;



- (void)sd_setAlternateImageWithURL:(nullable Cross *)url
                   placeholderImage:(nullable UIImage *)placeholder
                            options:(SDWebImageOptions)options
                           progress:(nullable SDImageLoaderProgressBlock)progressBlock
                          completed:(nullable SDExternalCompletionBlock)completedBlock;



- (void)sd_setAlternateImageWithURL:(nullable Cross *)url
                   placeholderImage:(nullable UIImage *)placeholder
                            options:(SDWebImageOptions)options
                            context:(nullable SDWebImageContext *)context
                           progress:(nullable SDImageLoaderProgressBlock)progressBlock
                          completed:(nullable SDExternalCompletionBlock)completedBlock;





- (void)sd_cancelCurrentImageLoad;



- (void)sd_cancelCurrentAlternateImageLoad;

@end

#endif
