agent-claw: automated task changes

This commit is contained in:
daniel
2026-05-06 18:55:16 -05:00
parent 38905bb1e9
commit 732b00fb66
8494 changed files with 2018127 additions and 4 deletions

View File

@@ -0,0 +1,13 @@
{
"targets": {
"java": {
"package": "software.amazon.awscdk.services.ses.actions"
},
"dotnet": {
"namespace": "Amazon.CDK.AWS.SES.Actions"
},
"python": {
"module": "aws_cdk.aws_ses_actions"
}
}
}

17
cdk/node_modules/aws-cdk-lib/aws-ses-actions/README.md generated vendored Normal file
View File

@@ -0,0 +1,17 @@
# Amazon Simple Email Service Actions Library
This module contains integration classes to add action to SES email receiving rules.
Instances of these classes should be passed to the `rule.addAction()` method.
Currently supported are:
* [Add header](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-add-header.html)
* [Bounce](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-bounce.html)
* [Lambda](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-lambda.html)
* [S3](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-s3.html)
* [SNS](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-sns.html)
* [WorkMail](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-workmail.html)
* [Stop](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-stop.html)
See the README of `aws-cdk-lib/aws-ses` for more information.

View File

@@ -0,0 +1 @@
export * from './lib';

View File

@@ -0,0 +1 @@
"use strict";var __createBinding=exports&&exports.__createBinding||(Object.create?(function(o,m,k,k2){k2===void 0&&(k2=k);var desc=Object.getOwnPropertyDescriptor(m,k);(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m[k]}}),Object.defineProperty(o,k2,desc)}):(function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]})),__exportStar=exports&&exports.__exportStar||function(m,exports2){for(var p in m)p!=="default"&&!Object.prototype.hasOwnProperty.call(exports2,p)&&__createBinding(exports2,m,p)};Object.defineProperty(exports,"__esModule",{value:!0});var _noFold;exports.AddHeader=void 0,Object.defineProperty(exports,_noFold="AddHeader",{enumerable:!0,configurable:!0,get:()=>{var value=require("./lib").AddHeader;return Object.defineProperty(exports,_noFold="AddHeader",{enumerable:!0,configurable:!0,value}),value}}),exports.BounceTemplate=void 0,Object.defineProperty(exports,_noFold="BounceTemplate",{enumerable:!0,configurable:!0,get:()=>{var value=require("./lib").BounceTemplate;return Object.defineProperty(exports,_noFold="BounceTemplate",{enumerable:!0,configurable:!0,value}),value}}),exports.Bounce=void 0,Object.defineProperty(exports,_noFold="Bounce",{enumerable:!0,configurable:!0,get:()=>{var value=require("./lib").Bounce;return Object.defineProperty(exports,_noFold="Bounce",{enumerable:!0,configurable:!0,value}),value}}),exports.LambdaInvocationType=void 0,Object.defineProperty(exports,_noFold="LambdaInvocationType",{enumerable:!0,configurable:!0,get:()=>{var value=require("./lib").LambdaInvocationType;return Object.defineProperty(exports,_noFold="LambdaInvocationType",{enumerable:!0,configurable:!0,value}),value}}),exports.Lambda=void 0,Object.defineProperty(exports,_noFold="Lambda",{enumerable:!0,configurable:!0,get:()=>{var value=require("./lib").Lambda;return Object.defineProperty(exports,_noFold="Lambda",{enumerable:!0,configurable:!0,value}),value}}),exports.S3=void 0,Object.defineProperty(exports,_noFold="S3",{enumerable:!0,configurable:!0,get:()=>{var value=require("./lib").S3;return Object.defineProperty(exports,_noFold="S3",{enumerable:!0,configurable:!0,value}),value}}),exports.EmailEncoding=void 0,Object.defineProperty(exports,_noFold="EmailEncoding",{enumerable:!0,configurable:!0,get:()=>{var value=require("./lib").EmailEncoding;return Object.defineProperty(exports,_noFold="EmailEncoding",{enumerable:!0,configurable:!0,value}),value}}),exports.Sns=void 0,Object.defineProperty(exports,_noFold="Sns",{enumerable:!0,configurable:!0,get:()=>{var value=require("./lib").Sns;return Object.defineProperty(exports,_noFold="Sns",{enumerable:!0,configurable:!0,value}),value}}),exports.Stop=void 0,Object.defineProperty(exports,_noFold="Stop",{enumerable:!0,configurable:!0,get:()=>{var value=require("./lib").Stop;return Object.defineProperty(exports,_noFold="Stop",{enumerable:!0,configurable:!0,value}),value}}),exports.WorkMail=void 0,Object.defineProperty(exports,_noFold="WorkMail",{enumerable:!0,configurable:!0,get:()=>{var value=require("./lib").WorkMail;return Object.defineProperty(exports,_noFold="WorkMail",{enumerable:!0,configurable:!0,value}),value}});

