UNPKG

@iamevan/electron-chrome-web-store

Version:

Install and update Chrome extensions from the Chrome Web Store for Electron

34 lines (33 loc) 1.38 kB
export type ExtensionId = Electron.Extension['id']; export interface ExtensionInstallDetails { id: string; localizedName: string; manifest: chrome.runtime.Manifest; icon: Electron.NativeImage; browserWindow?: Electron.BrowserWindow; frame: Electron.WebFrameMain; } export type BeforeInstall = (details: ExtensionInstallDetails) => Promise<{ action: 'allow' | 'deny'; }>; export type AfterInstall = (details: ExtensionInstallDetails) => Promise<void>; export type AfterUninstall = (details: { id: ExtensionId; extension?: Electron.Extension; manifest?: chrome.runtime.Manifest; }) => Promise<void>; export type CustomSetExtensionEnabled = (state: WebStoreState, extensionId: ExtensionId, enabled: boolean) => Promise<void>; export type OverrideExtensionInstallStatus = (state: WebStoreState, extensionId: ExtensionId, manifest?: chrome.runtime.Manifest) => string | undefined; export interface WebStoreState { session: Electron.Session; extensionsPath: string; installing: Set<ExtensionId>; allowlist?: Set<ExtensionId>; denylist?: Set<ExtensionId>; minimumManifestVersion: number; beforeInstall?: BeforeInstall; afterInstall?: AfterInstall; afterUninstall?: AfterUninstall; customSetExtensionEnabled?: CustomSetExtensionEnabled; overrideExtensionInstallStatus?: OverrideExtensionInstallStatus; }