import { EventFired, HandleEvent } from "@atomist/automation-client/lib/HandleEvent";
import { HandlerContext } from "@atomist/automation-client/lib/HandlerContext";
import { HandlerResult } from "@atomist/automation-client/lib/HandlerResult";
import { PreferenceStoreFactory } from "../../../../../api/context/preferenceStore";
import { GoalImplementationMapper } from "../../../../../api/goal/support/GoalImplementationMapper";
import { SoftwareDeliveryMachineConfiguration } from "../../../../../api/machine/SoftwareDeliveryMachineOptions";
import { CredentialsResolver } from "../../../../../spi/credentials/CredentialsResolver";
import { RepoRefResolver } from "../../../../../spi/repo-ref/RepoRefResolver";
import { OnAnySuccessfulSdmGoal } from "../../../../../typings/types";
/**
 * Move downstream goals from 'planned' to 'requested' when preconditions are met.
 */
export declare class RequestDownstreamGoalsOnGoalSuccess implements HandleEvent<OnAnySuccessfulSdmGoal.Subscription> {
    private readonly name;
    private readonly implementationMapper;
    private readonly repoRefResolver;
    private readonly credentialsResolver;
    private readonly preferenceStoreFactory;
    configuration: SoftwareDeliveryMachineConfiguration;
    constructor(name: string, implementationMapper: GoalImplementationMapper, repoRefResolver: RepoRefResolver, credentialsResolver: CredentialsResolver, preferenceStoreFactory: PreferenceStoreFactory);
    handle(event: EventFired<OnAnySuccessfulSdmGoal.Subscription>, context: HandlerContext): Promise<HandlerResult>;
}
//# sourceMappingURL=RequestDownstreamGoalsOnGoalSuccess.d.ts.map