import * as iam from "aws-cdk-lib/aws-iam";
import * as pipelines from "aws-cdk-lib/pipelines";
import { Construct } from "constructs";
export interface GetSynthActionProps {
    readonly codePipelineSource?: pipelines.IFileSetProducer;
    readonly cdkVersion?: string;
    readonly partition?: string;
    readonly region?: string;
    readonly account?: string;
    readonly rolePolicyStatements?: iam.PolicyStatement[];
    readonly codeartifactRepository?: string;
    readonly codeartifactDomain?: string;
    readonly codeartifactDomainOwner?: string;
    readonly additionalInstallCommands?: string[];
    readonly env?: {
        [key: string]: string;
    };
}
export interface CodeCommitSourceActionProps {
    readonly repositoryName: string;
    readonly branch: string;
    readonly props?: pipelines.ConnectionSourceOptions;
}
export interface CodeArtifactPublishActionProps {
    readonly partition: string;
    readonly region: string;
    readonly account: string;
    readonly codeartifactRepository: string;
    readonly codeartifactDomain: string;
    readonly codeartifactDomainOwner: string;
    readonly codePipelineSource?: pipelines.CodePipelineSource;
    readonly rolePolicyStatements?: iam.PolicyStatement[];
}
export declare class CICDActions {
    static getCodeCommitSourceAction(scope: Construct, props: CodeCommitSourceActionProps): pipelines.CodePipelineSource;
    static getSynthAction(props: GetSynthActionProps): pipelines.CodeBuildStep;
    static getCfnNagAction(fileSetProducer: pipelines.IFileSetProducer, stageName?: string, failBuild?: boolean): pipelines.ShellStep;
    static getBanditAction(codePipelineSource: pipelines.CodePipelineSource, stageName?: string): pipelines.ShellStep;
    static getTestsAction(fileSetProducer: pipelines.IFileSetProducer, commands?: string[], installCommands?: string[], stageName?: string): pipelines.ShellStep;
    static getCodeArtifactPublishAction(partition: string, region: string, account: string, codeartifactRepository: string, codeartifactDomain: string, codeartifactDomainOwner: string, codePipelineSource?: pipelines.CodePipelineSource, rolePolicyStatements?: iam.PolicyStatement[]): pipelines.CodeBuildStep;
}
