package awsguardduty


// Properties for defining a `CfnMalwareProtectionPlan`.
//
// Example:
//   // The code below shows an example of how to instantiate this type.
//   // The values are placeholders you should change.
//   import "github.com/aws/aws-cdk-go/awscdk"
//
//   cfnMalwareProtectionPlanProps := &CfnMalwareProtectionPlanProps{
//   	ProtectedResource: &CFNProtectedResourceProperty{
//   		S3Bucket: &S3BucketProperty{
//   			BucketName: jsii.String("bucketName"),
//   			ObjectPrefixes: []*string{
//   				jsii.String("objectPrefixes"),
//   			},
//   		},
//   	},
//   	Role: jsii.String("role"),
//
//   	// the properties below are optional
//   	Actions: &CFNActionsProperty{
//   		Tagging: &CFNTaggingProperty{
//   			Status: jsii.String("status"),
//   		},
//   	},
//   	Tags: []tagItemProperty{
//   		&tagItemProperty{
//   			Key: jsii.String("key"),
//   			Value: jsii.String("value"),
//   		},
//   	},
//   }
//
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-malwareprotectionplan.html
//
type CfnMalwareProtectionPlanProps struct {
	// Information about the protected resource.
	//
	// Presently, `S3Bucket` is the only supported protected resource.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-malwareprotectionplan.html#cfn-guardduty-malwareprotectionplan-protectedresource
	//
	ProtectedResource interface{} `field:"required" json:"protectedResource" yaml:"protectedResource"`
	// Amazon Resource Name (ARN) of the IAM role that includes the permissions required to scan and (optionally) add tags to the associated protected resource.
	//
	// To find the ARN of your IAM role, go to the IAM console, and select the role name for details.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-malwareprotectionplan.html#cfn-guardduty-malwareprotectionplan-role
	//
	Role *string `field:"required" json:"role" yaml:"role"`
	// Specifies the action that is to be applied to the Malware Protection plan resource.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-malwareprotectionplan.html#cfn-guardduty-malwareprotectionplan-actions
	//
	Actions interface{} `field:"optional" json:"actions" yaml:"actions"`
	// The tags to be added to the created Malware Protection plan resource.
	//
	// Each tag consists of a key and an optional value, both of which you need to specify.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-malwareprotectionplan.html#cfn-guardduty-malwareprotectionplan-tags
	//
	Tags *[]*CfnMalwareProtectionPlan_TagItemProperty `field:"optional" json:"tags" yaml:"tags"`
}

