UNPKG

iam-floyd

Version:

AWS IAM policy statement generator with fluent interface

1,256 lines 112 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Ses = void 0; const shared_1 = require("../../shared"); /** * Statement provider for service [ses](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonses.html). * * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement */ class Ses extends shared_1.PolicyStatement { /** * Statement provider for service [ses](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonses.html). * * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement */ constructor(sid) { super(sid); this.servicePrefix = 'ses'; this.accessLevelList = { Write: [ 'CloneReceiptRuleSet', 'CreateConfigurationSet', 'CreateConfigurationSetEventDestination', 'CreateConfigurationSetTrackingOptions', 'CreateCustomVerificationEmailTemplate', 'CreateReceiptFilter', 'CreateReceiptRule', 'CreateReceiptRuleSet', 'CreateTemplate', 'DeleteConfigurationSet', 'DeleteConfigurationSetEventDestination', 'DeleteConfigurationSetTrackingOptions', 'DeleteCustomVerificationEmailTemplate', 'DeleteIdentity', 'DeleteReceiptFilter', 'DeleteReceiptRule', 'DeleteReceiptRuleSet', 'DeleteTemplate', 'DeleteVerifiedEmailAddress', 'PutConfigurationSetDeliveryOptions', 'ReorderReceiptRuleSet', 'SendBounce', 'SendBulkTemplatedEmail', 'SendCustomVerificationEmail', 'SendEmail', 'SendRawEmail', 'SendTemplatedEmail', 'SetActiveReceiptRuleSet', 'SetIdentityDkimEnabled', 'SetIdentityFeedbackForwardingEnabled', 'SetIdentityHeadersInNotificationsEnabled', 'SetIdentityMailFromDomain', 'SetIdentityNotificationTopic', 'SetReceiptRulePosition', 'TestRenderTemplate', 'UpdateAccountSendingEnabled', 'UpdateConfigurationSetEventDestination', 'UpdateConfigurationSetReputationMetricsEnabled', 'UpdateConfigurationSetSendingEnabled', 'UpdateConfigurationSetTrackingOptions', 'UpdateCustomVerificationEmailTemplate', 'UpdateReceiptRule', 'UpdateTemplate', 'VerifyDomainDkim', 'VerifyDomainIdentity', 'VerifyEmailAddress', 'VerifyEmailIdentity' ], 'Permissions management': [ 'DeleteIdentityPolicy', 'PutIdentityPolicy' ], Read: [ 'DescribeActiveReceiptRuleSet', 'DescribeConfigurationSet', 'DescribeReceiptRule', 'DescribeReceiptRuleSet', 'GetAccountSendingEnabled', 'GetCustomVerificationEmailTemplate', 'GetIdentityDkimAttributes', 'GetIdentityMailFromDomainAttributes', 'GetIdentityNotificationAttributes', 'GetIdentityPolicies', 'GetIdentityVerificationAttributes', 'GetSendQuota', 'GetSendStatistics', 'GetTemplate', 'ListReceiptFilters', 'ListReceiptRuleSets', 'ListVerifiedEmailAddresses' ], List: [ 'ListConfigurationSets', 'ListCustomVerificationEmailTemplates', 'ListIdentities', 'ListIdentityPolicies', 'ListTemplates' ] }; } /** * Grants permission to create a receipt rule set by cloning an existing one * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_CloneReceiptRuleSet.html */ toCloneReceiptRuleSet() { return this.to('CloneReceiptRuleSet'); } /** * Grants permission to create a new configuration set * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_CreateConfigurationSet.html */ toCreateConfigurationSet() { return this.to('CreateConfigurationSet'); } /** * Grants permission to create a configuration set event destination * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_CreateConfigurationSetEventDestination.html */ toCreateConfigurationSetEventDestination() { return this.to('CreateConfigurationSetEventDestination'); } /** * Grants permission to creates an association between a configuration set and a custom domain for open and click event tracking * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_CreateConfigurationSetTrackingOptions.html */ toCreateConfigurationSetTrackingOptions() { return this.to('CreateConfigurationSetTrackingOptions'); } /** * Grants permission to create a new custom verification email template * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_CreateCustomVerificationEmailTemplate.html */ toCreateCustomVerificationEmailTemplate() { return this.to('CreateCustomVerificationEmailTemplate'); } /** * Grants permission to create a new IP address filter * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_CreateReceiptFilter.html */ toCreateReceiptFilter() { return this.to('CreateReceiptFilter'); } /** * Grants permission to create a receipt rule * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_CreateReceiptRule.html */ toCreateReceiptRule() { return this.to('CreateReceiptRule'); } /** * Grants permission to create an empty receipt rule set * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_CreateReceiptRuleSet.html */ toCreateReceiptRuleSet() { return this.to('CreateReceiptRuleSet'); } /** * Grants permission to creates an email template * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_CreateTemplate.html */ toCreateTemplate() { return this.to('CreateTemplate'); } /** * Grants permission to delete an existing configuration set * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteConfigurationSet.html */ toDeleteConfigurationSet() { return this.to('DeleteConfigurationSet'); } /** * Grants permission to delete an event destination * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteConfigurationSetEventDestination.html */ toDeleteConfigurationSetEventDestination() { return this.to('DeleteConfigurationSetEventDestination'); } /** * Grants permission to delete an association between a configuration set and a custom domain for open and click event tracking * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteConfigurationSetTrackingOptions.html */ toDeleteConfigurationSetTrackingOptions() { return this.to('DeleteConfigurationSetTrackingOptions'); } /** * Grants permission to delete an existing custom verification email template * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteCustomVerificationEmailTemplate.html */ toDeleteCustomVerificationEmailTemplate() { return this.to('DeleteCustomVerificationEmailTemplate'); } /** * Grants permission to delete the specified identity * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteIdentity.html */ toDeleteIdentity() { return this.to('DeleteIdentity'); } /** * Grants permission to delete the specified sending authorization policy for the given identity (an email address or a domain) * * Access Level: Permissions management * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteIdentityPolicy.html */ toDeleteIdentityPolicy() { return this.to('DeleteIdentityPolicy'); } /** * Grants permission to delete the specified IP address filter * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteReceiptFilter.html */ toDeleteReceiptFilter() { return this.to('DeleteReceiptFilter'); } /** * Grants permission to delete the specified receipt rule * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteReceiptRule.html */ toDeleteReceiptRule() { return this.to('DeleteReceiptRule'); } /** * Grants permission to delete the specified receipt rule set and all of the receipt rules it contains * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteReceiptRuleSet.html */ toDeleteReceiptRuleSet() { return this.to('DeleteReceiptRuleSet'); } /** * Grants permission to delete an email template * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteTemplate.html */ toDeleteTemplate() { return this.to('DeleteTemplate'); } /** * Grants permission to delete the specified email address from the list of verified addresses * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteVerifiedEmailAddress.html */ toDeleteVerifiedEmailAddress() { return this.to('DeleteVerifiedEmailAddress'); } /** * Grants permission to return the metadata and receipt rules for the receipt rule set that is currently active * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_DescribeActiveReceiptRuleSet.html */ toDescribeActiveReceiptRuleSet() { return this.to('DescribeActiveReceiptRuleSet'); } /** * Grants permission to return the details of the specified configuration set * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_DescribeConfigurationSet.html */ toDescribeConfigurationSet() { return this.to('DescribeConfigurationSet'); } /** * Grants permission to return the details of the specified receipt rule * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_DescribeReceiptRule.html */ toDescribeReceiptRule() { return this.to('DescribeReceiptRule'); } /** * Grants permission to return the details of the specified receipt rule set * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_DescribeReceiptRuleSet.html */ toDescribeReceiptRuleSet() { return this.to('DescribeReceiptRuleSet'); } /** * Grants permission to return the email sending status of your account * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_GetAccountSendingEnabled.html */ toGetAccountSendingEnabled() { return this.to('GetAccountSendingEnabled'); } /** * Grants permission to return the custom email verification template for the template name you specify * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_GetCustomVerificationEmailTemplate.html */ toGetCustomVerificationEmailTemplate() { return this.to('GetCustomVerificationEmailTemplate'); } /** * Grants permission to return the current status of Easy DKIM signing for an entity * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_GetIdentityDkimAttributes.html */ toGetIdentityDkimAttributes() { return this.to('GetIdentityDkimAttributes'); } /** * Grants permission to return the custom MAIL FROM attributes for a list of identities (email addresses and/or domains) * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_GetIdentityMailFromDomainAttributes.html */ toGetIdentityMailFromDomainAttributes() { return this.to('GetIdentityMailFromDomainAttributes'); } /** * Grants permission to return a structure describing identity notification attributes for a list of verified identities (email addresses and/or domains), * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_GetIdentityNotificationAttributes.html */ toGetIdentityNotificationAttributes() { return this.to('GetIdentityNotificationAttributes'); } /** * Grants permission to return the requested sending authorization policies for the given identity (an email address or a domain) * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_GetIdentityPolicies.html */ toGetIdentityPolicies() { return this.to('GetIdentityPolicies'); } /** * Grants permission to return the verification status and (for domain identities) the verification token for a list of identities * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_GetIdentityVerificationAttributes.html */ toGetIdentityVerificationAttributes() { return this.to('GetIdentityVerificationAttributes'); } /** * Grants permission to return the user's current sending limits * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_GetSendQuota.html */ toGetSendQuota() { return this.to('GetSendQuota'); } /** * Grants permission to returns the user's sending statistics * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_GetSendStatistics.html */ toGetSendStatistics() { return this.to('GetSendStatistics'); } /** * Grants permission to return the template object, which includes the subject line, HTML par, and text part for the template you specify * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_GetTemplate.html */ toGetTemplate() { return this.to('GetTemplate'); } /** * Grants permission to list all of the configuration sets for your account * * Access Level: List * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_ListConfigurationSets.html */ toListConfigurationSets() { return this.to('ListConfigurationSets'); } /** * Grants permission to list all of the existing custom verification email templates for your account * * Access Level: List * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_ListCustomVerificationEmailTemplates.html */ toListCustomVerificationEmailTemplates() { return this.to('ListCustomVerificationEmailTemplates'); } /** * Grants permission to list the email identities for your account * * Access Level: List * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_ListIdentities.html */ toListIdentities() { return this.to('ListIdentities'); } /** * Grants permission to list all of the email templates for your account * * Access Level: List * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_ListIdentityPolicies.html */ toListIdentityPolicies() { return this.to('ListIdentityPolicies'); } /** * Grants permission to list the IP address filters associated with your account * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_ListReceiptFilters.html */ toListReceiptFilters() { return this.to('ListReceiptFilters'); } /** * Grants permission to list the receipt rule sets that exist under your account * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_ListReceiptRuleSets.html */ toListReceiptRuleSets() { return this.to('ListReceiptRuleSets'); } /** * Grants permission to list the email templates present in your account * * Access Level: List * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_ListTemplates.html */ toListTemplates() { return this.to('ListTemplates'); } /** * Grants permission to list all of the email addresses that have been verified in your account * * Access Level: Read * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_ListVerifiedEmailAddresses.html */ toListVerifiedEmailAddresses() { return this.to('ListVerifiedEmailAddresses'); } /** * Grants permission to add or update the delivery options for a configuration set * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_PutConfigurationSetDeliveryOptions.html */ toPutConfigurationSetDeliveryOptions() { return this.to('PutConfigurationSetDeliveryOptions'); } /** * Grants permission to add or update a sending authorization policy for the specified identity (an email address or a domain) * * Access Level: Permissions management * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_PutIdentityPolicy.html */ toPutIdentityPolicy() { return this.to('PutIdentityPolicy'); } /** * Grants permission to reorder the receipt rules within a receipt rule set * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_ReorderReceiptRuleSet.html */ toReorderReceiptRuleSet() { return this.to('ReorderReceiptRuleSet'); } /** * Grants permission to generate and send a bounce message to the sender of an email you received through Amazon SES * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * - .ifFromAddress() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_SendBounce.html */ toSendBounce() { return this.to('SendBounce'); } /** * Grants permission to compose an email message to multiple destinations * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * - .ifFeedbackAddress() * - .ifFromAddress() * - .ifFromDisplayName() * - .ifRecipients() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_SendBulkTemplatedEmail.html */ toSendBulkTemplatedEmail() { return this.to('SendBulkTemplatedEmail'); } /** * Grants permission to add an email address to the list of identities and attempts to verify it for your account * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * - .ifFeedbackAddress() * - .ifFromAddress() * - .ifFromDisplayName() * - .ifRecipients() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_SendCustomVerificationEmail.html */ toSendCustomVerificationEmail() { return this.to('SendCustomVerificationEmail'); } /** * Grants permission to send an email message * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * - .ifFeedbackAddress() * - .ifFromAddress() * - .ifFromDisplayName() * - .ifRecipients() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_SendEmail.html */ toSendEmail() { return this.to('SendEmail'); } /** * Grants permission to send an email message, with header and content specified by the client * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * - .ifFeedbackAddress() * - .ifFromAddress() * - .ifFromDisplayName() * - .ifRecipients() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_SendRawEmail.html */ toSendRawEmail() { return this.to('SendRawEmail'); } /** * Grants permission to compose an email message using an email template * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * - .ifFeedbackAddress() * - .ifFromAddress() * - .ifFromDisplayName() * - .ifRecipients() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_SendTemplatedEmail.html */ toSendTemplatedEmail() { return this.to('SendTemplatedEmail'); } /** * Grants permission to set the specified receipt rule set as the active receipt rule set * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_SetActiveReceiptRuleSet.html */ toSetActiveReceiptRuleSet() { return this.to('SetActiveReceiptRuleSet'); } /** * Grants permission to enable or disable Easy DKIM signing of email sent from an identity * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_SetIdentityDkimEnabled.html */ toSetIdentityDkimEnabled() { return this.to('SetIdentityDkimEnabled'); } /** * Grants permission to enable or disable whether Amazon SES forwards bounce and complaint notifications for an identity (an email address or a domain) * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_SetIdentityFeedbackForwardingEnabled.html */ toSetIdentityFeedbackForwardingEnabled() { return this.to('SetIdentityFeedbackForwardingEnabled'); } /** * Grants permission to set whether Amazon SES includes the original email headers in the Amazon Simple Notification Service (Amazon SNS) notifications of a specified type for a given identity (an email address or a domain) * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_SetIdentityHeadersInNotificationsEnabled.html */ toSetIdentityHeadersInNotificationsEnabled() { return this.to('SetIdentityHeadersInNotificationsEnabled'); } /** * Grants permission to enable or disable the custom MAIL FROM domain setup for a verified identity * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_SetIdentityMailFromDomain.html */ toSetIdentityMailFromDomain() { return this.to('SetIdentityMailFromDomain'); } /** * Grants permission to set an Amazon Simple Notification Service (Amazon SNS) topic to use when delivering notifications for a verified identity * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_SetIdentityNotificationTopic.html */ toSetIdentityNotificationTopic() { return this.to('SetIdentityNotificationTopic'); } /** * Grants permission to set the position of the specified receipt rule in the receipt rule set * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_SetReceiptRulePosition.html */ toSetReceiptRulePosition() { return this.to('SetReceiptRulePosition'); } /** * Grants permission to create a preview of the MIME content of an email when provided with a template and a set of replacement data * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_TestRenderTemplate.html */ toTestRenderTemplate() { return this.to('TestRenderTemplate'); } /** * Grants permission to enable or disable email sending for your account * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_UpdateAccountSendingEnabled.html */ toUpdateAccountSendingEnabled() { return this.to('UpdateAccountSendingEnabled'); } /** * Grants permission to update the event destination of a configuration set * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_UpdateConfigurationSetEventDestination.html */ toUpdateConfigurationSetEventDestination() { return this.to('UpdateConfigurationSetEventDestination'); } /** * Grants permission to enable or disable the publishing of reputation metrics for emails sent using a specific configuration set * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_UpdateConfigurationSetReputationMetricsEnabled.html */ toUpdateConfigurationSetReputationMetricsEnabled() { return this.to('UpdateConfigurationSetReputationMetricsEnabled'); } /** * Grants permission to enable or disable email sending for messages sent using a specific configuration set * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_UpdateConfigurationSetSendingEnabled.html */ toUpdateConfigurationSetSendingEnabled() { return this.to('UpdateConfigurationSetSendingEnabled'); } /** * Grants permission to modify an association between a configuration set and a custom domain for open and click event tracking * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_UpdateConfigurationSetTrackingOptions.html */ toUpdateConfigurationSetTrackingOptions() { return this.to('UpdateConfigurationSetTrackingOptions'); } /** * Grants permission to update an existing custom verification email template * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_UpdateCustomVerificationEmailTemplate.html */ toUpdateCustomVerificationEmailTemplate() { return this.to('UpdateCustomVerificationEmailTemplate'); } /** * Grants permission to update a receipt rule * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_UpdateReceiptRule.html */ toUpdateReceiptRule() { return this.to('UpdateReceiptRule'); } /** * Grants permission to update an email template * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_UpdateTemplate.html */ toUpdateTemplate() { return this.to('UpdateTemplate'); } /** * Grants permission to return a set of DKIM tokens for a domain * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyDomainDkim.html */ toVerifyDomainDkim() { return this.to('VerifyDomainDkim'); } /** * Grants permission to verify a domain * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyDomainIdentity.html */ toVerifyDomainIdentity() { return this.to('VerifyDomainIdentity'); } /** * Grants permission to verify an email address * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyEmailAddress.html */ toVerifyEmailAddress() { return this.to('VerifyEmailAddress'); } /** * Grants permission to verify an email identity * * Access Level: Write * * Possible conditions: * - .ifApiVersion() * * https://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyEmailIdentity.html */ toVerifyEmailIdentity() { return this.to('VerifyEmailIdentity'); } /** * Adds a resource of type configuration-set to the statement * * https://docs.aws.amazon.com/ses/latest/APIReference/API_ConfigurationSet.html * * @param configurationSetName - Identifier for the configurationSetName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. */ onConfigurationSet(configurationSetName, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:ses:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:configuration-set/${configurationSetName}`); } /** * Adds a resource of type custom-verification-email-template to the statement * * https://docs.aws.amazon.com/ses/latest/APIReference/API_CustomVerificationEmailTemplate.html * * @param templateName - Identifier for the templateName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. */ onCustomVerificationEmailTemplate(templateName, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:ses:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:custom-verification-email-template/${templateName}`); } /** * Adds a resource of type identity to the statement * * https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_IdentityInfo.html * * @param identityName - Identifier for the identityName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. */ onIdentity(identityName, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:ses:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:identity/${identityName}`); } /** * Adds a resource of type template to the statement * * https://docs.aws.amazon.com/ses/latest/APIReference/API_Template.html * * @param templateName - Identifier for the templateName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. */ onTemplate(templateName, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:ses:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:template/${templateName}`); } /** * Filters actions based on the SES API version * * https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonses.html#amazonses-policy-keys * * Applies to actions: * - .toCloneReceiptRuleSet() * - .toCreateConfigurationSet() * - .toCreateConfigurationSetEventDestination() * - .toCreateConfigurationSetTrackingOptions() * - .toCreateCustomVerificationEmailTemplate() * - .toCreateReceiptFilter() * - .toCreateReceiptRule() * - .toCreateReceiptRuleSet() * - .toCreateTemplate() * - .toDeleteConfigurationSet() * - .toDeleteConfigurationSetEventDestination() * - .toDeleteConfigurationSetTrackingOptions() * - .toDeleteCustomVerificationEmailTemplate() * - .toDeleteIdentity() * - .toDeleteIdentityPolicy() * - .toDeleteReceiptFilter() * - .toDeleteReceiptRule() * - .toDeleteReceiptRuleSet() * - .toDeleteTemplate() * - .toDeleteVerifiedEmailAddress() * - .toDescribeActiveReceiptRuleSet() * - .toDescribeConfigurationSet() * - .toDescribeReceiptRule() * - .toDescribeReceiptRuleSet() * - .toGetAccountSendingEnabled() * - .toGetCustomVerificationEmailTemplate() * - .toGetIdentityDkimAttributes() * - .toGetIdentityMailFromDomainAttributes() * - .toGetIdentityNotificationAttributes() * - .toGetIdentityPolicies() * - .toGetIdentityVerificationAttributes() * - .toGetSendQuota() * - .toGetSendStatistics() * - .toGetTemplate() * - .toListConfigurationSets() * - .toListCustomVerificationEmailTemplates() * - .toListIdentities() * - .toListIdentityPolicies() * - .toListReceiptFilters() * - .toListReceiptRuleSets() * - .toListTemplates() * - .toListVerifiedEmailAddresses() * - .toPutConfigurationSetDeliveryOptions() * - .toPutIdentityPolicy() * - .toReorderReceiptRuleSet() * - .toSendBounce() * - .toSendBulkTemplatedEmail() * - .toSendCustomVerificationEmail() * - .toSendEmail() * - .toSendRawEmail() * - .toSendTemplatedEmail() * - .toSetActiveReceiptRuleSet() * - .toSetIdentityDkimEnabled() * - .toSetIdentityFeedbackForwardingEnabled() * - .toSetIdentityHeadersInNotificationsEnabled() * - .toSetIdentityMailFromDomain() * - .toSetIdentityNotificationTopic() * - .toSetReceiptRulePosition() * - .toTestRenderTemplate() * - .toUpdateAccountSendingEnabled() * - .toUpdateConfigurationSetEventDestination() * - .toUpdateConfigurationSetReputationMetricsEnabled() * - .toUpdateConfigurationSetSendingEnabled() * - .toUpdateConfigurationSetTrackingOptions() * - .toUpdateCustomVerificationEmailTemplate() * - .toUpdateReceiptRule() * - .toUpdateTemplate() * - .toVerifyDomainDkim() * - .toVerifyDomainIdentity() * - .toVerifyEmailAddress() * - .toVerifyEmailIdentity() * * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifApiVersion(value, operator) { return this.if(`ApiVersion`, value, operator ?? 'StringLike'); } /** * Filters actions based on the "Return-Path" address, which specifies where bounces and complaints are sent by email feedback forwarding * * https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonses.html#amazonses-policy-keys * * Applies to actions: * - .toSendBulkTemplatedEmail() * - .toSendCustomVerificationEmail() * - .toSendEmail() * - .toSendRawEmail() * - .toSendTemplatedEmail() * * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifFeedbackAddress(value, operator) { return this.if(`FeedbackAddress`, value, operator ?? 'StringLike'); } /** * Filters actions based on the "From" address of a message * * https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonses.html#amazonses-policy-keys * * Applies to actions: * - .toSendBounce() * - .toSendBulkTemplatedEmail() * - .toSendCustomVerificationEmail() * - .toSendEmail() * - .toSendRawEmail() * - .toSendTemplatedEmail() * * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifFromAddress(value, operator) { return this.if(`FromAddress`, value, operator ?? 'StringLike'); } /** * Filters actions based on the "From" address that is used as the display name of a message * * https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonses.html#amazonses-policy-keys * * Applies to actions: * - .toSendBulkTemplatedEmail() * - .toSendCustomVerificationEmail() * - .toSendEmail() * - .toSendRawEmail() * - .toSendTemplatedEmail() * * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifFromDisplayName(value, operator) { return this.if(`FromDisplayName`, value, operator ?? 'StringLike'); } /** * Filters actions based on the recipient addresses of a message, which include the "To", "CC", and "BCC" addresses * * https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonses.html#amazonses-policy-keys * * Applies to actions: * - .toSendBulkTemplatedEmail() * - .toSendCustomVerificationEmail() * - .toSendEmail() * - .toSendRawEmail() * - .toSendTemplatedEmail() * * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifRecipients(value, operator) { return this.if(`Recipients`, value, operator ?? 'StringLike'); } } exports.Ses = Ses; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHlDQUF5RDtBQUV6RDs7OztHQUlHO0FBQ0gsTUFBYSxHQUFJLFNBQVEsd0JBQWU7SUFHdEM7Ozs7T0FJRztJQUNILFlBQVksR0FBWTtRQUN0QixLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFSTixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQWtnQ25CLG9CQUFlLEdBQW9CO1lBQzNDLEtBQUssRUFBRTtnQkFDTCxxQkFBcUI7Z0JBQ3JCLHdCQUF3QjtnQkFDeEIsd0NBQXdDO2dCQUN4Qyx1Q0FBdUM7Z0JBQ3ZDLHVDQUF1QztnQkFDdkMscUJBQXFCO2dCQUNyQixtQkFBbUI7Z0JBQ25CLHNCQUFzQjtnQkFDdEIsZ0JBQWdCO2dCQUNoQix3QkFBd0I7Z0JBQ3hCLHdDQUF3QztnQkFDeEMsdUNBQXVDO2dCQUN2Qyx1Q0FBdUM7Z0JBQ3ZDLGdCQUFnQjtnQkFDaEIscUJBQXFCO2dCQUNyQixtQkFBbUI7Z0JBQ25CLHNCQUFzQjtnQkFDdEIsZ0JBQWdCO2dCQUNoQiw0QkFBNEI7Z0JBQzVCLG9DQUFvQztnQkFDcEMsdUJBQXVCO2dCQUN2QixZQUFZO2dCQUNaLHdCQUF3QjtnQkFDeEIsNkJBQTZCO2dCQUM3QixXQUFXO2dCQUNYLGNBQWM7Z0JBQ2Qsb0JBQW9CO2dCQUNwQix5QkFBeUI7Z0JBQ3pCLHdCQUF3QjtnQkFDeEIsc0NBQXNDO2dCQUN0QywwQ0FBMEM7Z0JBQzFDLDJCQUEyQjtnQkFDM0IsOEJBQThCO2dCQUM5Qix3QkFBd0I7Z0JBQ3hCLG9CQUFvQjtnQkFDcEIsNkJBQTZCO2dCQUM3Qix3Q0FBd0M7Z0JBQ3hDLGdEQUFnRDtnQkFDaEQsc0NBQXNDO2dCQUN0Qyx1Q0FBdUM7Z0JBQ3ZDLHVDQUF1QztnQkFDdkMsbUJBQW1CO2dCQUNuQixnQkFBZ0I7Z0JBQ2hCLGtCQUFrQjtnQkFDbEIsc0JBQXNCO2dCQUN0QixvQkFBb0I7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