View File

@@ -0,0 +1,26 @@
import type * as ses from '../../aws-ses';
/**
* Construction properties for a add header action.
*/
export interface AddHeaderProps {
/**
* The name of the header to add. Must be between 1 and 50 characters,
* inclusive, and consist of alphanumeric (a-z, A-Z, 0-9) characters
* and dashes only.
*/
readonly name: string;
/**
* The value of the header to add. Must be less than 2048 characters,
* and must not contain newline characters ("\r" or "\n").
*/
readonly value: string;
}
/**
* Adds a header to the received email
*/
export declare class AddHeader implements ses.IReceiptRuleAction {
private readonly name;
private readonly value;
constructor(props: AddHeaderProps);
bind(_rule: ses.IReceiptRuleRef): ses.ReceiptRuleActionConfig;
}

View File

@@ -0,0 +1 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.AddHeader=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");var core_1=()=>{var tmp=require("../../core");return core_1=()=>tmp,tmp},literal_string_1=()=>{var tmp=require("../../core/lib/private/literal-string");return literal_string_1=()=>tmp,tmp};class AddHeader{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses_actions.AddHeader",version:"2.252.0"};name;value;constructor(props){try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_actions_AddHeaderProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,AddHeader),error}if(!/^[a-zA-Z0-9-]{1,50}$/.test(props.name))throw new(core_1()).UnscopedValidationError((0,literal_string_1().lit)`MustBeHeaderBetweenCharacters`,"Header `name` must be between 1 and 50 characters, inclusive, and consist of alphanumeric (a-z, A-Z, 0-9) characters and dashes only.");if(!/^[^\n\r]{0,2047}$/.test(props.value))throw new(core_1()).UnscopedValidationError((0,literal_string_1().lit)`MustBeHeaderLessThan`,'Header `value` must be less than 2048 characters, and must not contain newline characters ("\r" or "\n").');this.name=props.name,this.value=props.value}bind(_rule){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IReceiptRuleRef(_rule)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.bind),error}return{addHeaderAction:{headerName:this.name,headerValue:this.value}}}}exports.AddHeader=AddHeader;

View File

@@ -0,0 +1,64 @@
import type * as ses from '../../aws-ses';
import type * as sns from '../../aws-sns';
/**
* Construction properties for a BounceTemplate.
*/
export interface BounceTemplateProps {
/**
* Human-readable text to include in the bounce message.
*/
readonly message: string;
/**
* The SMTP reply code, as defined by RFC 5321.
*
* @see https://tools.ietf.org/html/rfc5321
*/
readonly smtpReplyCode: string;
/**
* The SMTP enhanced status code, as defined by RFC 3463.
*
* @see https://tools.ietf.org/html/rfc3463
*/
readonly statusCode?: string;
}
/**
* A bounce template.
*/
export declare class BounceTemplate {
readonly props: BounceTemplateProps;
static readonly MAILBOX_DOES_NOT_EXIST: BounceTemplate;
static readonly MESSAGE_TOO_LARGE: BounceTemplate;
static readonly MAILBOX_FULL: BounceTemplate;
static readonly MESSAGE_CONTENT_REJECTED: BounceTemplate;
static readonly TEMPORARY_FAILURE: BounceTemplate;
constructor(props: BounceTemplateProps);
}
/**
* Construction properties for a bounce action.
*/
export interface BounceProps {
/**
* The template containing the message, reply code and status code.
*/
readonly template: BounceTemplate;
/**
* The email address of the sender of the bounced email. This is the address
* from which the bounce message will be sent.
*/
readonly sender: string;
/**
* The SNS topic to notify when the bounce action is taken.
*
* @default no notification
*/
readonly topic?: sns.ITopic;
}
/**
* Rejects the received email by returning a bounce response to the sender and,
* optionally, publishes a notification to Amazon SNS.
*/
export declare class Bounce implements ses.IReceiptRuleAction {
private readonly props;
constructor(props: BounceProps);
bind(_rule: ses.IReceiptRuleRef): ses.ReceiptRuleActionConfig;
}

