export class TemplateCache { #cache = new Map(); async get(key: string): Promise { return this.#cache.get(key); } async set(key: string, val: string): Promise { this.#cache.set(key, val); return this; } } export class NoopTemplateCache extends TemplateCache { async get(_: string): Promise { return undefined; } async set(_key: string, _val: string): Promise { return this; } }