import { GitProject } from "@atomist/automation-client";
import { ExecuteGoalResult, GoalInvocation, GoalProjectListenerEvent, GoalProjectListenerRegistration, PrepareForGoalExecution, ProgressLog } from "@atomist/sdm";
import { ProjectVersioner } from "@atomist/sdm-core";
import { MavenArgs } from "./MavenBuilder";
export declare const MavenOptions: string[];
/**
 * ProjectVersioner to be used with Maven projects
 * @param sdmGoal
 * @param p
 * @param log
 * @constructor
 */
export declare const MavenProjectVersioner: ProjectVersioner;
/**
 * PrepareForGoalExecution for updating the Maven version in project
 * @param p
 * @param goalInvocation
 * @constructor
 */
export declare const MavenVersionPreparation: PrepareForGoalExecution;
/**
 * PrepareForGoalExecution for running Maven package
 * @param p
 * @param goalInvocation
 * @constructor
 */
export declare const MavenCompilePreparation: PrepareForGoalExecution;
/**
 * Constructs a PrepareForGoalExecution taking additional command line args
 * @param args
 */
export declare function mavenPackagePreparation(args?: MavenArgs[]): PrepareForGoalExecution;
export declare function mavenIncrementPatchVersionCommand(p: GitProject, progressLog: ProgressLog): Promise<ExecuteGoalResult>;
export declare function mvnVersionProjectListener(p: GitProject, gi: GoalInvocation, event: GoalProjectListenerEvent): Promise<void | ExecuteGoalResult>;
export declare const MvnVersion: GoalProjectListenerRegistration;
export declare const MvnPackage: GoalProjectListenerRegistration;
export declare const MavenDefaultOptions: {
    pushTest: import("@atomist/sdm").PredicatePushTest;
    logInterpreter: import("@atomist/sdm").InterpretLog<any>;
    progressReporter: import("@atomist/sdm").ReportProgress;
};
