diff --git a/examples/self-hosted/src/shared.ts b/examples/self-hosted/src/shared.ts index 274aa32..f6a92c3 100644 --- a/examples/self-hosted/src/shared.ts +++ b/examples/self-hosted/src/shared.ts @@ -1,16 +1,26 @@ import { promises as fs } from "fs"; import path from "path"; -const certificatesCache: Partial<{ - signerCert: Buffer; - signerKey: Buffer; - wwdr: Buffer; - signerKeyPassphrase: string; -}> = {}; +interface Cache { + certificates: + | { + signerCert: Buffer | string; + signerKey: Buffer | string; + wwdr: Buffer | string; + signerKeyPassphrase: string; + } + | undefined; +} -export async function getCertificates(): Promise { - if (Object.keys(certificatesCache).length) { - return certificatesCache; +const cache: Cache = { + certificates: undefined, +}; + +export async function getCertificates(): Promise< + Exclude +> { + if (cache.certificates) { + return cache.certificates; } const [signerCert, signerKey, wwdr, signerKeyPassphrase] = @@ -30,12 +40,12 @@ export async function getCertificates(): Promise { Promise.resolve("123456"), ]); - Object.assign(certificatesCache, { + cache.certificates = { signerCert, signerKey, wwdr, signerKeyPassphrase, - }); + }; - return certificatesCache; + return cache.certificates; }