import * as core from "@terrascript/core"; export interface PublishingDestinationArgs extends core.ResourceArgs { /** * (Required) The bucket arn and prefix under which the findings get exported. Bucket-ARN is required, * the prefix is optional and will be `AWSLogs/[Account-ID]/GuardDuty/[Region]/` if not provided */ destinationArn: string | core.StringOut; destinationType?: string | core.StringOut; /** * (Required) The detector ID of the GuardDuty. */ detectorId: string | core.StringOut; /** * (Required) The ARN of the KMS key used to encrypt GuardDuty findings. GuardDuty enforces this to be * encrypted. */ kmsKeyArn: string | core.StringOut; } export class PublishingDestination extends core.Resource { /** * (Required) The bucket arn and prefix under which the findings get exported. Bucket-ARN is required, * the prefix is optional and will be `AWSLogs/[Account-ID]/GuardDuty/[Region]/` if not provided */ @core.attr(String) public destinationArn!: string | core.StringOut; @core.attr(String) public destinationType?: string | core.StringOut; /** * (Required) The detector ID of the GuardDuty. */ @core.attr(String) public detectorId!: string | core.StringOut; /** * The ID of the GuardDuty PublishingDestination and the detector ID. Format: `:` */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Required) The ARN of the KMS key used to encrypt GuardDuty findings. GuardDuty enforces this to be * encrypted. */ @core.attr(String) public kmsKeyArn!: string | core.StringOut; constructor(name: string, args?: PublishingDestinationArgs) { super(name, "aws_guardduty_publishing_destination", args); } public override getNamespace(): string { return "aws_guardduty"; } }