---@meta ---@class class ---@field public static any --- middleclass class = {} ---@param class class|Object ---@return boolean function class:isSubclassOf(class) end ---@class Object ---@field public class class Object = { static = {} } ---@generic T ---@param self T function Object:initialize(...) end ---@generic T ---@param self T ---@return T function Object:new(...)end ---@param name string function Object:subclass(name)end ---@param class class|Object ---@return boolean function Object:isInstanceOf(class) end ---@param class class ---@return boolean function Object:isSubclassOf(class) end ---@class json json = {} --- convert obj to JSON string ---@return string json function json.encode(obj)end --- convert JSON string to lua types ---@param str string @ JSON string to decode ---@return any function json.decode(str)end