@jwpkg/gitversion
Version:
Gitversion is a complete customizable git-based release management system
44 lines (43 loc) • 1.6 kB
TypeScript
import { BumpManifestGitStatus } from './bump-manifest';
import { ChangelogEntry } from './changelog';
import { IConfiguration } from './configuration';
import { ConventionalCommit } from './conventional-commmit-utils';
import { Git } from './git';
export interface PackedPackage {
packFiles?: Record<string, string | string[] | Record<string, string>>;
packageRelativeCwd: string;
tag: string;
packageName: string;
version: string;
previousVersion: string;
changeLog: ChangelogEntry;
commits: ConventionalCommit[];
republish?: boolean;
}
export interface PackManifestGitStatus extends BumpManifestGitStatus {
prePack: string;
postPack: string;
}
export interface PackManifestContent {
gitStatus: PackManifestGitStatus;
packages: PackedPackage[];
republish?: boolean;
}
export declare class PackArtifact {
private configuration;
private git;
gitStatus: PackManifestGitStatus;
packages: PackedPackage[];
republish: boolean;
get packFolder(): string;
get packManifestFile(): string;
private constructor();
validateGitStatusWithBump(): boolean;
validateGitStatusDuringPack(): boolean;
validateGitStatusForPublish(): Promise<boolean>;
static load(configuration: IConfiguration, git: Git): Promise<PackArtifact | null>;
static new(configuration: IConfiguration, git: Git, bumpGitStatus: BumpManifestGitStatus, republish?: boolean): Promise<PackArtifact>;
static clear(configuration: IConfiguration): Promise<void>;
add(packedPackage: PackedPackage): void;
persist(): Promise<void>;
}