import * as asar from "@electron/asar"import { FilesystemEntry, FilesystemFileEntry } from "@electron/asar/lib/filesystem"export function checkFileInArchive(asarFile: string, relativeFile: string, messagePrefix: string) {function error(text: string) {return new Error(`${messagePrefix} "${relativeFile}" in the "${asarFile}" ${text}`)}let stat: FilesystemEntrytry {stat = asar.statFile(asarFile, relativeFile, false)} catch (e: any) {if (e.message.includes("Cannot read properties of undefined (reading 'link')")) {throw error("does not exist. Seems like a wrong configuration.")}throw error(`is corrupted: ${e}`)}if ((stat as FilesystemFileEntry).size === 0) {throw error(`is corrupted: size 0`)}return stat}