View File

@@ -0,0 +1 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Bounce=exports.BounceTemplate=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");class BounceTemplate{props;static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses_actions.BounceTemplate",version:"2.252.0"};static MAILBOX_DOES_NOT_EXIST=new BounceTemplate({message:"Mailbox does not exist",smtpReplyCode:"550",statusCode:"5.1.1"});static MESSAGE_TOO_LARGE=new BounceTemplate({message:"Message too large",smtpReplyCode:"552",statusCode:"5.3.4"});static MAILBOX_FULL=new BounceTemplate({message:"Mailbox full",smtpReplyCode:"552",statusCode:"5.2.2"});static MESSAGE_CONTENT_REJECTED=new BounceTemplate({message:"Message content rejected",smtpReplyCode:"500",statusCode:"5.6.1"});static TEMPORARY_FAILURE=new BounceTemplate({message:"Temporary failure",smtpReplyCode:"450",statusCode:"4.0.0"});constructor(props){this.props=props;try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_actions_BounceTemplateProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,BounceTemplate),error}}}exports.BounceTemplate=BounceTemplate;class Bounce{props;static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses_actions.Bounce",version:"2.252.0"};constructor(props){this.props=props;try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_actions_BounceProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,Bounce),error}}bind(_rule){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IReceiptRuleRef(_rule)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.bind),error}return{bounceAction:{sender:this.props.sender,smtpReplyCode:this.props.template.props.smtpReplyCode,message:this.props.template.props.message,topicArn:this.props.topic?.topicArn,statusCode:this.props.template.props.statusCode}}}}exports.Bounce=Bounce;

View File

@@ -0,0 +1,7 @@
export * from './add-header';
export * from './bounce';
export * from './lambda';
export * from './s3';
export * from './sns';
export * from './stop';
export * from './workmail';

View File

@@ -0,0 +1 @@
"use strict";var __createBinding=exports&&exports.__createBinding||(Object.create?(function(o,m,k,k2){k2===void 0&&(k2=k);var desc=Object.getOwnPropertyDescriptor(m,k);(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m[k]}}),Object.defineProperty(o,k2,desc)}):(function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]})),__exportStar=exports&&exports.__exportStar||function(m,exports2){for(var p in m)p!=="default"&&!Object.prototype.hasOwnProperty.call(exports2,p)&&__createBinding(exports2,m,p)};Object.defineProperty(exports,"__esModule",{value:!0});var _noFold;exports.AddHeader=void 0,Object.defineProperty(exports,_noFold="AddHeader",{enumerable:!0,configurable:!0,get:()=>{var value=require("./add-header").AddHeader;return Object.defineProperty(exports,_noFold="AddHeader",{enumerable:!0,configurable:!0,value}),value}}),exports.BounceTemplate=void 0,Object.defineProperty(exports,_noFold="BounceTemplate",{enumerable:!0,configurable:!0,get:()=>{var value=require("./bounce").BounceTemplate;return Object.defineProperty(exports,_noFold="BounceTemplate",{enumerable:!0,configurable:!0,value}),value}}),exports.Bounce=void 0,Object.defineProperty(exports,_noFold="Bounce",{enumerable:!0,configurable:!0,get:()=>{var value=require("./bounce").Bounce;return Object.defineProperty(exports,_noFold="Bounce",{enumerable:!0,configurable:!0,value}),value}}),exports.LambdaInvocationType=void 0,Object.defineProperty(exports,_noFold="LambdaInvocationType",{enumerable:!0,configurable:!0,get:()=>{var value=require("./lambda").LambdaInvocationType;return Object.defineProperty(exports,_noFold="LambdaInvocationType",{enumerable:!0,configurable:!0,value}),value}}),exports.Lambda=void 0,Object.defineProperty(exports,_noFold="Lambda",{enumerable:!0,configurable:!0,get:()=>{var value=require("./lambda").Lambda;return Object.defineProperty(exports,_noFold="Lambda",{enumerable:!0,configurable:!0,value}),value}}),exports.S3=void 0,Object.defineProperty(exports,_noFold="S3",{enumerable:!0,configurable:!0,get:()=>{var value=require("./s3").S3;return Object.defineProperty(exports,_noFold="S3",{enumerable:!0,configurable:!0,value}),value}}),exports.EmailEncoding=void 0,Object.defineProperty(exports,_noFold="EmailEncoding",{enumerable:!0,configurable:!0,get:()=>{var value=require("./sns").EmailEncoding;return Object.defineProperty(exports,_noFold="EmailEncoding",{enumerable:!0,configurable:!0,value}),value}}),exports.Sns=void 0,Object.defineProperty(exports,_noFold="Sns",{enumerable:!0,configurable:!0,get:()=>{var value=require("./sns").Sns;return Object.defineProperty(exports,_noFold="Sns",{enumerable:!0,configurable:!0,value}),value}}),exports.Stop=void 0,Object.defineProperty(exports,_noFold="Stop",{enumerable:!0,configurable:!0,get:()=>{var value=require("./stop").Stop;return Object.defineProperty(exports,_noFold="Stop",{enumerable:!0,configurable:!0,value}),value}}),exports.WorkMail=void 0,Object.defineProperty(exports,_noFold="WorkMail",{enumerable:!0,configurable:!0,get:()=>{var value=require("./workmail").WorkMail;return Object.defineProperty(exports,_noFold="WorkMail",{enumerable:!0,configurable:!0,value}),value}});

