import { PluginType, RepositoryConfig } from '../manifest'; import { GitHub } from '../github'; import { ManifestPlugin } from '../plugin'; import { VersioningStrategyType } from './versioning-strategy-factory'; export interface PluginFactoryOptions { type: PluginType; github: GitHub; targetBranch: string; repositoryConfig: RepositoryConfig; manifestPath: string; alwaysLinkLocal?: boolean; updateAllPackages?: boolean; } export declare type PluginBuilder = (options: PluginFactoryOptions) => ManifestPlugin; export declare function buildPlugin(options: PluginFactoryOptions): ManifestPlugin; export declare function registerPlugin(name: string, pluginBuilder: PluginBuilder): void; export declare function unregisterPlugin(name: string): void; export declare function getPluginTypes(): readonly VersioningStrategyType[];