7const readJsonSecretOrThrow = (secretPath: string) => { 8 try { return json1Parse(fs.readFileSync(secretPath, 'utf-8')) as secretObjType } 9 catch (err) { if ((err as NodeJS.ErrnoException).code === 'ENOENT') throw new SecretNotExistErr(secretPath); throw err } 12export type secretValType = secretObjType | secretStrType 14export type secretObjType = any & { readonly __brand: unique symbol } 16const jsonSecretsH : Record<secretNameType, secretObjType> = {} 17export const getReqJsonSecret = (secName : secretNameType) => { 18 const existJson = jsonSecretsH[secName] 19 if (existJson) return existJson 21 return jsonSecretsH[secName] = readJsonSecretOrThrow(secretPath) 24export const getOptJsonSecret = (secName : secretNameType) => { 25 try { return getReqJsonSecret(secName) }