View File

@@ -0,0 +1,48 @@
import type * as lambda from '../../aws-lambda';
import type * as ses from '../../aws-ses';
import type * as sns from '../../aws-sns';
/**
* The type of invocation to use for a Lambda Action.
*/
export declare enum LambdaInvocationType {
/**
* The function will be invoked asynchronously.
*/
EVENT = "Event",
/**
* The function will be invoked sychronously. Use RequestResponse only when
* you want to make a mail flow decision, such as whether to stop the receipt
* rule or the receipt rule set.
*/
REQUEST_RESPONSE = "RequestResponse"
}
/**
* Construction properties for a Lambda action.
*/
export interface LambdaProps {
/**
* The Lambda function to invoke.
*/
readonly function: lambda.IFunction;
/**
* The invocation type of the Lambda function.
*
* @default Event
*/
readonly invocationType?: LambdaInvocationType;
/**
* The SNS topic to notify when the Lambda action is taken.
*
* @default no notification
*/
readonly topic?: sns.ITopic;
}
/**
* Calls an AWS Lambda function, and optionally, publishes a notification to
* Amazon SNS.
*/
export declare class Lambda implements ses.IReceiptRuleAction {
private readonly props;
constructor(props: LambdaProps);
bind(rule: ses.IReceiptRuleRef): ses.ReceiptRuleActionConfig;
}

View File

@@ -0,0 +1 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Lambda=exports.LambdaInvocationType=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");var iam=()=>{var tmp=require("../../aws-iam");return iam=()=>tmp,tmp},cdk=()=>{var tmp=require("../../core");return cdk=()=>tmp,tmp},LambdaInvocationType;(function(LambdaInvocationType2){LambdaInvocationType2.EVENT="Event",LambdaInvocationType2.REQUEST_RESPONSE="RequestResponse"})(LambdaInvocationType||(exports.LambdaInvocationType=LambdaInvocationType={}));class Lambda{props;static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses_actions.Lambda",version:"2.252.0"};constructor(props){this.props=props;try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_actions_LambdaProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,Lambda),error}}bind(rule){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IReceiptRuleRef(rule)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.bind),error}const permissionId="AllowSes";this.props.function.permissionsNode.tryFindChild(permissionId)||this.props.function.addPermission(permissionId,{action:"lambda:InvokeFunction",principal:new(iam()).ServicePrincipal("ses.amazonaws.com"),sourceAccount:cdk().Aws.ACCOUNT_ID});const permission=this.props.function.permissionsNode.tryFindChild(permissionId);return permission?rule.node.addDependency(permission):cdk().Annotations.of(rule).addWarningV2("@aws-cdk/aws-ses-actions:lambdaAddInvokePermissions","This rule is using a Lambda action with an imported function. Ensure permission is given to SES to invoke that function."),{lambdaAction:{functionArn:this.props.function.functionArn,invocationType:this.props.invocationType,topicArn:this.props.topic?.topicArn}}}}exports.Lambda=Lambda;

