import fs, { readFileSync } from "fs"; import { MongoClient } from "mongodb"; import util from "util"; const write = util.promisify(fs.writeFile); const read = util.promisify(fs.readFile); class Store { filename: string; record: Record; constructor(filename: string) { this.filename = filename; try { this.record = JSON.parse(readFileSync(filename, "utf8")); } catch { this.record = {}; } } public get() { return this.record; } public set(key: string, val: string) { this.record[key] = val; } public delete(key: string) { delete this.record[key]; } public async update(record: Record) { await write(this.filename, JSON.stringify(this.record), "utf8"); } } class HTML { html: string; constructor() { // load from file try { this.html = fs.readFileSync("./html.html", "utf8"); } catch { this.html = ""; } } public get() { return this.html; } public async set(html: string) { this.html = html; // store into file await write("./html.html", html, "utf8"); } } export const html = new HTML(); export const store = new Store("store.json"); export const regular = new Store("regular.json");