import * as core from "@terrascript/core"; export interface BucketRequestPaymentConfigurationArgs extends core.ResourceArgs { /** * (Required, Forces new resource) The name of the bucket. */ bucket: string | core.StringOut; /** * (Optional, Forces new resource) The account ID of the expected bucket owner. */ expectedBucketOwner?: string | core.StringOut; /** * (Required) Specifies who pays for the download and request fees. Valid values: `BucketOwner`, `Reque * ster`. */ payer: string | core.StringOut; } export class BucketRequestPaymentConfiguration extends core.Resource { /** * (Required, Forces new resource) The name of the bucket. */ @core.attr(String) public bucket!: string | core.StringOut; /** * (Optional, Forces new resource) The account ID of the expected bucket owner. */ @core.attr(String) public expectedBucketOwner?: string | core.StringOut; /** * The `bucket` or `bucket` and `expected_bucket_owner` separated by a comma (`,`) if the latter is pro * vided. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Required) Specifies who pays for the download and request fees. Valid values: `BucketOwner`, `Reque * ster`. */ @core.attr(String) public payer!: string | core.StringOut; constructor(name: string, args?: BucketRequestPaymentConfigurationArgs) { super(name, "aws_s3_bucket_request_payment_configuration", args); } public override getNamespace(): string { return "aws_s3"; } }