import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { RenderMessageTemplateRequest, RenderMessageTemplateResponse } from "../models/models_1"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link RenderMessageTemplateCommand}. */ export interface RenderMessageTemplateCommandInput extends RenderMessageTemplateRequest { } /** * @public * * The output of {@link RenderMessageTemplateCommand}. */ export interface RenderMessageTemplateCommandOutput extends RenderMessageTemplateResponse, __MetadataBearer { } declare const RenderMessageTemplateCommand_base: { new (input: RenderMessageTemplateCommandInput): import("@smithy/core/client").CommandImpl; new (input: RenderMessageTemplateCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Renders the Amazon Q in Connect message template based on the attribute values provided and generates the message content. For any variable present in the message template, if the attribute value is neither provided in the attribute request parameter nor the default attribute of the message template, the rendered message content will keep the variable placeholder as it is and return the attribute keys that are missing.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { QConnectClient, RenderMessageTemplateCommand } from "@aws-sdk/client-qconnect"; // ES Modules import * // const { QConnectClient, RenderMessageTemplateCommand } = require("@aws-sdk/client-qconnect"); // CommonJS import * // import type { QConnectClientConfig } from "@aws-sdk/client-qconnect"; * const config = {}; // type is QConnectClientConfig * const client = new QConnectClient(config); * const input = { // RenderMessageTemplateRequest * knowledgeBaseId: "STRING_VALUE", // required * messageTemplateId: "STRING_VALUE", // required * attributes: { // MessageTemplateAttributes * systemAttributes: { // SystemAttributes * name: "STRING_VALUE", * customerEndpoint: { // SystemEndpointAttributes * address: "STRING_VALUE", * }, * systemEndpoint: { * address: "STRING_VALUE", * }, * }, * agentAttributes: { // AgentAttributes * firstName: "STRING_VALUE", * lastName: "STRING_VALUE", * }, * customerProfileAttributes: { // CustomerProfileAttributes * profileId: "STRING_VALUE", * profileARN: "STRING_VALUE", * firstName: "STRING_VALUE", * middleName: "STRING_VALUE", * lastName: "STRING_VALUE", * accountNumber: "STRING_VALUE", * emailAddress: "STRING_VALUE", * phoneNumber: "STRING_VALUE", * additionalInformation: "STRING_VALUE", * partyType: "STRING_VALUE", * businessName: "STRING_VALUE", * birthDate: "STRING_VALUE", * gender: "STRING_VALUE", * mobilePhoneNumber: "STRING_VALUE", * homePhoneNumber: "STRING_VALUE", * businessPhoneNumber: "STRING_VALUE", * businessEmailAddress: "STRING_VALUE", * address1: "STRING_VALUE", * address2: "STRING_VALUE", * address3: "STRING_VALUE", * address4: "STRING_VALUE", * city: "STRING_VALUE", * county: "STRING_VALUE", * country: "STRING_VALUE", * postalCode: "STRING_VALUE", * province: "STRING_VALUE", * state: "STRING_VALUE", * shippingAddress1: "STRING_VALUE", * shippingAddress2: "STRING_VALUE", * shippingAddress3: "STRING_VALUE", * shippingAddress4: "STRING_VALUE", * shippingCity: "STRING_VALUE", * shippingCounty: "STRING_VALUE", * shippingCountry: "STRING_VALUE", * shippingPostalCode: "STRING_VALUE", * shippingProvince: "STRING_VALUE", * shippingState: "STRING_VALUE", * mailingAddress1: "STRING_VALUE", * mailingAddress2: "STRING_VALUE", * mailingAddress3: "STRING_VALUE", * mailingAddress4: "STRING_VALUE", * mailingCity: "STRING_VALUE", * mailingCounty: "STRING_VALUE", * mailingCountry: "STRING_VALUE", * mailingPostalCode: "STRING_VALUE", * mailingProvince: "STRING_VALUE", * mailingState: "STRING_VALUE", * billingAddress1: "STRING_VALUE", * billingAddress2: "STRING_VALUE", * billingAddress3: "STRING_VALUE", * billingAddress4: "STRING_VALUE", * billingCity: "STRING_VALUE", * billingCounty: "STRING_VALUE", * billingCountry: "STRING_VALUE", * billingPostalCode: "STRING_VALUE", * billingProvince: "STRING_VALUE", * billingState: "STRING_VALUE", * custom: { // CustomAttributes * "": "STRING_VALUE", * }, * }, * customAttributes: { * "": "STRING_VALUE", * }, * }, * }; * const command = new RenderMessageTemplateCommand(input); * const response = await client.send(command); * // { // RenderMessageTemplateResponse * // content: { // MessageTemplateContentProvider Union: only one key present * // email: { // EmailMessageTemplateContent * // subject: "STRING_VALUE", * // body: { // EmailMessageTemplateContentBody * // plainText: { // MessageTemplateBodyContentProvider Union: only one key present * // content: "STRING_VALUE", * // }, * // html: {// Union: only one key present * // content: "STRING_VALUE", * // }, * // }, * // headers: [ // EmailHeaders * // { // EmailHeader * // name: "STRING_VALUE", * // value: "STRING_VALUE", * // }, * // ], * // }, * // sms: { // SMSMessageTemplateContent * // body: { // SMSMessageTemplateContentBody * // plainText: {// Union: only one key present * // content: "STRING_VALUE", * // }, * // }, * // }, * // whatsApp: { // WhatsAppMessageTemplateContent * // data: "STRING_VALUE", * // }, * // push: { // PushMessageTemplateContent * // adm: { // PushADMMessageTemplateContent * // title: "STRING_VALUE", * // body: {// Union: only one key present * // content: "STRING_VALUE", * // }, * // action: "STRING_VALUE", * // sound: "STRING_VALUE", * // url: "STRING_VALUE", * // imageUrl: "STRING_VALUE", * // imageIconUrl: "STRING_VALUE", * // smallImageIconUrl: "STRING_VALUE", * // rawContent: {// Union: only one key present * // content: "STRING_VALUE", * // }, * // }, * // apns: { // PushAPNSMessageTemplateContent * // title: "STRING_VALUE", * // body: "", * // action: "STRING_VALUE", * // sound: "STRING_VALUE", * // url: "STRING_VALUE", * // mediaUrl: "STRING_VALUE", * // rawContent: "", * // }, * // fcm: { // PushFCMMessageTemplateContent * // title: "STRING_VALUE", * // body: "", * // action: "STRING_VALUE", * // sound: "STRING_VALUE", * // url: "STRING_VALUE", * // imageUrl: "STRING_VALUE", * // imageIconUrl: "STRING_VALUE", * // smallImageIconUrl: "STRING_VALUE", * // rawContent: "", * // }, * // baidu: { // PushBaiduMessageTemplateContent * // title: "STRING_VALUE", * // body: "", * // action: "STRING_VALUE", * // sound: "STRING_VALUE", * // url: "STRING_VALUE", * // imageUrl: "STRING_VALUE", * // imageIconUrl: "STRING_VALUE", * // smallImageIconUrl: "STRING_VALUE", * // rawContent: "", * // }, * // }, * // }, * // sourceConfigurationSummary: { // MessageTemplateSourceConfigurationSummary Union: only one key present * // whatsApp: { // WhatsAppMessageTemplateSourceConfigurationSummary * // businessAccountId: "STRING_VALUE", // required * // templateId: "STRING_VALUE", // required * // name: "STRING_VALUE", * // language: "STRING_VALUE", * // components: [ // WhatsAppMessageTemplateComponents * // "STRING_VALUE", * // ], * // status: "STRING_VALUE", * // statusReason: "STRING_VALUE", * // }, * // }, * // attributesNotInterpolated: [ // MessageTemplateAttributeKeyList * // "STRING_VALUE", * // ], * // attachments: [ // MessageTemplateAttachmentList * // { // MessageTemplateAttachment * // contentDisposition: "STRING_VALUE", // required * // name: "STRING_VALUE", // required * // uploadedTime: new Date("TIMESTAMP"), // required * // url: "STRING_VALUE", // required * // urlExpiry: new Date("TIMESTAMP"), // required * // attachmentId: "STRING_VALUE", // required * // }, * // ], * // }; * * ``` * * @param RenderMessageTemplateCommandInput - {@link RenderMessageTemplateCommandInput} * @returns {@link RenderMessageTemplateCommandOutput} * @see {@link RenderMessageTemplateCommandInput} for command's `input` shape. * @see {@link RenderMessageTemplateCommandOutput} for command's `response` shape. * @see {@link QConnectClientResolvedConfig | config} for QConnectClient's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

You do not have sufficient access to perform this action.

* * @throws {@link ResourceNotFoundException} (client fault) *

The specified resource does not exist.

* * @throws {@link ThrottlingException} (client fault) *

The throttling limit has been exceeded.

* * @throws {@link ValidationException} (client fault) *

The input fails to satisfy the constraints specified by a service.

* * @throws {@link QConnectServiceException} *

Base exception class for all service exceptions from QConnect service.

* * * @public */ export declare class RenderMessageTemplateCommand extends RenderMessageTemplateCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: RenderMessageTemplateRequest; output: RenderMessageTemplateResponse; }; sdk: { input: RenderMessageTemplateCommandInput; output: RenderMessageTemplateCommandOutput; }; }; }