@iamevan/electron-chrome-web-store
Version:
Install and update Chrome extensions from the Chrome Web Store for Electron
81 lines (80 loc) • 2.57 kB
TypeScript
export { loadAllExtensions } from './loader';
export { installExtension, uninstallExtension, downloadExtension } from './installer';
export { updateExtensions } from './updater';
import { BeforeInstall, AfterInstall, ExtensionId, OverrideExtensionInstallStatus, AfterUninstall, CustomSetExtensionEnabled } from './types';
import { ExtensionInstallStatus } from '../common/constants';
export { ExtensionInstallStatus };
interface ElectronChromeWebStoreOptions {
/**
* Session to enable the Chrome Web Store in.
* Defaults to session.defaultSession
*/
session?: Electron.Session;
/**
* Path to the 'electron-chrome-web-store' module.
*
* @deprecated See "Packaging the preload script" in the readme.
*/
modulePath?: string;
/**
* Path to extensions directory.
* Defaults to 'Extensions/' under app's userData path.
*/
extensionsPath?: string;
/**
* Load extensions installed by Chrome Web Store.
* Defaults to true.
*/
loadExtensions?: boolean;
/**
* Whether to allow loading unpacked extensions. Only loads if
* `loadExtensions` is also enabled.
* Defaults to false.
*/
allowUnpackedExtensions?: boolean;
/**
* List of allowed extension IDs to install.
*/
allowlist?: ExtensionId[];
/**
* List of denied extension IDs to install.
*/
denylist?: ExtensionId[];
/**
* Whether extensions should auto-update.
*/
autoUpdate?: boolean;
/**
* Minimum supported version of Chrome extensions.
* Defaults to 3.
*/
minimumManifestVersion?: number;
/**
* Called prior to installing an extension. If implemented, return a Promise
* which resolves with `{ action: 'allow' | 'deny' }` depending on the action
* to be taken.
*/
beforeInstall?: BeforeInstall;
/**
* Called when setting the enabled status of an extension.
*/
customSetExtensionEnabled?: CustomSetExtensionEnabled;
/**
* Called when determining the install status of an extension.
*/
overrideExtensionInstallStatus?: OverrideExtensionInstallStatus;
/**
* Called after an extension is installed.
*/
afterInstall?: AfterInstall;
/**
* Called after an extension is uninstalled.
*/
afterUninstall?: AfterUninstall;
}
/**
* Install Chrome Web Store support.
*
* @param options Chrome Web Store configuration options.
*/
export declare function installChromeWebStore(opts?: ElectronChromeWebStoreOptions): Promise<void>;