@atomist/sdm-core
Version:
Atomist Software Delivery Machine - Implementation
25 lines • 1.64 kB
TypeScript
import { EventFired, HandlerContext, HandlerResult } from "@atomist/automation-client";
import { HandleEvent } from "@atomist/automation-client/lib/HandleEvent";
import { CredentialsResolver, GoalApprovalRequestVoteDecisionManager, GoalApprovalRequestVoter, GoalImplementationMapper, PreferenceStoreFactory, RepoRefResolver, SoftwareDeliveryMachineConfiguration } from "@atomist/sdm";
import { OnAnyApprovedSdmGoal } from "../../../../typings/types";
/**
* Vote on approved goals.
*
* This allows GoalApprovalVoter instances to vote on the approved goal to decide
* if this approval request can be granted or not.
*
* The final decision if the request should be granted based on all votes is delegated to the
* configured instance of GoalApprovalRequestVoteDecisionManager.
*/
export declare class VoteOnGoalApprovalRequest implements HandleEvent<OnAnyApprovedSdmGoal.Subscription> {
private readonly repoRefResolver;
private readonly credentialsFactory;
private readonly voters;
private readonly decisionManager;
private readonly implementationMapper;
private readonly preferenceStoreFactory;
configuration: SoftwareDeliveryMachineConfiguration;
constructor(repoRefResolver: RepoRefResolver, credentialsFactory: CredentialsResolver, voters: GoalApprovalRequestVoter[], decisionManager: GoalApprovalRequestVoteDecisionManager, implementationMapper: GoalImplementationMapper, preferenceStoreFactory: PreferenceStoreFactory);
handle(event: EventFired<OnAnyApprovedSdmGoal.Subscription>, context: HandlerContext): Promise<HandlerResult>;
}
//# sourceMappingURL=VoteOnGoalApprovalRequest.d.ts.map