--[[
  Generated with github.com/astrochili/defold-annotations
  Defold 1.10.2

  Sprite API documentation

  Functions, messages and properties used to manipulate sprite components.
--]]

---@meta
---@diagnostic disable: lowercase-global
---@diagnostic disable: missing-return
---@diagnostic disable: duplicate-doc-param
---@diagnostic disable: duplicate-set-field
---@diagnostic disable: args-after-dots

---@class defold_api.sprite
sprite = {}

---Play an animation on a sprite component from its tile set
---An optional completion callback function can be provided that will be called when
---the animation has completed playing. If no function is provided,
---a animation_done message is sent to the script that started the animation.
---@param url string|hash|url the sprite that should play the animation
---@param id string|hash hashed id of the animation to play
---@param complete_function? fun(self, message_id, message, sender) function to call when the animation has completed.
---  
---  self
---  object The current object.
---  message_id
---  hash The name of the completion message, "animation_done".
---  message
---  table Information about the completion:
---  
---  
---  number current_tile - the current tile of the sprite.
---  hash id - id of the animation that was completed.
---  
---  
---  sender
---  url The invoker of the callback: the sprite component.
---  
---@param play_properties? table optional table with properties:
---  
---  offset
---  number the normalized initial value of the animation cursor when the animation starts playing.
---  playback_rate
---  number the rate with which the animation will be played. Must be positive.
---  
function sprite.play_flipbook(url, id, complete_function, play_properties) end

---Sets horizontal flipping of the provided sprite's animations.
---The sprite is identified by its URL.
---If the currently playing animation is flipped by default, flipping it again will make it appear like the original texture.
---@param url string|hash|url the sprite that should flip its animations
---@param flip boolean true if the sprite should flip its animations, false if not
function sprite.set_hflip(url, flip) end

---Sets vertical flipping of the provided sprite's animations.
---The sprite is identified by its URL.
---If the currently playing animation is flipped by default, flipping it again will make it appear like the original texture.
---@param url string|hash|url the sprite that should flip its animations
---@param flip boolean true if the sprite should flip its animations, false if not
function sprite.set_vflip(url, flip) end

return sprite