import { ApiListPromise } from '@sinch/sdk-client'; import { CancelBatchMessageResponse, DryRunResponse, ReplaceBatchMessageResponse, SendSMSResponse, BinaryResponse, TextResponse, MediaResponse, CancelBatchMessageRequestData, DeliveryFeedbackRequestData, DryRunRequestData, GetBatchMessageRequestData, ListBatchesRequestData, ReplaceBatchMessageRequestData, SendSMSRequestData, SendTextSMSRequestData, SendBinarySMSRequestData, SendMediaSMSRequestData, UpdateBatchMessageRequestData } from '../../../models'; import { SmsDomainApi } from '../sms-domain-api'; import { LazySmsApiClient } from '../sms-service'; export declare class BatchesApi extends SmsDomainApi { constructor(lazyClient: LazySmsApiClient); /** * Cancel a batch message * A batch can be canceled at any point. If a batch is canceled while it's currently being delivered some messages currently being processed might still be delivered. The delivery report will indicate which messages were canceled and which weren't. Canceling a batch scheduled in the future will result in an empty delivery report while canceling an already sent batch would result in no change to the completed delivery report. * @param { CancelBatchMessageRequestData } data - The data to provide to the API call. */ cancel(data: CancelBatchMessageRequestData): Promise; /** * Send delivery feedback for a message * Send feedback if your system can confirm successful message delivery. Feedback can only be provided if 'feedback_enabled' was set when batch was submitted. * **Batches**: It is possible to submit feedback multiple times for the same batch for different recipients. Feedback without specified recipients is treated as successful message delivery to all recipients referenced in the batch. Note that the 'recipients' key is still required even if the value is empty. * **Groups**: If the batch message was creating using a group ID, at least one recipient is required. Excluding recipients (an empty recipient list) does not work and will result in a failed request. * @param { DeliveryFeedbackRequestData } data - The data to provide to the API call. */ sendDeliveryFeedback(data: DeliveryFeedbackRequestData): Promise; /** * Dry run * This operation will perform a dry run of a batch which calculates the bodies and number of parts for all messages in the batch without actually sending any messages. * @param { DryRunRequestData } data - The data to provide to the API call. */ dryRun(data: DryRunRequestData): Promise; /** * Get a batch message * This operation returns a specific batch that matches the provided batch ID. * @param { GetBatchMessageRequestData } data - The data to provide to the API call. */ get(data: GetBatchMessageRequestData): Promise; /** * List Batches * With the list operation you can list batch messages created in the last 14 days that you have created. This operation supports pagination. * @param { ListBatchesRequestData } data - The data to provide to the API call. * @return {ApiListPromise} */ list(data?: ListBatchesRequestData): ApiListPromise; /** * Replace a batch * This operation will replace all the parameters of a batch with the provided values. It is the same as cancelling a batch and sending a new one instead. * @param { ReplaceBatchMessageRequestData } data - The data to provide to the API call. */ replace(data: ReplaceBatchMessageRequestData): Promise; /** * Send Text Message * Send a text message or a batch of text messages. * Depending on the length of the body, one message might be split into multiple parts and charged accordingly. * Any groups targeted in a scheduled batch will be evaluated at the time of sending. * If a group is deleted between batch creation and scheduled date, it will be considered empty. * Be sure to use the correct region in the server URL. * @param { SendSMSRequestData } data - The data to provide to the API call. */ send(data: SendSMSRequestData): Promise; /** * Send Text Message * Send a text message or a batch of text messages. * Depending on the length of the body, one message might be split into multiple parts and charged accordingly. * Any groups targeted in a scheduled batch will be evaluated at the time of sending. * If a group is deleted between batch creation and scheduled date, it will be considered empty. * Be sure to use the correct region in the server URL. * @param { SendTextSMSRequestData } data - The data to provide to the API call. */ sendTextMessage(data: SendTextSMSRequestData): Promise; /** * Send Binary Message * Send a binary message or a batch of binary messages. * Depending on the length of the body, one message might be split into multiple parts and charged accordingly. * Any groups targeted in a scheduled batch will be evaluated at the time of sending. * If a group is deleted between batch creation and scheduled date, it will be considered empty. * Be sure to use the correct region in the server URL. * @param { SendBinarySMSRequestData } data - The data to provide to the API call. */ sendBinaryMessage(data: SendBinarySMSRequestData): Promise; /** * Send Media Message * Send a media message or a batch of media messages. * Depending on the length of the body, one message might be split into multiple parts and charged accordingly. * Any groups targeted in a scheduled batch will be evaluated at the time of sending. * If a group is deleted between batch creation and scheduled date, it will be considered empty. * Be sure to use the correct region in the server URL. * @param { SendMediaSMSRequestData } data - The data to provide to the API call. */ sendMediaMessage(data: SendMediaSMSRequestData): Promise; /** * Update a Batch message * This operation updates all specified parameters of a batch that matches the provided batch ID. * @param { UpdateBatchMessageRequestData } data - The data to provide to the API call. */ update(data: UpdateBatchMessageRequestData): Promise; }