interface Efl.Image {
   legacy_prefix: null;
   methods {
      @property animated {
         get {
            [[Check if an image  can be animated (have multiple frames)]]
         }
         values {
              is_animated: bool; [[If it's animated or not.]]
         }
      }
      @property load_size {
         set {
            [[Set the loading size of an image. The image will be loaded into
              memory as if it was the set size instead of the original size.
              This can save a lot of memory, and is important for scalable
              types like svg.
            ]]
         }
         get {
         }
         values {
            w: int; [[The new width of the image's load size.]]
            h: int; [[The new height of the image's load size.]]
         }
      }
      @property smooth_scale {
         set {
            [[Sets whether to use high-quality image scaling algorithm on the
              given image.

              When enabled, a higher quality image scaling algorithm is used
              when scaling images to sizes other than the source image's
              original one. This gives better results but is more
              computationally expensive.
            ]]
         }
         get {
            [[Retrieves whether the given image is using high-quality
              image scaling algorithm.
            ]]
         }
         values {
            smooth_scale: bool; [[Whether to use smooth scale or not.]]
         }
      }
      @property ratio {
         get {
            [[The native ration of the image object]]
         }
         values {
            ratio: double; [[The image's ratio]]
         }
      }
   }
}
