実装: class CachedAsyncStore<T, Key = string> { private promiseMap: Map<Key, Promise<T>> = new Map(); private fn: (key: Key) => Promise<T>; constructor(fn: (key: Key) => Promise<T>) { this.fn = fn; } get(key: Key): Promise<T> { const { promiseMap } = this; const cachedPromise = promiseMap.get(key); if…