UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

922 lines 109 kB
import * as constructs from 'constructs'; import * as cdk from '../../core'; import * as cfn_parse from '../../core/lib/helpers-internal'; /** * Properties for defining a `CfnConfigurationSet` * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html */ export interface CfnConfigurationSetProps { /** * Specifies whether messages that use the configuration set are required to use Transport Layer Security (TLS). * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-deliveryoptions */ readonly deliveryOptions?: CfnConfigurationSet.DeliveryOptionsProperty | cdk.IResolvable; /** * The name of the configuration set. The name must meet the following requirements: * * - Contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-). * - Contain 64 characters or fewer. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-name */ readonly name?: string; /** * An object that represents the reputation settings for the configuration set. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-reputationoptions */ readonly reputationOptions?: CfnConfigurationSet.ReputationOptionsProperty | cdk.IResolvable; /** * An object that defines whether or not Amazon SES can send email that you send using the configuration set. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-sendingoptions */ readonly sendingOptions?: CfnConfigurationSet.SendingOptionsProperty | cdk.IResolvable; /** * An object that contains information about the suppression list preferences for your account. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-suppressionoptions */ readonly suppressionOptions?: CfnConfigurationSet.SuppressionOptionsProperty | cdk.IResolvable; /** * The name of the custom open and click tracking domain associated with the configuration set. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-trackingoptions */ readonly trackingOptions?: CfnConfigurationSet.TrackingOptionsProperty | cdk.IResolvable; /** * The Virtual Deliverability Manager (VDM) options that apply to the configuration set. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-vdmoptions */ readonly vdmOptions?: CfnConfigurationSet.VdmOptionsProperty | cdk.IResolvable; } /** * A CloudFormation `AWS::SES::ConfigurationSet` * * Configuration sets let you create groups of rules that you can apply to the emails you send using Amazon SES. For more information about using configuration sets, see [Using Amazon SES Configuration Sets](https://docs.aws.amazon.com/ses/latest/dg/using-configuration-sets.html) in the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/) . * * > *Required permissions:* * > * > To apply any of the resource options, you will need to have the corresponding AWS Identity and Access Management (IAM) SES API v2 permissions: * > * > - `ses:GetConfigurationSet` * > * > - (This permission is replacing the v1 *ses:DescribeConfigurationSet* permission which will not work with these v2 resource options.) * > - `ses:PutConfigurationSetDeliveryOptions` * > - `ses:PutConfigurationSetReputationOptions` * > - `ses:PutConfigurationSetSendingOptions` * > - `ses:PutConfigurationSetSuppressionOptions` * > - `ses:PutConfigurationSetTrackingOptions` * * @cloudformationResource AWS::SES::ConfigurationSet * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html */ export declare class CfnConfigurationSet extends cdk.CfnResource implements cdk.IInspectable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME = "AWS::SES::ConfigurationSet"; /** * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnConfigurationSet; /** * Specifies whether messages that use the configuration set are required to use Transport Layer Security (TLS). * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-deliveryoptions */ deliveryOptions: CfnConfigurationSet.DeliveryOptionsProperty | cdk.IResolvable | undefined; /** * The name of the configuration set. The name must meet the following requirements: * * - Contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-). * - Contain 64 characters or fewer. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-name */ name: string | undefined; /** * An object that represents the reputation settings for the configuration set. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-reputationoptions */ reputationOptions: CfnConfigurationSet.ReputationOptionsProperty | cdk.IResolvable | undefined; /** * An object that defines whether or not Amazon SES can send email that you send using the configuration set. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-sendingoptions */ sendingOptions: CfnConfigurationSet.SendingOptionsProperty | cdk.IResolvable | undefined; /** * An object that contains information about the suppression list preferences for your account. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-suppressionoptions */ suppressionOptions: CfnConfigurationSet.SuppressionOptionsProperty | cdk.IResolvable | undefined; /** * The name of the custom open and click tracking domain associated with the configuration set. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-trackingoptions */ trackingOptions: CfnConfigurationSet.TrackingOptionsProperty | cdk.IResolvable | undefined; /** * The Virtual Deliverability Manager (VDM) options that apply to the configuration set. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-vdmoptions */ vdmOptions: CfnConfigurationSet.VdmOptionsProperty | cdk.IResolvable | undefined; /** * Create a new `AWS::SES::ConfigurationSet`. * * @param scope - scope in which this resource is defined * @param id - scoped id of the resource * @param props - resource properties */ constructor(scope: constructs.Construct, id: string, props?: CfnConfigurationSetProps); /** * Examines the CloudFormation resource and discloses attributes. * * @param inspector - tree inspector to collect and process attributes * */ inspect(inspector: cdk.TreeInspector): void; protected get cfnProperties(): { [key: string]: any; }; protected renderProperties(props: { [key: string]: any; }): { [key: string]: any; }; } export declare namespace CfnConfigurationSet { /** * Settings for your VDM configuration as applicable to the Dashboard. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-dashboardoptions.html */ interface DashboardOptionsProperty { /** * Specifies the status of your VDM engagement metrics collection. Can be one of the following: * * - `ENABLED` – Amazon SES enables engagement metrics for the configuration set. * - `DISABLED` – Amazon SES disables engagement metrics for the configuration set. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-dashboardoptions.html#cfn-ses-configurationset-dashboardoptions-engagementmetrics */ readonly engagementMetrics: string; } } export declare namespace CfnConfigurationSet { /** * Specifies whether messages that use the configuration set are required to use Transport Layer Security (TLS). * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-deliveryoptions.html */ interface DeliveryOptionsProperty { /** * The name of the dedicated IP pool to associate with the configuration set. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-deliveryoptions.html#cfn-ses-configurationset-deliveryoptions-sendingpoolname */ readonly sendingPoolName?: string; /** * Specifies whether messages that use the configuration set are required to use Transport Layer Security (TLS). If the value is `REQUIRE` , messages are only delivered if a TLS connection can be established. If the value is `OPTIONAL` , messages can be delivered in plain text if a TLS connection can't be established. * * Valid Values: `REQUIRE | OPTIONAL` * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-deliveryoptions.html#cfn-ses-configurationset-deliveryoptions-tlspolicy */ readonly tlsPolicy?: string; } } export declare namespace CfnConfigurationSet { /** * Settings for your VDM configuration as applicable to the Guardian. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-guardianoptions.html */ interface GuardianOptionsProperty { /** * Specifies the status of your VDM optimized shared delivery. Can be one of the following: * * - `ENABLED` – Amazon SES enables optimized shared delivery for the configuration set. * - `DISABLED` – Amazon SES disables optimized shared delivery for the configuration set. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-guardianoptions.html#cfn-ses-configurationset-guardianoptions-optimizedshareddelivery */ readonly optimizedSharedDelivery: string; } } export declare namespace CfnConfigurationSet { /** * Contains information about the reputation settings for a configuration set. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-reputationoptions.html */ interface ReputationOptionsProperty { /** * Describes whether or not Amazon SES publishes reputation metrics for the configuration set, such as bounce and complaint rates, to Amazon CloudWatch. * * If the value is `true` , reputation metrics are published. If the value is `false` , reputation metrics are not published. The default value is `false` . * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-reputationoptions.html#cfn-ses-configurationset-reputationoptions-reputationmetricsenabled */ readonly reputationMetricsEnabled?: boolean | cdk.IResolvable; } } export declare namespace CfnConfigurationSet { /** * Used to enable or disable email sending for messages that use this configuration set in the current AWS Region. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-sendingoptions.html */ interface SendingOptionsProperty { /** * If `true` , email sending is enabled for the configuration set. If `false` , email sending is disabled for the configuration set. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-sendingoptions.html#cfn-ses-configurationset-sendingoptions-sendingenabled */ readonly sendingEnabled?: boolean | cdk.IResolvable; } } export declare namespace CfnConfigurationSet { /** * An object that contains information about the suppression list preferences for your account. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-suppressionoptions.html */ interface SuppressionOptionsProperty { /** * A list that contains the reasons that email addresses are automatically added to the suppression list for your account. This list can contain any or all of the following: * * - `COMPLAINT` – Amazon SES adds an email address to the suppression list for your account when a message sent to that address results in a complaint. * - `BOUNCE` – Amazon SES adds an email address to the suppression list for your account when a message sent to that address results in a hard bounce. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-suppressionoptions.html#cfn-ses-configurationset-suppressionoptions-suppressedreasons */ readonly suppressedReasons?: string[]; } } export declare namespace CfnConfigurationSet { /** * A domain that is used to redirect email recipients to an Amazon SES-operated domain. This domain captures open and click events generated by Amazon SES emails. * * For more information, see [Configuring Custom Domains to Handle Open and Click Tracking](https://docs.aws.amazon.com/ses/latest/dg/configure-custom-open-click-domains.html) in the *Amazon SES Developer Guide* . * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-trackingoptions.html */ interface TrackingOptionsProperty { /** * The custom subdomain that is used to redirect email recipients to the Amazon SES event tracking domain. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-trackingoptions.html#cfn-ses-configurationset-trackingoptions-customredirectdomain */ readonly customRedirectDomain?: string; } } export declare namespace CfnConfigurationSet { /** * The Virtual Deliverability Manager (VDM) options that apply to a configuration set. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-vdmoptions.html */ interface VdmOptionsProperty { /** * Settings for your VDM configuration as applicable to the Dashboard. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-vdmoptions.html#cfn-ses-configurationset-vdmoptions-dashboardoptions */ readonly dashboardOptions?: CfnConfigurationSet.DashboardOptionsProperty | cdk.IResolvable; /** * Settings for your VDM configuration as applicable to the Guardian. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-vdmoptions.html#cfn-ses-configurationset-vdmoptions-guardianoptions */ readonly guardianOptions?: CfnConfigurationSet.GuardianOptionsProperty | cdk.IResolvable; } } /** * Properties for defining a `CfnConfigurationSetEventDestination` * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html */ export interface CfnConfigurationSetEventDestinationProps { /** * The name of the configuration set that contains the event destination. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html#cfn-ses-configurationseteventdestination-configurationsetname */ readonly configurationSetName: string; /** * The event destination object. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html#cfn-ses-configurationseteventdestination-eventdestination */ readonly eventDestination: CfnConfigurationSetEventDestination.EventDestinationProperty | cdk.IResolvable; } /** * A CloudFormation `AWS::SES::ConfigurationSetEventDestination` * * Specifies a configuration set event destination. An event destination is an AWS service that Amazon SES publishes email sending events to. When you specify an event destination, you provide one, and only one, destination. You can send event data to Amazon CloudWatch, Amazon Kinesis Data Firehose, or Amazon Simple Notification Service (Amazon SNS). * * @cloudformationResource AWS::SES::ConfigurationSetEventDestination * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html */ export declare class CfnConfigurationSetEventDestination extends cdk.CfnResource implements cdk.IInspectable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME = "AWS::SES::ConfigurationSetEventDestination"; /** * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnConfigurationSetEventDestination; /** * * @cloudformationAttribute Id */ readonly attrId: string; /** * The name of the configuration set that contains the event destination. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html#cfn-ses-configurationseteventdestination-configurationsetname */ configurationSetName: string; /** * The event destination object. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html#cfn-ses-configurationseteventdestination-eventdestination */ eventDestination: CfnConfigurationSetEventDestination.EventDestinationProperty | cdk.IResolvable; /** * Create a new `AWS::SES::ConfigurationSetEventDestination`. * * @param scope - scope in which this resource is defined * @param id - scoped id of the resource * @param props - resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnConfigurationSetEventDestinationProps); /** * Examines the CloudFormation resource and discloses attributes. * * @param inspector - tree inspector to collect and process attributes * */ inspect(inspector: cdk.TreeInspector): void; protected get cfnProperties(): { [key: string]: any; }; protected renderProperties(props: { [key: string]: any; }): { [key: string]: any; }; } export declare namespace CfnConfigurationSetEventDestination { /** * Contains information associated with an Amazon CloudWatch event destination to which email sending events are published. * * Event destinations, such as Amazon CloudWatch, are associated with configuration sets, which enable you to publish email sending events. For information about using configuration sets, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/monitor-sending-activity.html) . * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-cloudwatchdestination.html */ interface CloudWatchDestinationProperty { /** * A list of dimensions upon which to categorize your emails when you publish email sending events to Amazon CloudWatch. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-cloudwatchdestination.html#cfn-ses-configurationseteventdestination-cloudwatchdestination-dimensionconfigurations */ readonly dimensionConfigurations?: Array<CfnConfigurationSetEventDestination.DimensionConfigurationProperty | cdk.IResolvable> | cdk.IResolvable; } } export declare namespace CfnConfigurationSetEventDestination { /** * Contains the dimension configuration to use when you publish email sending events to Amazon CloudWatch. * * For information about publishing email sending events to Amazon CloudWatch, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/monitor-sending-activity.html) . * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html */ interface DimensionConfigurationProperty { /** * The default value of the dimension that is published to Amazon CloudWatch if you do not provide the value of the dimension when you send an email. The default value must meet the following requirements: * * - Contain only ASCII letters (a-z, A-Z), numbers (0-9), underscores (_), dashes (-), at signs (@), or periods (.). * - Contain 256 characters or fewer. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html#cfn-ses-configurationseteventdestination-dimensionconfiguration-defaultdimensionvalue */ readonly defaultDimensionValue: string; /** * The name of an Amazon CloudWatch dimension associated with an email sending metric. The name must meet the following requirements: * * - Contain only ASCII letters (a-z, A-Z), numbers (0-9), underscores (_), dashes (-), or colons (:). * - Contain 256 characters or fewer. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html#cfn-ses-configurationseteventdestination-dimensionconfiguration-dimensionname */ readonly dimensionName: string; /** * The place where Amazon SES finds the value of a dimension to publish to Amazon CloudWatch. To use the message tags that you specify using an `X-SES-MESSAGE-TAGS` header or a parameter to the `SendEmail` / `SendRawEmail` API, specify `messageTag` . To use your own email headers, specify `emailHeader` . To put a custom tag on any link included in your email, specify `linkTag` . * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html#cfn-ses-configurationseteventdestination-dimensionconfiguration-dimensionvaluesource */ readonly dimensionValueSource: string; } } export declare namespace CfnConfigurationSetEventDestination { /** * Contains information about an event destination. * * > When you create or update an event destination, you must provide one, and only one, destination. The destination can be Amazon CloudWatch, Amazon Kinesis Firehose or Amazon Simple Notification Service (Amazon SNS). * * Event destinations are associated with configuration sets, which enable you to publish email sending events to Amazon CloudWatch, Amazon Kinesis Firehose, or Amazon Simple Notification Service (Amazon SNS). For information about using configuration sets, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/monitor-sending-activity.html) . * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html */ interface EventDestinationProperty { /** * An object that contains the names, default values, and sources of the dimensions associated with an Amazon CloudWatch event destination. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-cloudwatchdestination */ readonly cloudWatchDestination?: CfnConfigurationSetEventDestination.CloudWatchDestinationProperty | cdk.IResolvable; /** * Sets whether Amazon SES publishes events to this destination when you send an email with the associated configuration set. Set to `true` to enable publishing to this destination; set to `false` to prevent publishing to this destination. The default value is `false` . * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-enabled */ readonly enabled?: boolean | cdk.IResolvable; /** * An object that contains the delivery stream ARN and the IAM role ARN associated with an Amazon Kinesis Firehose event destination. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-kinesisfirehosedestination */ readonly kinesisFirehoseDestination?: CfnConfigurationSetEventDestination.KinesisFirehoseDestinationProperty | cdk.IResolvable; /** * The type of email sending events to publish to the event destination. * * - `send` - The send request was successful and SES will attempt to deliver the message to the recipient’s mail server. (If account-level or global suppression is being used, SES will still count it as a send, but delivery is suppressed.) * - `reject` - SES accepted the email, but determined that it contained a virus and didn’t attempt to deliver it to the recipient’s mail server. * - `bounce` - ( *Hard bounce* ) The recipient's mail server permanently rejected the email. ( *Soft bounces* are only included when SES fails to deliver the email after retrying for a period of time.) * - `complaint` - The email was successfully delivered to the recipient’s mail server, but the recipient marked it as spam. * - `delivery` - SES successfully delivered the email to the recipient's mail server. * - `open` - The recipient received the message and opened it in their email client. * - `click` - The recipient clicked one or more links in the email. * - `renderingFailure` - The email wasn't sent because of a template rendering issue. This event type can occur when template data is missing, or when there is a mismatch between template parameters and data. (This event type only occurs when you send email using the [`SendTemplatedEmail`](https://docs.aws.amazon.com/ses/latest/APIReference/API_SendTemplatedEmail.html) or [`SendBulkTemplatedEmail`](https://docs.aws.amazon.com/ses/latest/APIReference/API_SendBulkTemplatedEmail.html) API operations.) * - `deliveryDelay` - The email couldn't be delivered to the recipient’s mail server because a temporary issue occurred. Delivery delays can occur, for example, when the recipient's inbox is full, or when the receiving email server experiences a transient issue. * - `subscription` - The email was successfully delivered, but the recipient updated their subscription preferences by clicking on an *unsubscribe* link as part of your [subscription management](https://docs.aws.amazon.com/ses/latest/dg/sending-email-subscription-management.html) . * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-matchingeventtypes */ readonly matchingEventTypes: string[]; /** * The name of the event destination. The name must meet the following requirements: * * - Contain only ASCII letters (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-). * - Contain 64 characters or fewer. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-name */ readonly name?: string; /** * An object that contains the topic ARN associated with an Amazon Simple Notification Service (Amazon SNS) event destination. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-snsdestination */ readonly snsDestination?: CfnConfigurationSetEventDestination.SnsDestinationProperty | cdk.IResolvable; } } export declare namespace CfnConfigurationSetEventDestination { /** * Contains the delivery stream ARN and the IAM role ARN associated with an Amazon Kinesis Firehose event destination. * * Event destinations, such as Amazon Kinesis Firehose, are associated with configuration sets, which enable you to publish email sending events. For information about using configuration sets, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/monitor-sending-activity.html) . * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-kinesisfirehosedestination.html */ interface KinesisFirehoseDestinationProperty { /** * The ARN of the Amazon Kinesis Firehose stream that email sending events should be published to. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-kinesisfirehosedestination.html#cfn-ses-configurationseteventdestination-kinesisfirehosedestination-deliverystreamarn */ readonly deliveryStreamArn: string; /** * The ARN of the IAM role under which Amazon SES publishes email sending events to the Amazon Kinesis Firehose stream. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-kinesisfirehosedestination.html#cfn-ses-configurationseteventdestination-kinesisfirehosedestination-iamrolearn */ readonly iamRoleArn: string; } } export declare namespace CfnConfigurationSetEventDestination { /** * Contains the topic ARN associated with an Amazon Simple Notification Service (Amazon SNS) event destination. * * Event destinations, such as Amazon SNS, are associated with configuration sets, which enable you to publish email sending events. For information about using configuration sets, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/monitor-sending-activity.html) . * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-snsdestination.html */ interface SnsDestinationProperty { /** * The ARN of the Amazon SNS topic for email sending events. You can find the ARN of a topic by using the [ListTopics](https://docs.aws.amazon.com/sns/latest/api/API_ListTopics.html) Amazon SNS operation. * * For more information about Amazon SNS topics, see the [Amazon SNS Developer Guide](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html) . * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-snsdestination.html#cfn-ses-configurationseteventdestination-snsdestination-topicarn */ readonly topicArn: string; } } /** * Properties for defining a `CfnContactList` * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-contactlist.html */ export interface CfnContactListProps { /** * The name of the contact list. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-contactlist.html#cfn-ses-contactlist-contactlistname */ readonly contactListName?: string; /** * A description of what the contact list is about. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-contactlist.html#cfn-ses-contactlist-description */ readonly description?: string; /** * The tags associated with a contact list. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-contactlist.html#cfn-ses-contactlist-tags */ readonly tags?: cdk.CfnTag[]; /** * An interest group, theme, or label within a list. A contact list can have multiple topics. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-contactlist.html#cfn-ses-contactlist-topics */ readonly topics?: Array<CfnContactList.TopicProperty | cdk.IResolvable> | cdk.IResolvable; } /** * A CloudFormation `AWS::SES::ContactList` * * A list that contains contacts that have subscribed to a particular topic or topics. * * @cloudformationResource AWS::SES::ContactList * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-contactlist.html */ export declare class CfnContactList extends cdk.CfnResource implements cdk.IInspectable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME = "AWS::SES::ContactList"; /** * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnContactList; /** * The name of the contact list. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-contactlist.html#cfn-ses-contactlist-contactlistname */ contactListName: string | undefined; /** * A description of what the contact list is about. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-contactlist.html#cfn-ses-contactlist-description */ description: string | undefined; /** * The tags associated with a contact list. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-contactlist.html#cfn-ses-contactlist-tags */ readonly tags: cdk.TagManager; /** * An interest group, theme, or label within a list. A contact list can have multiple topics. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-contactlist.html#cfn-ses-contactlist-topics */ topics: Array<CfnContactList.TopicProperty | cdk.IResolvable> | cdk.IResolvable | undefined; /** * Create a new `AWS::SES::ContactList`. * * @param scope - scope in which this resource is defined * @param id - scoped id of the resource * @param props - resource properties */ constructor(scope: constructs.Construct, id: string, props?: CfnContactListProps); /** * Examines the CloudFormation resource and discloses attributes. * * @param inspector - tree inspector to collect and process attributes * */ inspect(inspector: cdk.TreeInspector): void; protected get cfnProperties(): { [key: string]: any; }; protected renderProperties(props: { [key: string]: any; }): { [key: string]: any; }; } export declare namespace CfnContactList { /** * An interest group, theme, or label within a list. Lists can have multiple topics. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-contactlist-topic.html */ interface TopicProperty { /** * The default subscription status to be applied to a contact if the contact has not noted their preference for subscribing to a topic. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-contactlist-topic.html#cfn-ses-contactlist-topic-defaultsubscriptionstatus */ readonly defaultSubscriptionStatus: string; /** * A description of what the topic is about, which the contact will see. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-contactlist-topic.html#cfn-ses-contactlist-topic-description */ readonly description?: string; /** * The name of the topic the contact will see. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-contactlist-topic.html#cfn-ses-contactlist-topic-displayname */ readonly displayName: string; /** * The name of the topic. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-contactlist-topic.html#cfn-ses-contactlist-topic-topicname */ readonly topicName: string; } } /** * Properties for defining a `CfnDedicatedIpPool` * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-dedicatedippool.html */ export interface CfnDedicatedIpPoolProps { /** * The name of the dedicated IP pool that the IP address is associated with. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-dedicatedippool.html#cfn-ses-dedicatedippool-poolname */ readonly poolName?: string; /** * The type of scaling mode. * * The following options are available: * * - `STANDARD` - The customer controls which IPs are part of the dedicated IP pool. * - `MANAGED` - The reputation and number of IPs is automatically managed by Amazon SES . * * The `STANDARD` option is selected by default if no value is specified. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-dedicatedippool.html#cfn-ses-dedicatedippool-scalingmode */ readonly scalingMode?: string; } /** * A CloudFormation `AWS::SES::DedicatedIpPool` * * Create a new pool of dedicated IP addresses. A pool can include one or more dedicated IP addresses that are associated with your AWS account . You can associate a pool with a configuration set. When you send an email that uses that configuration set, the message is sent from one of the addresses in the associated pool. * * > You can't delete dedicated IP pools that have a `STANDARD` scaling mode and one or more dedicated IP addresses. This constraint doesn't apply to dedicated IP pools that have a `MANAGED` scaling mode. * * @cloudformationResource AWS::SES::DedicatedIpPool * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-dedicatedippool.html */ export declare class CfnDedicatedIpPool extends cdk.CfnResource implements cdk.IInspectable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME = "AWS::SES::DedicatedIpPool"; /** * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnDedicatedIpPool; /** * The name of the dedicated IP pool that the IP address is associated with. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-dedicatedippool.html#cfn-ses-dedicatedippool-poolname */ poolName: string | undefined; /** * The type of scaling mode. * * The following options are available: * * - `STANDARD` - The customer controls which IPs are part of the dedicated IP pool. * - `MANAGED` - The reputation and number of IPs is automatically managed by Amazon SES . * * The `STANDARD` option is selected by default if no value is specified. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-dedicatedippool.html#cfn-ses-dedicatedippool-scalingmode */ scalingMode: string | undefined; /** * Create a new `AWS::SES::DedicatedIpPool`. * * @param scope - scope in which this resource is defined * @param id - scoped id of the resource * @param props - resource properties */ constructor(scope: constructs.Construct, id: string, props?: CfnDedicatedIpPoolProps); /** * Examines the CloudFormation resource and discloses attributes. * * @param inspector - tree inspector to collect and process attributes * */ inspect(inspector: cdk.TreeInspector): void; protected get cfnProperties(): { [key: string]: any; }; protected renderProperties(props: { [key: string]: any; }): { [key: string]: any; }; } /** * Properties for defining a `CfnEmailIdentity` * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-emailidentity.html */ export interface CfnEmailIdentityProps { /** * The email address or domain to verify. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-emailidentity.html#cfn-ses-emailidentity-emailidentity */ readonly emailIdentity: string; /** * Used to associate a configuration set with an email identity. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-emailidentity.html#cfn-ses-emailidentity-configurationsetattributes */ readonly configurationSetAttributes?: CfnEmailIdentity.ConfigurationSetAttributesProperty | cdk.IResolvable; /** * An object that contains information about the DKIM attributes for the identity. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-emailidentity.html#cfn-ses-emailidentity-dkimattributes */ readonly dkimAttributes?: CfnEmailIdentity.DkimAttributesProperty | cdk.IResolvable; /** * If your request includes this object, Amazon SES configures the identity to use Bring Your Own DKIM (BYODKIM) for DKIM authentication purposes, or, configures the key length to be used for [Easy DKIM](https://docs.aws.amazon.com/ses/latest/dg/send-email-authentication-dkim-easy.html) . * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-emailidentity.html#cfn-ses-emailidentity-dkimsigningattributes */ readonly dkimSigningAttributes?: CfnEmailIdentity.DkimSigningAttributesProperty | cdk.IResolvable; /** * Used to enable or disable feedback forwarding for an identity. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-emailidentity.html#cfn-ses-emailidentity-feedbackattributes */ readonly feedbackAttributes?: CfnEmailIdentity.FeedbackAttributesProperty | cdk.IResolvable; /** * Used to enable or disable the custom Mail-From domain configuration for an email identity. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-emailidentity.html#cfn-ses-emailidentity-mailfromattributes */ readonly mailFromAttributes?: CfnEmailIdentity.MailFromAttributesProperty | cdk.IResolvable; } /** * A CloudFormation `AWS::SES::EmailIdentity` * * Specifies an identity for using within SES. An identity is an email address or domain that you use when you send email. Before you can use an identity to send email, you first have to verify it. By verifying an identity, you demonstrate that you're the owner of the identity, and that you've given Amazon SES API v2 permission to send email from the identity. * * When you verify an email address, SES sends an email to the address. Your email address is verified as soon as you follow the link in the verification email. When you verify a domain without specifying the DkimSigningAttributes properties, OR only the NextSigningKeyLength property of DkimSigningAttributes, this resource provides a set of CNAME token names and values (DkimDNSTokenName1, DkimDNSTokenValue1, DkimDNSTokenName2, DkimDNSTokenValue2, DkimDNSTokenName3, DkimDNSTokenValue3) as outputs. You can then add these to the DNS configuration for your domain. Your domain is verified when Amazon SES detects these records in the DNS configuration for your domain. This verification method is known as Easy DKIM. * * Alternatively, you can perform the verification process by providing your own public-private key pair. This verification method is known as Bring Your Own DKIM (BYODKIM). To use BYODKIM, your resource must include DkimSigningAttributes properties DomainSigningSelector and DomainSigningPrivateKey. When you specify this object, you provide a selector (DomainSigningSelector) (a component of the DNS record name that identifies the public key to use for DKIM authentication) and a private key (DomainSigningPrivateKey). * * Additionally, you can associate an existing configuration set with the email identity that you're verifying. * * @cloudformationResource AWS::SES::EmailIdentity * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-emailidentity.html */ export declare class CfnEmailIdentity extends cdk.CfnResource implements cdk.IInspectable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME = "AWS::SES::EmailIdentity"; /** * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnEmailIdentity; /** * The host name for the first token that you have to add to the DNS configuration for your domain. * @cloudformationAttribute DkimDNSTokenName1 */ readonly attrDkimDnsTokenName1: string; /** * The host name for the second token that you have to add to the DNS configuration for your domain. * @cloudformationAttribute DkimDNSTokenName2 */ readonly attrDkimDnsTokenName2: string; /** * The host name for the third token that you have to add to the DNS configuration for your domain. * @cloudformationAttribute DkimDNSTokenName3 */ readonly attrDkimDnsTokenName3: string; /** * The record value for the first token that you have to add to the DNS conf