import { Arch } from "builder-util" import { PublishConfiguration } from "builder-util-runtime" import { UploadTask } from "electron-publish" import { Configuration } from "./configuration" import { Platform, Target } from "./core" import { Packager } from "./packager" import { PlatformPackager } from "./platformPackager" export interface PackagerOptions { targets?: Map>> mac?: Array linux?: Array win?: Array projectDir?: string | null platformPackagerFactory?: ((info: Packager, platform: Platform) => PlatformPackager) | null readonly config?: Configuration | string | null readonly effectiveOptionComputed?: (options: any) => Promise readonly prepackaged?: string | null } export interface ArtifactCreated extends UploadTask { readonly packager: PlatformPackager readonly target: Target | null updateInfo?: any readonly safeArtifactName?: string | null readonly publishConfig?: PublishConfiguration | null readonly isWriteUpdateInfo?: boolean } export interface ArtifactBuildStarted { readonly targetPresentableName: string readonly file: string // null for NSIS readonly arch: Arch | null }