@cloudtoolkit/aws
Version:
The Cloud Toolkit AWS provider for Pulumi provision well-architected solutions in [AWS](https://aws.amazon.com/). With Cloud Toolkit AWS you can use your preferred programming language to manage your platform with Infrastructure as Code.
108 lines • 6.59 kB
JavaScript
;
// *** WARNING: this file was generated by Pulumi SDK Generator. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.EmailSender = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../utilities");
/**
* Cloud Toolkit component for an Email Sender. Creates a Simple Email Service Email or Domain Identity alongside Simple Notification Service Topics and Simple Queue Service Queues to manage bounce, complaints or delivered messages.
* In the case of building a Domain Identity, if it is registered in the Route 53 on the AWS account that is applying the infrastructure changes, Cloud Toolkit can verify it automatically by creating the DKIM DNS Records.
*/
class EmailSender extends pulumi.ComponentResource {
/**
* Returns true if the given object is an instance of EmailSender. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === EmailSender.__pulumiType;
}
/**
* Create a EmailSender resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
if ((!args || args.identity === undefined) && !opts.urn) {
throw new Error("Missing required property 'identity'");
}
resourceInputs["bounce"] = args ? args.bounce : undefined;
resourceInputs["complaint"] = args ? args.complaint : undefined;
resourceInputs["configureDNS"] = args ? args.configureDNS : undefined;
resourceInputs["delivery"] = args ? args.delivery : undefined;
resourceInputs["identity"] = args ? args.identity : undefined;
resourceInputs["address"] = undefined /*out*/;
resourceInputs["bounceAdditionalQueues"] = undefined /*out*/;
resourceInputs["bounceAdditionalQueuesPolicies"] = undefined /*out*/;
resourceInputs["bounceIdentityNotificationTopic"] = undefined /*out*/;
resourceInputs["bounceQueues"] = undefined /*out*/;
resourceInputs["bounceTopic"] = undefined /*out*/;
resourceInputs["bounceTopicSubscriptions"] = undefined /*out*/;
resourceInputs["complaintAdditionalQueues"] = undefined /*out*/;
resourceInputs["complaintAdditionalQueuesPolicies"] = undefined /*out*/;
resourceInputs["complaintIdentityNotificationTopic"] = undefined /*out*/;
resourceInputs["complaintQueues"] = undefined /*out*/;
resourceInputs["complaintTopic"] = undefined /*out*/;
resourceInputs["complaintTopicSubscriptions"] = undefined /*out*/;
resourceInputs["deliveryAdditionalQueues"] = undefined /*out*/;
resourceInputs["deliveryAdditionalQueuesPolicies"] = undefined /*out*/;
resourceInputs["deliveryIdentityNotificationTopic"] = undefined /*out*/;
resourceInputs["deliveryQueues"] = undefined /*out*/;
resourceInputs["deliveryTopic"] = undefined /*out*/;
resourceInputs["deliveryTopicSubscriptions"] = undefined /*out*/;
resourceInputs["dnsDkimRecords"] = undefined /*out*/;
resourceInputs["dnsRecords"] = undefined /*out*/;
resourceInputs["dnsZoneId"] = undefined /*out*/;
resourceInputs["domainDKIM"] = undefined /*out*/;
resourceInputs["domainIdentity"] = undefined /*out*/;
resourceInputs["emailIdentity"] = undefined /*out*/;
resourceInputs["notificationsPolicy"] = undefined /*out*/;
resourceInputs["resourceGroups"] = undefined /*out*/;
resourceInputs["senderPolicy"] = undefined /*out*/;
}
else {
resourceInputs["address"] = undefined /*out*/;
resourceInputs["bounceAdditionalQueues"] = undefined /*out*/;
resourceInputs["bounceAdditionalQueuesPolicies"] = undefined /*out*/;
resourceInputs["bounceIdentityNotificationTopic"] = undefined /*out*/;
resourceInputs["bounceQueues"] = undefined /*out*/;
resourceInputs["bounceTopic"] = undefined /*out*/;
resourceInputs["bounceTopicSubscriptions"] = undefined /*out*/;
resourceInputs["complaintAdditionalQueues"] = undefined /*out*/;
resourceInputs["complaintAdditionalQueuesPolicies"] = undefined /*out*/;
resourceInputs["complaintIdentityNotificationTopic"] = undefined /*out*/;
resourceInputs["complaintQueues"] = undefined /*out*/;
resourceInputs["complaintTopic"] = undefined /*out*/;
resourceInputs["complaintTopicSubscriptions"] = undefined /*out*/;
resourceInputs["deliveryAdditionalQueues"] = undefined /*out*/;
resourceInputs["deliveryAdditionalQueuesPolicies"] = undefined /*out*/;
resourceInputs["deliveryIdentityNotificationTopic"] = undefined /*out*/;
resourceInputs["deliveryQueues"] = undefined /*out*/;
resourceInputs["deliveryTopic"] = undefined /*out*/;
resourceInputs["deliveryTopicSubscriptions"] = undefined /*out*/;
resourceInputs["dnsDkimRecords"] = undefined /*out*/;
resourceInputs["dnsRecords"] = undefined /*out*/;
resourceInputs["dnsZoneId"] = undefined /*out*/;
resourceInputs["domainDKIM"] = undefined /*out*/;
resourceInputs["domainIdentity"] = undefined /*out*/;
resourceInputs["emailIdentity"] = undefined /*out*/;
resourceInputs["notificationsPolicy"] = undefined /*out*/;
resourceInputs["resourceGroups"] = undefined /*out*/;
resourceInputs["senderPolicy"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(EmailSender.__pulumiType, name, resourceInputs, opts, true /*remote*/);
}
}
exports.EmailSender = EmailSender;
/** @internal */
EmailSender.__pulumiType = 'cloud-toolkit-aws:email:EmailSender';
//# sourceMappingURL=emailSender.js.map