View File

@@ -0,0 +1,41 @@
import type * as kms from '../../aws-kms';
import type * as s3 from '../../aws-s3';
import type * as ses from '../../aws-ses';
import type * as sns from '../../aws-sns';
/**
* Construction properties for a S3 action.
*/
export interface S3Props {
/**
* The S3 bucket that incoming email will be saved to.
*/
readonly bucket: s3.IBucket;
/**
* The master key that SES should use to encrypt your emails before saving
* them to the S3 bucket.
*
* @default no encryption
*/
readonly kmsKey?: kms.IKey;
/**
* The key prefix of the S3 bucket.
*
* @default no prefix
*/
readonly objectKeyPrefix?: string;
/**
* The SNS topic to notify when the S3 action is taken.
*
* @default no notification
*/
readonly topic?: sns.ITopic;
}
/**
* Saves the received message to an Amazon S3 bucket and, optionally, publishes
* a notification to Amazon SNS.
*/
export declare class S3 implements ses.IReceiptRuleAction {
private readonly props;
constructor(props: S3Props);
bind(rule: ses.IReceiptRuleRef): ses.ReceiptRuleActionConfig;
}

View File

@@ -0,0 +1 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.S3=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");var iam=()=>{var tmp=require("../../aws-iam");return iam=()=>tmp,tmp},cdk=()=>{var tmp=require("../../core");return cdk=()=>tmp,tmp};class S3{props;static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses_actions.S3",version:"2.252.0"};constructor(props){this.props=props;try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_actions_S3Props(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,S3),error}}bind(rule){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IReceiptRuleRef(rule)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.bind),error}const keyPattern=this.props.objectKeyPrefix||"",s3Statement=new(iam()).PolicyStatement({actions:["s3:PutObject"],principals:[new(iam()).ServicePrincipal("ses.amazonaws.com")],resources:[this.props.bucket.arnForObjects(`${keyPattern}*`)],conditions:{StringEquals:{"aws:SourceAccount":cdk().Aws.ACCOUNT_ID}}});this.props.bucket.addToResourcePolicy(s3Statement);const policy=this.props.bucket.node.tryFindChild("Policy");if(policy?rule.node.addDependency(policy):cdk().Annotations.of(rule).addWarningV2("@aws-cdk/s3:AddBucketPermissions","This rule is using a S3 action with an imported bucket. Ensure permission is given to SES to write to that bucket."),this.props.kmsKey&&!/alias\/aws\/ses$/.test(this.props.kmsKey.keyArn)){const kmsStatement=new(iam()).PolicyStatement({actions:["kms:Encrypt","kms:GenerateDataKey"],principals:[new(iam()).ServicePrincipal("ses.amazonaws.com")],resources:["*"],conditions:{Null:{"kms:EncryptionContext:aws:ses:rule-name":"false","kms:EncryptionContext:aws:ses:message-id":"false"},StringEquals:{"kms:EncryptionContext:aws:ses:source-account":cdk().Aws.ACCOUNT_ID}}});this.props.kmsKey.addToResourcePolicy(kmsStatement)}return{s3Action:{bucketName:this.props.bucket.bucketName,kmsKeyArn:this.props.kmsKey?.keyArn,objectKeyPrefix:this.props.objectKeyPrefix,topicArn:this.props.topic?.topicArn}}}}exports.S3=S3;

View File

