import { GitProject, Project, RemoteRepoRef } from "@atomist/automation-client";
import { ExecuteGoalResult, GoalInvocation, GoalProjectListenerRegistration, ProgressLog, SoftwareDeliveryMachine } from "@atomist/sdm";
/**
 * Push test for Go projects built with make.
 */
export declare const IsGoMake: import("@atomist/sdm").PushTest;
/**
 * Push test for Go projects built with make with Dockerfile.
 */
export declare const IsGoMakeDocker: import("@atomist/sdm").PushTest;
/**
 * Add Go support and implementations of SDM goals.
 *
 * @param sdm Software Delivery machine to modify
 * @return modified software delivery machine
 */
export declare function addGoSupport(sdm: SoftwareDeliveryMachine): SoftwareDeliveryMachine;
/**
 * Extract project information from Go project.
 */
export declare const goProjectIdentifier: (p: Project) => Promise<{
    id: RemoteRepoRef;
    name: string;
    version: string;
}>;
/**
 * Hack a GOPATH to work with the way the SDM checks projects out.
 */
export declare function goPathHack(project: GitProject, goalInvocation: GoalInvocation): Promise<ExecuteGoalResult>;
export declare const GoPathHack: GoalProjectListenerRegistration;
/**
 * Command for incrementing the version patch value in
 * `cmd/version.go` and `Makefile`.
 */
export declare function goIncrementPatch(p: Project, log: ProgressLog): Promise<ExecuteGoalResult>;
