27 lines
586 B
TypeScript
27 lines
586 B
TypeScript
|
import { readFile, writeFile } from "fs";
|
||
|
|
||
|
export async function asyncLoadJSON<T>(filename: string): Promise<T> {
|
||
|
return new Promise((resolve, reject) => {
|
||
|
readFile(filename, "utf8", (err, data) => {
|
||
|
if (err) {
|
||
|
return reject(err);
|
||
|
}
|
||
|
resolve(JSON.parse(data));
|
||
|
});
|
||
|
});
|
||
|
}
|
||
|
|
||
|
export async function asyncSaveJSON(
|
||
|
filename: string,
|
||
|
data: any
|
||
|
): Promise<void> {
|
||
|
return new Promise((resolve, reject) => {
|
||
|
writeFile(filename, JSON.stringify(data), {}, err => {
|
||
|
if (err) {
|
||
|
return reject(err);
|
||
|
}
|
||
|
resolve();
|
||
|
});
|
||
|
});
|
||
|
}
|