@@ -0,0 +1,38 @@
import type * as ses from '../../aws-ses';
import type * as sns from '../../aws-sns';
/**
* The type of email encoding to use for a SNS action.
*/
export declare enum EmailEncoding {
/**
* Base 64
*/
BASE64 = "Base64",
/**
* UTF-8
*/
UTF8 = "UTF-8"
}
/**
* Construction properties for a SNS action.
*/
export interface SnsProps {
/**
* The encoding to use for the email within the Amazon SNS notification.
*
* @default UTF-8
*/
readonly encoding?: EmailEncoding;
/**
* The SNS topic to notify.
*/
readonly topic: sns.ITopic;
}
/**
* Publishes the email content within a notification to Amazon SNS.
*/
export declare class Sns implements ses.IReceiptRuleAction {
private readonly props;
constructor(props: SnsProps);
bind(_rule: ses.IReceiptRuleRef): ses.ReceiptRuleActionConfig;
}

View File

@@ -0,0 +1 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Sns=exports.EmailEncoding=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");var EmailEncoding;(function(EmailEncoding2){EmailEncoding2.BASE64="Base64",EmailEncoding2.UTF8="UTF-8"})(EmailEncoding||(exports.EmailEncoding=EmailEncoding={}));class Sns{props;static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses_actions.Sns",version:"2.252.0"};constructor(props){this.props=props;try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_actions_SnsProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,Sns),error}}bind(_rule){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IReceiptRuleRef(_rule)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.bind),error}return{snsAction:{encoding:this.props.encoding,topicArn:this.props.topic.topicArn}}}}exports.Sns=Sns;

View File

@@ -0,0 +1,20 @@
import type * as ses from '../../aws-ses';
import type * as sns from '../../aws-sns';
/**
* Construction properties for a stop action.
*/
export interface StopProps {
/**
* The SNS topic to notify when the stop action is taken.
*/
readonly topic?: sns.ITopic;
}
/**
* Terminates the evaluation of the receipt rule set and optionally publishes a
* notification to Amazon SNS.
*/
export declare class Stop implements ses.IReceiptRuleAction {
private readonly props;
constructor(props?: StopProps);
bind(_rule: ses.IReceiptRuleRef): ses.ReceiptRuleActionConfig;
}

View File

@@ -0,0 +1 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Stop=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");class Stop{props;static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses_actions.Stop",version:"2.252.0"};constructor(props={}){this.props=props;try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_actions_StopProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,Stop),error}}bind(_rule){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IReceiptRuleRef(_rule)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.bind),error}return{stopAction:{scope:"RuleSet",topicArn:this.props.topic?.topicArn}}}}exports.Stop=Stop;

View File

@@ -0,0 +1,37 @@
import type * as ses from '../../aws-ses';
import type * as sns from '../../aws-sns';
/**
* Construction properties for a WorkMail action.
*/
export interface WorkMailProps {
/**
* The WorkMail organization ARN.
*
* Amazon WorkMail organization ARNs are in the form
* `arn:aws:workmail:region:account_ID:organization/organization_ID`
*
* @example 'arn:aws:workmail:us-east-1:123456789012:organization/m-68755160c4cb4e29a2b2f8fb58f359d7'
*/
readonly organizationArn: string;
/**
* The SNS topic to notify when the WorkMail action is taken.
*
* @default - no topic will be attached to the action
*/
readonly topic?: sns.ITopic;
}
/**
* Integrates an Amazon WorkMail action into a receipt rule set,
* and optionally publishes a notification to Amazon SNS.
*
* Beware that WorkMail should already set up an active `INBOUND_MAIL` rule set
* that includes a WorkMail rule action for this exact purpose.
* This action should be used to customize the behavior of replacement rule set.
*
* @see https://docs.aws.amazon.com/ses/latest/dg/receiving-email-action-workmail.html
*/
export declare class WorkMail implements ses.IReceiptRuleAction {
private readonly props;
constructor(props: WorkMailProps);
bind(_rule: ses.IReceiptRuleRef): ses.ReceiptRuleActionConfig;
}

View File

@@ -0,0 +1 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.WorkMail=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");class WorkMail{props;static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses_actions.WorkMail",version:"2.252.0"};constructor(props){this.props=props;try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_actions_WorkMailProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,WorkMail),error}}bind(_rule){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IReceiptRuleRef(_rule)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.bind),error}return{workmailAction:{organizationArn:this.props.organizationArn,topicArn:this.props.topic?.topicArn}}}}exports.WorkMail=WorkMail;