import { IApplication } from './application';
import { ChangelogEntry } from './changelog';
import { IConfiguration } from './configuration';
import { ConventionalCommit } from './conventional-commmit-utils';
import { IWorkspace } from './workspace-utils';
export interface Bump {
    packageRelativeCwd: string;
    tag: string;
    packageName: string;
    version: string;
    previousVersion: string;
    changeLog: ChangelogEntry;
    private: boolean;
    commits: ConventionalCommit[];
}
export interface BumpManifestGitStatus {
    preBump: string;
    postBump: string;
}
export interface BumpManifestContent {
    gitStatus: BumpManifestGitStatus;
    bumps: Bump[];
}
export declare class BumpManifest {
    private application;
    gitStatus: BumpManifestGitStatus;
    bumps: Bump[];
    private constructor();
    static load(application: IApplication): Promise<BumpManifest | null>;
    static new(application: IApplication): Promise<BumpManifest>;
    static clear(configuration: IConfiguration): Promise<void>;
    add(workspace: IWorkspace, version: string, previousVersion: string, changeLog: ChangelogEntry, commits: ConventionalCommit[]): void;
    persist(): Promise<void>;
}
