"use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.EmrContainersDeleteVirtualCluster=void 0;const jsiiDeprecationWarnings=require("../../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),iam=require("../../../aws-iam"),sfn=require("../../../aws-stepfunctions"),cdk=require("../../../core"),task_utils_1=require("../private/task-utils");class EmrContainersDeleteVirtualCluster extends sfn.TaskStateBase{constructor(scope,id,props){var _b;super(scope,id,props);this.props=props,jsiiDeprecationWarnings.aws_cdk_lib_aws_stepfunctions_tasks_EmrContainersDeleteVirtualClusterProps(props),this.integrationPattern=(_b=props.integrationPattern)!==null&&_b!==void 0?_b:sfn.IntegrationPattern.REQUEST_RESPONSE,task_utils_1.validatePatternSupported(this.integrationPattern,EmrContainersDeleteVirtualCluster.SUPPORTED_INTEGRATION_PATTERNS),this.taskPolicies=this.createPolicyStatements()}_renderTask(){return{Resource:task_utils_1.integrationResourceArn("emr-containers","deleteVirtualCluster",this.integrationPattern),Parameters:sfn.FieldUtils.renderObject({Id:this.props.virtualClusterId.value})}}createPolicyStatements(){const actions=["emr-containers:DeleteVirtualCluster"];return this.integrationPattern===sfn.IntegrationPattern.RUN_JOB&&actions.push("emr-containers:DescribeVirtualCluster"),[new iam.PolicyStatement({resources:[cdk.Stack.of(this).formatArn({arnFormat:cdk.ArnFormat.SLASH_RESOURCE_SLASH_RESOURCE_NAME,service:"emr-containers",resource:"virtualclusters",resourceName:sfn.JsonPath.isEncodedJsonPath(this.props.virtualClusterId.value)?"*":this.props.virtualClusterId.value})],actions})]}}exports.EmrContainersDeleteVirtualCluster=EmrContainersDeleteVirtualCluster,_a=JSII_RTTI_SYMBOL_1,EmrContainersDeleteVirtualCluster[_a]={fqn:"aws-cdk-lib.aws_stepfunctions_tasks.EmrContainersDeleteVirtualCluster",version:"2.13.0"},EmrContainersDeleteVirtualCluster.SUPPORTED_INTEGRATION_PATTERNS=[sfn.IntegrationPattern.REQUEST_RESPONSE,sfn.IntegrationPattern.RUN_JOB];
//# sourceMappingURL=delete-virtual-cluster.js.map
