/** * This module handles the concerns of publishing. It handles interaction with * git tagging, pushing to the git origin, the package registry, etc. */ declare type Options = { /** * Should publishing to npm take place? * * @default true */ npm?: boolean; /** * Should the semver git tag have a "v" prefix. * * @default false */ gitTagVPrefix?: boolean; /** * Should each given dist tag have a corresponding git tag made? * * @default 'all' */ gitTag?: 'all' | 'just_version' | 'just_dist_tags' | 'none'; }; export interface Release { /** * The version to publish. */ version: string; /** * The npm dist tag to use for this release. */ distTag: string; /** * Additional dist tags to use for this release. * * @remarks * * When publishing it is sometimes desirable to update other dist tags to * point at the new version. For example "next" should never fall behind * stable, etc. */ extraDistTags?: string[]; /** * Release notes. */ notes?: string; } export interface PublishPlan { release: Release; options?: Options; } /** * Events that provide insight into the progress of the publishing process. */ declare type ProgressMessage = { kind: 'extra_dist_tag_updated'; distTag: string; } | { kind: 'package_published'; } | { kind: 'package_json_reverted'; } | { kind: 'version_git_tag_created'; } | { kind: 'extra_dist_tag_git_tag_created'; distTag: string; } | { kind: 'extra_dist_tag_git_tag_pushed'; distTag: string; }; /** * Run the publishing process. * * 1. Change package.json version field to be new version. * 2. npm publish --tag next. * 3. discard package.json change. * 4. git tag {newVer}. * 5. git tag next. * 6. git push --tags. * */ export declare function publishPackage(input: PublishPlan): AsyncGenerator; export {}; //# sourceMappingURL=publish-package.d.ts.map