text: /*
   * This file is part of the SDWebImage package.
   * (c) Olivier Poitrey <rs@dailymotion.com>
   *
   * For the full copyright and license information, please view the LICENSE
   * file that was distributed with this source code.
   */
  
  #import "SDWebImageCompat.h"
  
  #if SD_UIKIT || SD_MAC
  
  #import <MapKit/MapKit.h>
  #import "SDWebImageManager.h"
  
  /**
   * Integrates SDWebImage async downloading and caching of remote images with MKAnnotationView.
   */
  @interface MKAnnotationView (WebCache)
  
  /**
   * Set the imageView `image` with an `url`.
   *
   * The download is asynchronous and cached.
   *
   * @param url The url for the image.
   */
  - (void)sd_setImageWithURL:(nullable NSURL *)url NS_REFINED_FOR_SWIFT;
  
  /**
   * Set the imageView `image` with an `url` and a placeholder.
   *
   * The download is asynchronous and cached.
   *
   * @param url         The url for the image.
   * @param placeholder The image to be set initially, until the image request finishes.
   * @see sd_setImageWithURL:placeholderImage:options:
   */
  - (void)sd_setImageWithURL:(nullable NSURL *)url
            placeholderImage:(nullable UIImage *)placeholder NS_REFINED_FOR_SWIFT;
  
  /**
   * Set the imageView `image` with an `url`, placeholder and custom options.
   *
   * The download is asynchronous and cached.
   *
   * @param url         The url for the image.
   * @param placeholder The image to be set initially, until the image request finishes.
   * @param options     The options to use when downloading the image. @see SDWebImageOptions for the possible values.
   */
  
  - (void)sd_setImageWithURL:(nullable NSURL *)url
            placeholderImage:(nullable UIImage *)placeholder
                     options:(SDWebImageOptions)options NS_REFINED_FOR_SWIFT;
  
  /**
   * Set the imageView `image` with an `url`.
   *
   * The download is asynchronous and cached.
   *
   * @param url            The url for the image.
   * @param completedBlock A block called when operation has been completed. This block has no return value
   *                       and takes the requested UIImage as first parameter. In case of error the image parameter
   *                       is nil and the second parameter may contain an NSError. The third parameter is a Boolean
   *                       indicating if the image was retrieved from the local cache or from the network.
   *                       The fourth parameter is the original image url.
   */
  - (void)sd_setImageWithURL:(nullable NSURL *)url
                   completed:(nullable SDExternalCompletionBlock)completedBlock;
  
  /**
   * Set the imageView `image` with an `url`, placeholder.
   *
   * The download is asynchronous and cached.
   *
   * @param url            The url for the image.
   * @param placeholder    The image to be set initially, until the image request finishes.
   * @param completedBlock A block called when operation has been completed. This block has no return value
   *                       and takes the requested UIImage as first parameter. In case of error the image parameter
   *                       is nil and the second parameter may contain an NSError. The third parameter is a Boolean
   *                       indicating if the image was retrieved from the local cache or from the network.
   *                       The fourth parameter is the original image url.
   */
  - (void)sd_setImageWithURL:(nullable NSURL *)url
            placeholderImage:(nullable UIImage *)placeholder
                   completed:(nullable SDExternalCompletionBlock)completedBlock NS_REFINED_FOR_SWIFT;
  
  /**
   * Set the imageView `image` with an `url`, placeholder and custom options.
   *
   * The download is asynchronous and cached.
   *
   * @param url            The url for the image.
   * @param placeholder    The image to be set initially, until the image request finishes.
   * @param options        The options to use when downloading the image. @see SDWebImageOptions for the possible values.
   * @param completedBlock A block called when operation has been completed. This block has no return value
   *                       and takes the requested UIImage as first parameter. In case of error the image parameter
   *                       is nil and the second parameter may contain an NSError. The third parameter is a Boolean
   *                       indicating if the image was retrieved from the local cache or from the network.
   *                       The fourth parameter is the original image url.
   */
  - (void)sd_setImageWithURL:(nullable NSURL *)url
            placeholderImage:(nullable UIImage *)placeholder
                     options:(SDWebImageOptions)options
                   completed:(nullable SDExternalCompletionBlock)completedBlock;
  
  @end
  
  #endif
  