koishi-plugin-toram
Version:
31 lines (30 loc) • 1.6 kB
TypeScript
import { Logger } from 'koishi';
export declare class JsonMgr {
private static instance;
static Inst(): JsonMgr;
private _json;
private _logger;
/**
* 异步获取 ./external/toram/src/json 目录下的所有JSON文件,并将其内容解析后存储到内部的Map对象中。
* 该方法会遍历指定目录下的所有文件,筛选出扩展名为.json的文件,然后读取每个文件的内容,
* 将其解析为JavaScript对象,并以文件名作为键,解析后的对象作为值存储在内部的Map对象中。
* 如果在读取文件或解析JSON时发生错误,将在控制台输出错误信息。
*/
loadJson(): Promise<void>;
/**
* 根据指定的名称从内部的Map对象中获取对应的JSON数据。
* 该方法会在内部的Map对象中查找与给定名称匹配的键,并返回对应的值。
* 如果找不到匹配的键,则返回undefined。
* @param name - 要获取的JSON数据的名称,通常是文件名(不包括扩展名)。
* @returns 返回与指定名称对应的JSON数据,如果找不到则打印log并返回null。
*/
getJson(name: string): any;
/**
* 设置日志记录器实例,用于记录JsonMgr类的操作日志。
* 该方法允许外部传入一个Logger实例,以便在JsonMgr类的各个方法中使用该实例进行日志记录。
* @param logger - 一个Logger实例,用于记录日志。
*/
setLogger(logger: Logger): void;
/** 保存json */
saveJson(name: string, data?: any): Promise<void>;
}