@levimc-lse/types
Version:
TypeScript declaration files for the Legacy Script Engine.
176 lines (143 loc) • 4.88 kB
TypeScript
/// <reference path="../index.d.ts" />
declare class version {
/** 主版本号(如 **2**.1.0 里的 **2**) */
major: number
/** 次版本号(如 2.**1**.0 里的 **1**) */
minor: number
/** 修订版本号(如 2.1.**0** 里的 **0**) */
revision: number
/** 当前版本是否为测试版 */
isBeta: boolean
}
interface Plugin {
/** 插件名称 */
name: string
/** 插件描述 */
desc: string
/** 插件版本(数组形式) */
version: [number, number, number]
/** 插件版本 */
versionStr: string
/** 插件路径 */
filePath: string
/** 其他信息 */
others: object
}
declare namespace ll {
/** LiteLoaderBDS 使用的语言。(例如 `zh_Hans`、`en` 和 `ru_RU`) */
const language: string
/** 主版本号(如 **2**.1.0 里的 **2**) */
const major: number
/** 次版本号(如 2.**1**.0 里的 **1**) */
const minor: number
/** 修订版本号(如 2.1.**0** 里的 **0**) */
const revision: number
/** 版本状态 (`0` 为 `Dev`, `1` 为 `Beta`, `2` 为 `Release`) */
const status: number
/** LiteLoaderBDS Script Engine 版本 */
const scriptEngineVersion: string
/** 是否处于 Wine 环境下 */
const isWine: boolean
/** 是否处于 debug 模式 */
const isDebugMode: boolean
/** 当前版本是否为测试版 */
const isBeta: boolean
/** 当前版本是否为开发版 */
const isDev: boolean
/** 当前版本是否为发布版本 */
const isRelease: boolean
/** LeviLamina 插件的根目录 */
const pluginsRoot: string
/**
* 获取 LiteLoader 加载器版本
* @returns 加载器版本对象
*/
function version(): version
/**
* 获取 LiteLoader 加载器版本字符串
* @returns 加载器版本
*/
function versionString(): string
/**
* 检查 LiteLoader 加载器版本
* @param major 检查当前已安装LiteLoaderBDS的主版本号是否 >= 此值
* @param minor (可选参数) 检查当前已安装LiteLoaderBDS的次版本号是否 >= 此值
* @param revision (可选参数) 检查当前已安装LiteLoaderBDS的修订版本号是否 >= 此值
* @returns 检查结果
*/
function requireVersion(major: number, minor?: number, revision?: number): boolean
/**
* 获取有关插件的信息
* @param name 插件名称
*/
function getPluginInfo(name: string): Plugin
/**
* 获取当前插件的信息
*/
function getCurrentPluginInfo(): Plugin
/**
* 列出所有已加载的插件
* @returns 列出所有已加载的插件
*/
function listPlugins(): string[]
/** 列出所有加载的插件信息 */
function getAllPluginInfo(): Plugin[]
/**
* 导出函数
* @param func 要导出的函数
* @param namespace 函数的命名空间名,只是方便用于区分不同插件导出的API
* @param name 函数的导出名称。其他插件根据导出名称来调用这个函数
* @returns 是否成功导出
*/
function exports(
func: (...arg: any[]) => any,
namespace: string,
name: string,
): boolean
/**
* 导出函数
* @param func 要导出的函数
* @param name 函数的导出名称。其他插件根据导出名称来调用这个函数
* @returns 是否成功导出
*/
function exports(func: (...arg: any[]) => any, name: string): boolean
/**
* 导入函数
* @param namespace 要导入的函数使用的命名空间名称
* @param name 要导入的函数使用的导出名称
* @returns 导入的函数
*/
function imports(namespace: string, name: string): (...arg: any[]) => any
/**
* 导入函数
* @param name 要导入的函数使用的导出名称
* @returns 导入的函数
*/
function imports(name: string): (...arg: any[]) => any
/**
* 判断远程函数是否已导出
* @param namespace 函数使用的命名空间名称
* @param name 函数使用的导出名称
* @returns 函数是否已导出
*/
function hasExported(namespace: string, name: string): boolean
/**
* 判断远程函数是否已导出
* @param name 函数使用的导出名称
* @returns 函数是否已导出
*/
function hasExported(name: string): boolean
/**
* 设置插件依赖库
* @param path 依赖库文件名(如 `addplugin.js`)
* @param remotePath (可选参数)查找并装载依赖库的路径,说明见文档
* @returns 是否加载依赖库成功
*/
function require(path: string, remotePath?: string): boolean
/**
* 将字符串作为脚本代码执行
* @param str 要作为脚本代码执行的字符串
* @returns 执行结果
*/
function eval(str: string): any
}