PUSH [===[---@meta ]===] if VERSION >=5.4 then PUSH [===[ ]===] DES 'require>5.4' PUSH [===[ ---@param modname string ---@return any ---@return any loaderdata function require(modname) end ]===] else PUSH [===[ ]===] DES 'require<5.3' PUSH [===[ ---@param modname string ---@return any function require(modname) end ]===] end PUSH [===[ ]===] DES 'package' PUSH [===[ ---@class package* ---@DES 'package.config' ---@field conifg string ---@DES 'package.cpath' ---@field cpath string ---@DES 'package.loaded' ---@field loaded table ---@DES 'package.path' ---@field path string ---@DES 'package.preload' ---@field preload table package = {} ---@version <5.1 ]===] DES 'package.loaders' PUSH [===[ package.loaders = {} ]===] DES 'package.loadlib' PUSH [===[ ---@param libname string ---@param funcname string ---@return any function package.loadlib(libname, funcname) end ]===] DES 'package.searchers' PUSH [===[ ---@version >5.2 package.searchers = {} ]===] DES 'package.searchpath' PUSH [===[ ---@version >5.2,JIT ---@param name string ---@param path string ---@param sep? string ---@param rep? string ---@return string? filename ---@return string? errmsg function package.searchpath(name, path, sep, rep) end ]===] DES 'package.seeall' PUSH [===[ ---@version <5.1 ---@param module table function package.seeall(module) end return package ]===]