import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface SesSendEmailConfig extends cdktf.TerraformMetaArguments { /** * The email address of the cc recipient can support up to 20 cc recipients. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#bcc SesSendEmail#bcc} */ readonly bcc?: string[]; /** * Cc recipient email address, up to 20 people can be copied. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#cc SesSendEmail#cc} */ readonly cc?: string[]; /** * Recipient email addresses. You can send an email to up to 50 recipients at a time. Note: the email content will display all recipient addresses. To send one-to-one emails to several recipients, please call the API multiple times to send the emails. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#destination SesSendEmail#destination} */ readonly destination: string[]; /** * Sender address. Enter a sender address, for example, noreply@mail.qcloud.com.To display the sender name, enter the address in the following format:Sender. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#from_email_address SesSendEmail#from_email_address} */ readonly fromEmailAddress: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#id SesSendEmail#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * Reply-to address. You can enter a valid personal email address that can receive emails. If this parameter is left empty, reply emails will fail to be sent. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#reply_to_addresses SesSendEmail#reply_to_addresses} */ readonly replyToAddresses?: string; /** * Email subject. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#subject SesSendEmail#subject} */ readonly subject: string; /** * Email triggering type. 0 (default): non-trigger-based, suitable for marketing emails and non-immediate emails;1: trigger-based, suitable for immediate emails such as emails containing verification codes.If the size of an email exceeds a specified value,the system will automatically choose the non-trigger-based type. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#trigger_type SesSendEmail#trigger_type} */ readonly triggerType?: number; /** * Unsubscribe link option. 0: Do not add unsubscribe link; 1: English 2: Simplified Chinese; 3: Traditional Chinese; 4: Spanish; 5: French; 6: German; 7: Japanese; 8: Korean; 9: Arabic; 10: Thai. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#unsubscribe SesSendEmail#unsubscribe} */ readonly unsubscribe?: string; /** * attachments block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#attachments SesSendEmail#attachments} */ readonly attachments?: SesSendEmailAttachments[] | cdktf.IResolvable; /** * template block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#template SesSendEmail#template} */ readonly template?: SesSendEmailTemplate; } export interface SesSendEmailAttachments { /** * Base64-encoded attachment content. You can send attachments of up to 4 MB in the total size.Note: The TencentCloud API supports a request packet of up to 8 MB in size, and the size of the attachmentcontent will increase by 1.5 times after Base64 encoding. Therefore, you need to keep the total size of allattachments below 4 MB. If the entire request exceeds 8 MB, the API will return an error. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#content SesSendEmail#content} */ readonly content: string; /** * Attachment name, which cannot exceed 255 characters. Some attachment types are not supported. For details, see [Attachment Types.](https://www.tencentcloud.com/document/product/1084/42373?has_map=1). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#file_name SesSendEmail#file_name} */ readonly fileName: string; } export declare function sesSendEmailAttachmentsToTerraform(struct?: SesSendEmailAttachments | cdktf.IResolvable): any; export declare function sesSendEmailAttachmentsToHclTerraform(struct?: SesSendEmailAttachments | cdktf.IResolvable): any; export declare class SesSendEmailAttachmentsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): SesSendEmailAttachments | cdktf.IResolvable | undefined; set internalValue(value: SesSendEmailAttachments | cdktf.IResolvable | undefined); private _content?; get content(): string; set content(value: string); get contentInput(): string; private _fileName?; get fileName(): string; set fileName(value: string); get fileNameInput(): string; } export declare class SesSendEmailAttachmentsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: SesSendEmailAttachments[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): SesSendEmailAttachmentsOutputReference; } export interface SesSendEmailTemplate { /** * Variable parameters in the template. Please use json.dump to format the JSON object into a string type.The object is a set of key-value pairs. Each key denotes a variable, which is represented by {{key}}. The key will be replaced with the correspondingvalue (represented by {{value}}) when sending the email.Note: The parameter value cannot be data of a complex type such as HTML.Example: {name:xxx,age:xx}. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#template_data SesSendEmail#template_data} */ readonly templateData: string; /** * Template ID. If you do not have any template, please create one. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#template_id SesSendEmail#template_id} */ readonly templateId: number; } export declare function sesSendEmailTemplateToTerraform(struct?: SesSendEmailTemplateOutputReference | SesSendEmailTemplate): any; export declare function sesSendEmailTemplateToHclTerraform(struct?: SesSendEmailTemplateOutputReference | SesSendEmailTemplate): any; export declare class SesSendEmailTemplateOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): SesSendEmailTemplate | undefined; set internalValue(value: SesSendEmailTemplate | undefined); private _templateData?; get templateData(): string; set templateData(value: string); get templateDataInput(): string; private _templateId?; get templateId(): number; set templateId(value: number); get templateIdInput(): number; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email tencentcloud_ses_send_email} */ export declare class SesSendEmail extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_ses_send_email"; /** * Generates CDKTF code for importing a SesSendEmail resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the SesSendEmail to import * @param importFromId The id of the existing SesSendEmail that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the SesSendEmail to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ses_send_email tencentcloud_ses_send_email} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options SesSendEmailConfig */ constructor(scope: Construct, id: string, config: SesSendEmailConfig); private _bcc?; get bcc(): string[]; set bcc(value: string[]); resetBcc(): void; get bccInput(): string[]; private _cc?; get cc(): string[]; set cc(value: string[]); resetCc(): void; get ccInput(): string[]; private _destination?; get destination(): string[]; set destination(value: string[]); get destinationInput(): string[]; private _fromEmailAddress?; get fromEmailAddress(): string; set fromEmailAddress(value: string); get fromEmailAddressInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _replyToAddresses?; get replyToAddresses(): string; set replyToAddresses(value: string); resetReplyToAddresses(): void; get replyToAddressesInput(): string; private _subject?; get subject(): string; set subject(value: string); get subjectInput(): string; private _triggerType?; get triggerType(): number; set triggerType(value: number); resetTriggerType(): void; get triggerTypeInput(): number; private _unsubscribe?; get unsubscribe(): string; set unsubscribe(value: string); resetUnsubscribe(): void; get unsubscribeInput(): string; private _attachments; get attachments(): SesSendEmailAttachmentsList; putAttachments(value: SesSendEmailAttachments[] | cdktf.IResolvable): void; resetAttachments(): void; get attachmentsInput(): any; private _template; get template(): SesSendEmailTemplateOutputReference; putTemplate(value: SesSendEmailTemplate): void; resetTemplate(): void; get templateInput(): SesSendEmailTemplate; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }