import { FileTransformer } from "builder-util/out/fs"; import { AsarIntegrity } from "./asar/integrity"; import { Platform, PlatformPackager, ElectronPlatformName } from "./index"; export interface Framework { readonly name: string; readonly version: string; readonly distMacOsAppName: string; readonly macOsDefaultTargets: Array; readonly defaultAppIdPrefix: string; readonly isNpmRebuildRequired: boolean; readonly isDefaultAppIconProvided: boolean; getDefaultIcon?(platform: Platform): string; prepareApplicationStageDirectory(options: PrepareApplicationStageDirectoryOptions): Promise; beforeCopyExtraFiles?(packager: PlatformPackager, appOutDir: string, asarIntegrity: AsarIntegrity | null): Promise; createTransformer?(): FileTransformer | null; } export interface PrepareApplicationStageDirectoryOptions { readonly packager: PlatformPackager; /** * Platform doesn't process application output directory in any way. Unpack implementation must create or empty dir if need. */ readonly appOutDir: string; readonly platformName: ElectronPlatformName; readonly arch: string; readonly version: string; } export declare function isElectronBased(framework: Framework): boolean;