import * as core from "@terrascript/core"; export interface TrackingOptionsArgs extends core.SchemaArgs { customRedirectDomain?: string | core.StringOut; } export class TrackingOptions extends core.Schema { @core.attr(String) public customRedirectDomain?: string | core.StringOut; } export interface DeliveryOptionsArgs extends core.SchemaArgs { tlsPolicy?: string | core.StringOut; } export class DeliveryOptions extends core.Schema { @core.attr(String) public tlsPolicy?: string | core.StringOut; } export interface ConfigurationSetArgs extends core.ResourceArgs { /** * (Optional) Whether messages that use the configuration set are required to use TLS. See below. */ deliveryOptions?: DeliveryOptions; /** * (Required) Name of the configuration set. */ name: string | core.StringOut; /** * (Optional) Whether or not Amazon SES publishes reputation metrics for the configuration set, such as * bounce and complaint rates, to Amazon CloudWatch. The default value is `false`. */ reputationMetricsEnabled?: boolean | core.BooleanOut; /** * (Optional) Whether email sending is enabled or disabled for the configuration set. The default value * is `true`. */ sendingEnabled?: boolean | core.BooleanOut; /** * (Optional) Domain that is used to redirect email recipients to an Amazon SES-operated domain. See be * low. **NOTE:** This functionality is best effort. */ trackingOptions?: TrackingOptions; } export class ConfigurationSet extends core.Resource { /** * SES configuration set ARN. */ @core.attr(String, { computed: true }) public arn!: string | core.StringOut; /** * (Optional) Whether messages that use the configuration set are required to use TLS. See below. */ @core.attr(DeliveryOptions) public deliveryOptions?: DeliveryOptions; /** * SES configuration set name. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * Date and time at which the reputation metrics for the configuration set were last reset. Resetting t * hese metrics is known as a fresh start. */ @core.attr(String, { computed: true }) public lastFreshStart!: string | core.StringOut; /** * (Required) Name of the configuration set. */ @core.attr(String) public name!: string | core.StringOut; /** * (Optional) Whether or not Amazon SES publishes reputation metrics for the configuration set, such as * bounce and complaint rates, to Amazon CloudWatch. The default value is `false`. */ @core.attr(Boolean) public reputationMetricsEnabled?: boolean | core.BooleanOut; /** * (Optional) Whether email sending is enabled or disabled for the configuration set. The default value * is `true`. */ @core.attr(Boolean) public sendingEnabled?: boolean | core.BooleanOut; /** * (Optional) Domain that is used to redirect email recipients to an Amazon SES-operated domain. See be * low. **NOTE:** This functionality is best effort. */ @core.attr(TrackingOptions) public trackingOptions?: TrackingOptions; constructor(name: string, args?: ConfigurationSetArgs) { super(name, "aws_ses_configuration_set", args); } public override getNamespace(): string { return "aws_ses"; } }