import { FileRecord } from '@electron/asar'; import { createAsarOpts } from './common.js'; import type { ProcessedOptionsWithSinglePlatformArch } from './types.js'; export declare class App { asarIntegrity: Record> | undefined; asarOptions: ReturnType; cachedStagingPath: string | undefined; opts: ProcessedOptionsWithSinglePlatformArch; templatePath: string; constructor(opts: ProcessedOptionsWithSinglePlatformArch, templatePath: string); create(): Promise; /** * Resource directory path before renaming. */ get originalResourcesDir(): string; /** * Resource directory path after renaming. */ get resourcesDir(): string; get originalResourcesAppDir(): string; get electronBinaryDir(): string; get originalElectronName(): string; get newElectronName(): string; get executableName(): string; get stagingPath(): string; get appAsarPath(): string; get commonHookArgs(): { electronVersion: string; platform: import("./types.js").OfficialPlatform; arch: import("./types.js").OfficialArch; }; get hookArgsWithOriginalResourcesAppDir(): { electronVersion: string; platform: import("./types.js").OfficialPlatform; arch: import("./types.js").OfficialArch; buildPath: string; }; relativeRename(basePath: string, oldName: string, newName: string): Promise; renameElectron(): Promise; /** * Performs the following initial operations for an app: * * Creates temporary directory * * Remove default_app (which is either a folder or an asar file) * * If a prebuilt asar is specified: * * Copies asar into temporary directory as app.asar * * Otherwise: * * Copies template into temporary directory * * Copies user's app into temporary directory * * Prunes non-production node_modules (if opts.prune is either truthy or undefined) * * Creates an asar (if opts.asar is set) * * Prune and asar are performed before platform-specific logic, primarily so that * this.originalResourcesAppDir is predictable (e.g. before .app is renamed for Mac) */ initialize(): Promise; buildApp(): Promise; copyTemplate(): Promise; removeDefaultApp(): Promise; /** * Forces an icon filename to a given extension and returns the normalized filename, * if it exists. Otherwise, returns null. * * This error path is used by win32 if no icon is specified. */ normalizeIconExtension(targetExt: string): Promise; prebuiltAsarWarning(option: keyof ProcessedOptionsWithSinglePlatformArch, triggerWarning: unknown): void; copyPrebuiltAsar(): Promise; appRelativePlatformPath(p: string): string; asarApp(): Promise; getAsarIntegrity(path: string): Pick; copyExtraResources(): Promise; move(): Promise; }