---@class cc.TMXLayer :cc.SpriteBatchNode local TMXLayer={ } cc.TMXLayer=TMXLayer ---* Returns the position in points of a given tile coordinate.
---* param tileCoordinate The tile coordinate.
---* return The position in points of a given tile coordinate. ---@param tileCoordinate vec2_table ---@return vec2_table function TMXLayer:getPositionAt (tileCoordinate) end ---* Set layer orientation, which is the same as the map orientation.
---* param orientation Layer orientation,which is the same as the map orientation. ---@param orientation int ---@return self function TMXLayer:setLayerOrientation (orientation) end ---* Dealloc the map that contains the tile position from memory.
---* Unless you want to know at runtime the tiles positions, you can safely call this method.
---* If you are going to call layer->tileGIDAt() then, don't release the map. ---@return self function TMXLayer:releaseMap () end ---* Size of the layer in tiles.
---* return Size of the layer in tiles. ---@return size_table function TMXLayer:getLayerSize () end ---* Set the size of the map's tile.
---* param size The size of the map's tile. ---@param size size_table ---@return self function TMXLayer:setMapTileSize (size) end ---* Layer orientation, which is the same as the map orientation.
---* return Layer orientation, which is the same as the map orientation. ---@return int function TMXLayer:getLayerOrientation () end ---* Set an Properties from to layer.
---* param properties It is used to set the layer Properties. ---@param properties map_table ---@return self function TMXLayer:setProperties (properties) end ---* Set the layer name.
---* param layerName The layer name. ---@param layerName string ---@return self function TMXLayer:setLayerName (layerName) end ---* Removes a tile at given tile coordinate.
---* param tileCoordinate The tile coordinate. ---@param tileCoordinate vec2_table ---@return self function TMXLayer:removeTileAt (tileCoordinate) end ---* Initializes a TMXLayer with a tileset info, a layer info and a map info.
---* param tilesetInfo An tileset info.
---* param layerInfo A layer info.
---* param mapInfo A map info.
---* return If initializes successfully, it will return true. ---@param tilesetInfo cc.TMXTilesetInfo ---@param layerInfo cc.TMXLayerInfo ---@param mapInfo cc.TMXMapInfo ---@return boolean function TMXLayer:initWithTilesetInfo (tilesetInfo,layerInfo,mapInfo) end ---* Creates the tiles. ---@return self function TMXLayer:setupTiles () end ---@overload fun(unsigned_int:unsigned_int,vec2_table:vec2_table,int:int):self ---@overload fun(unsigned_int:unsigned_int,vec2_table:vec2_table):self ---@param gid unsigned_int ---@param tileCoordinate vec2_table ---@param flags int ---@return self function TMXLayer:setTileGID (gid,tileCoordinate,flags) end ---* Size of the map's tile (could be different from the tile's size).
---* return The size of the map's tile. ---@return size_table function TMXLayer:getMapTileSize () end ---* Return the value for the specific property name.
---* param propertyName The specific property name.
---* return Return the value for the specific property name. ---@param propertyName string ---@return cc.Value function TMXLayer:getProperty (propertyName) end ---* Set size of the layer in tiles.
---* param size Size of the layer in tiles. ---@param size size_table ---@return self function TMXLayer:setLayerSize (size) end ---* Get the layer name.
---* return The layer name. ---@return string function TMXLayer:getLayerName () end ---* Set tileset information for the layer.
---* param info The tileset information for the layer.
---* js NA ---@param info cc.TMXTilesetInfo ---@return self function TMXLayer:setTileSet (info) end ---* Tileset information for the layer.
---* return Tileset information for the layer. ---@return cc.TMXTilesetInfo function TMXLayer:getTileSet () end ---@overload fun():self ---@overload fun():self ---@return map_table function TMXLayer:getProperties () end ---* Returns the tile (Sprite) at a given a tile coordinate.
---* The returned Sprite will be already added to the TMXLayer. Don't add it again.
---* The Sprite can be treated like any other Sprite: rotated, scaled, translated, opacity, color, etc.
---* You can remove either by calling:
---* - layer->removeChild(sprite, cleanup);
---* - or layer->removeTileAt(Vec2(x,y));
---* param tileCoordinate A tile coordinate.
---* return Returns the tile (Sprite) at a given a tile coordinate. ---@param tileCoordinate vec2_table ---@return cc.Sprite function TMXLayer:getTileAt (tileCoordinate) end ---* Creates a TMXLayer with an tileset info, a layer info and a map info.
---* param tilesetInfo An tileset info.
---* param layerInfo A layer info.
---* param mapInfo A map info.
---* return An autorelease object. ---@param tilesetInfo cc.TMXTilesetInfo ---@param layerInfo cc.TMXLayerInfo ---@param mapInfo cc.TMXMapInfo ---@return self function TMXLayer:create (tilesetInfo,layerInfo,mapInfo) end ---* ---@param child cc.Node ---@param zOrder int ---@param tag int ---@return self function TMXLayer:addChild (child,zOrder,tag) end ---* js NA ---@return string function TMXLayer:getDescription () end ---* ---@param child cc.Node ---@param cleanup boolean ---@return self function TMXLayer:removeChild (child,cleanup) end ---* js ctor ---@return self function TMXLayer:TMXLayer () end