import { Client } from '../client.js'; import { Models } from '../models.js'; import { MessagePriority } from '../enums/message-priority.js'; import { SmtpEncryption } from '../enums/smtp-encryption.js'; import '../query.js'; import '../enums/database-type.js'; import '../enums/attribute-status.js'; import '../enums/column-status.js'; import '../enums/index-status.js'; import '../enums/deployment-status.js'; import '../enums/execution-trigger.js'; import '../enums/execution-status.js'; import '../enums/health-antivirus-status.js'; import '../enums/health-check-status.js'; import '../enums/message-status.js'; declare class Messaging { client: Client; constructor(client: Client); /** * Get a list of all messages from the current Appwrite project. * * @param {string[]} params.queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: scheduledAt, deliveredAt, deliveredTotal, status, description, providerType * @param {string} params.search - Search term to filter your list results. Max length: 256 chars. * @param {boolean} params.total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} */ listMessages(params?: { queries?: string[]; search?: string; total?: boolean; }): Promise; /** * Get a list of all messages from the current Appwrite project. * * @param {string[]} queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: scheduledAt, deliveredAt, deliveredTotal, status, description, providerType * @param {string} search - Search term to filter your list results. Max length: 256 chars. * @param {boolean} total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ listMessages(queries?: string[], search?: string, total?: boolean): Promise; /** * Create a new email message. * * @param {string} params.messageId - Message ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.subject - Email Subject. * @param {string} params.content - Email Content. * @param {string[]} params.topics - List of Topic IDs. * @param {string[]} params.users - List of User IDs. * @param {string[]} params.targets - List of Targets IDs. * @param {string[]} params.cc - Array of target IDs to be added as CC. * @param {string[]} params.bcc - Array of target IDs to be added as BCC. * @param {string[]} params.attachments - Array of compound ID strings of bucket IDs and file IDs to be attached to the email. They should be formatted as :. * @param {boolean} params.draft - Is message a draft * @param {boolean} params.html - Is content of type HTML * @param {string} params.scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @throws {AppwriteException} * @returns {Promise} */ createEmail(params: { messageId: string; subject: string; content: string; topics?: string[]; users?: string[]; targets?: string[]; cc?: string[]; bcc?: string[]; attachments?: string[]; draft?: boolean; html?: boolean; scheduledAt?: string; }): Promise; /** * Create a new email message. * * @param {string} messageId - Message ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} subject - Email Subject. * @param {string} content - Email Content. * @param {string[]} topics - List of Topic IDs. * @param {string[]} users - List of User IDs. * @param {string[]} targets - List of Targets IDs. * @param {string[]} cc - Array of target IDs to be added as CC. * @param {string[]} bcc - Array of target IDs to be added as BCC. * @param {string[]} attachments - Array of compound ID strings of bucket IDs and file IDs to be attached to the email. They should be formatted as :. * @param {boolean} draft - Is message a draft * @param {boolean} html - Is content of type HTML * @param {string} scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createEmail(messageId: string, subject: string, content: string, topics?: string[], users?: string[], targets?: string[], cc?: string[], bcc?: string[], attachments?: string[], draft?: boolean, html?: boolean, scheduledAt?: string): Promise; /** * Update an email message by its unique ID. This endpoint only works on messages that are in draft status. Messages that are already processing, sent, or failed cannot be updated. * * * @param {string} params.messageId - Message ID. * @param {string[]} params.topics - List of Topic IDs. * @param {string[]} params.users - List of User IDs. * @param {string[]} params.targets - List of Targets IDs. * @param {string} params.subject - Email Subject. * @param {string} params.content - Email Content. * @param {boolean} params.draft - Is message a draft * @param {boolean} params.html - Is content of type HTML * @param {string[]} params.cc - Array of target IDs to be added as CC. * @param {string[]} params.bcc - Array of target IDs to be added as BCC. * @param {string} params.scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @param {string[]} params.attachments - Array of compound ID strings of bucket IDs and file IDs to be attached to the email. They should be formatted as :. * @throws {AppwriteException} * @returns {Promise} */ updateEmail(params: { messageId: string; topics?: string[]; users?: string[]; targets?: string[]; subject?: string; content?: string; draft?: boolean; html?: boolean; cc?: string[]; bcc?: string[]; scheduledAt?: string; attachments?: string[]; }): Promise; /** * Update an email message by its unique ID. This endpoint only works on messages that are in draft status. Messages that are already processing, sent, or failed cannot be updated. * * * @param {string} messageId - Message ID. * @param {string[]} topics - List of Topic IDs. * @param {string[]} users - List of User IDs. * @param {string[]} targets - List of Targets IDs. * @param {string} subject - Email Subject. * @param {string} content - Email Content. * @param {boolean} draft - Is message a draft * @param {boolean} html - Is content of type HTML * @param {string[]} cc - Array of target IDs to be added as CC. * @param {string[]} bcc - Array of target IDs to be added as BCC. * @param {string} scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @param {string[]} attachments - Array of compound ID strings of bucket IDs and file IDs to be attached to the email. They should be formatted as :. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateEmail(messageId: string, topics?: string[], users?: string[], targets?: string[], subject?: string, content?: string, draft?: boolean, html?: boolean, cc?: string[], bcc?: string[], scheduledAt?: string, attachments?: string[]): Promise; /** * Create a new push notification. * * @param {string} params.messageId - Message ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.title - Title for push notification. * @param {string} params.body - Body for push notification. * @param {string[]} params.topics - List of Topic IDs. * @param {string[]} params.users - List of User IDs. * @param {string[]} params.targets - List of Targets IDs. * @param {object} params.data - Additional key-value pair data for push notification. * @param {string} params.action - Action for push notification. * @param {string} params.image - Image for push notification. Must be a compound bucket ID to file ID of a jpeg, png, or bmp image in Appwrite Storage. It should be formatted as :. * @param {string} params.icon - Icon for push notification. Available only for Android and Web Platform. * @param {string} params.sound - Sound for push notification. Available only for Android and iOS Platform. * @param {string} params.color - Color for push notification. Available only for Android Platform. * @param {string} params.tag - Tag for push notification. Available only for Android Platform. * @param {number} params.badge - Badge for push notification. Available only for iOS Platform. * @param {boolean} params.draft - Is message a draft * @param {string} params.scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @param {boolean} params.contentAvailable - If set to true, the notification will be delivered in the background. Available only for iOS Platform. * @param {boolean} params.critical - If set to true, the notification will be marked as critical. This requires the app to have the critical notification entitlement. Available only for iOS Platform. * @param {MessagePriority} params.priority - Set the notification priority. "normal" will consider device state and may not deliver notifications immediately. "high" will always attempt to immediately deliver the notification. * @throws {AppwriteException} * @returns {Promise} */ createPush(params: { messageId: string; title?: string; body?: string; topics?: string[]; users?: string[]; targets?: string[]; data?: object; action?: string; image?: string; icon?: string; sound?: string; color?: string; tag?: string; badge?: number; draft?: boolean; scheduledAt?: string; contentAvailable?: boolean; critical?: boolean; priority?: MessagePriority; }): Promise; /** * Create a new push notification. * * @param {string} messageId - Message ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} title - Title for push notification. * @param {string} body - Body for push notification. * @param {string[]} topics - List of Topic IDs. * @param {string[]} users - List of User IDs. * @param {string[]} targets - List of Targets IDs. * @param {object} data - Additional key-value pair data for push notification. * @param {string} action - Action for push notification. * @param {string} image - Image for push notification. Must be a compound bucket ID to file ID of a jpeg, png, or bmp image in Appwrite Storage. It should be formatted as :. * @param {string} icon - Icon for push notification. Available only for Android and Web Platform. * @param {string} sound - Sound for push notification. Available only for Android and iOS Platform. * @param {string} color - Color for push notification. Available only for Android Platform. * @param {string} tag - Tag for push notification. Available only for Android Platform. * @param {number} badge - Badge for push notification. Available only for iOS Platform. * @param {boolean} draft - Is message a draft * @param {string} scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @param {boolean} contentAvailable - If set to true, the notification will be delivered in the background. Available only for iOS Platform. * @param {boolean} critical - If set to true, the notification will be marked as critical. This requires the app to have the critical notification entitlement. Available only for iOS Platform. * @param {MessagePriority} priority - Set the notification priority. "normal" will consider device state and may not deliver notifications immediately. "high" will always attempt to immediately deliver the notification. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createPush(messageId: string, title?: string, body?: string, topics?: string[], users?: string[], targets?: string[], data?: object, action?: string, image?: string, icon?: string, sound?: string, color?: string, tag?: string, badge?: number, draft?: boolean, scheduledAt?: string, contentAvailable?: boolean, critical?: boolean, priority?: MessagePriority): Promise; /** * Update a push notification by its unique ID. This endpoint only works on messages that are in draft status. Messages that are already processing, sent, or failed cannot be updated. * * * @param {string} params.messageId - Message ID. * @param {string[]} params.topics - List of Topic IDs. * @param {string[]} params.users - List of User IDs. * @param {string[]} params.targets - List of Targets IDs. * @param {string} params.title - Title for push notification. * @param {string} params.body - Body for push notification. * @param {object} params.data - Additional Data for push notification. * @param {string} params.action - Action for push notification. * @param {string} params.image - Image for push notification. Must be a compound bucket ID to file ID of a jpeg, png, or bmp image in Appwrite Storage. It should be formatted as :. * @param {string} params.icon - Icon for push notification. Available only for Android and Web platforms. * @param {string} params.sound - Sound for push notification. Available only for Android and iOS platforms. * @param {string} params.color - Color for push notification. Available only for Android platforms. * @param {string} params.tag - Tag for push notification. Available only for Android platforms. * @param {number} params.badge - Badge for push notification. Available only for iOS platforms. * @param {boolean} params.draft - Is message a draft * @param {string} params.scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @param {boolean} params.contentAvailable - If set to true, the notification will be delivered in the background. Available only for iOS Platform. * @param {boolean} params.critical - If set to true, the notification will be marked as critical. This requires the app to have the critical notification entitlement. Available only for iOS Platform. * @param {MessagePriority} params.priority - Set the notification priority. "normal" will consider device battery state and may send notifications later. "high" will always attempt to immediately deliver the notification. * @throws {AppwriteException} * @returns {Promise} */ updatePush(params: { messageId: string; topics?: string[]; users?: string[]; targets?: string[]; title?: string; body?: string; data?: object; action?: string; image?: string; icon?: string; sound?: string; color?: string; tag?: string; badge?: number; draft?: boolean; scheduledAt?: string; contentAvailable?: boolean; critical?: boolean; priority?: MessagePriority; }): Promise; /** * Update a push notification by its unique ID. This endpoint only works on messages that are in draft status. Messages that are already processing, sent, or failed cannot be updated. * * * @param {string} messageId - Message ID. * @param {string[]} topics - List of Topic IDs. * @param {string[]} users - List of User IDs. * @param {string[]} targets - List of Targets IDs. * @param {string} title - Title for push notification. * @param {string} body - Body for push notification. * @param {object} data - Additional Data for push notification. * @param {string} action - Action for push notification. * @param {string} image - Image for push notification. Must be a compound bucket ID to file ID of a jpeg, png, or bmp image in Appwrite Storage. It should be formatted as :. * @param {string} icon - Icon for push notification. Available only for Android and Web platforms. * @param {string} sound - Sound for push notification. Available only for Android and iOS platforms. * @param {string} color - Color for push notification. Available only for Android platforms. * @param {string} tag - Tag for push notification. Available only for Android platforms. * @param {number} badge - Badge for push notification. Available only for iOS platforms. * @param {boolean} draft - Is message a draft * @param {string} scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @param {boolean} contentAvailable - If set to true, the notification will be delivered in the background. Available only for iOS Platform. * @param {boolean} critical - If set to true, the notification will be marked as critical. This requires the app to have the critical notification entitlement. Available only for iOS Platform. * @param {MessagePriority} priority - Set the notification priority. "normal" will consider device battery state and may send notifications later. "high" will always attempt to immediately deliver the notification. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updatePush(messageId: string, topics?: string[], users?: string[], targets?: string[], title?: string, body?: string, data?: object, action?: string, image?: string, icon?: string, sound?: string, color?: string, tag?: string, badge?: number, draft?: boolean, scheduledAt?: string, contentAvailable?: boolean, critical?: boolean, priority?: MessagePriority): Promise; /** * Create a new SMS message. * * @param {string} params.messageId - Message ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.content - SMS Content. * @param {string[]} params.topics - List of Topic IDs. * @param {string[]} params.users - List of User IDs. * @param {string[]} params.targets - List of Targets IDs. * @param {boolean} params.draft - Is message a draft * @param {string} params.scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @throws {AppwriteException} * @returns {Promise} * @deprecated This API has been deprecated since 1.8.0. Please use `Messaging.createSMS` instead. */ createSms(params: { messageId: string; content: string; topics?: string[]; users?: string[]; targets?: string[]; draft?: boolean; scheduledAt?: string; }): Promise; /** * Create a new SMS message. * * @param {string} messageId - Message ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} content - SMS Content. * @param {string[]} topics - List of Topic IDs. * @param {string[]} users - List of User IDs. * @param {string[]} targets - List of Targets IDs. * @param {boolean} draft - Is message a draft * @param {string} scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createSms(messageId: string, content: string, topics?: string[], users?: string[], targets?: string[], draft?: boolean, scheduledAt?: string): Promise; /** * Create a new SMS message. * * @param {string} params.messageId - Message ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.content - SMS Content. * @param {string[]} params.topics - List of Topic IDs. * @param {string[]} params.users - List of User IDs. * @param {string[]} params.targets - List of Targets IDs. * @param {boolean} params.draft - Is message a draft * @param {string} params.scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @throws {AppwriteException} * @returns {Promise} */ createSMS(params: { messageId: string; content: string; topics?: string[]; users?: string[]; targets?: string[]; draft?: boolean; scheduledAt?: string; }): Promise; /** * Create a new SMS message. * * @param {string} messageId - Message ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} content - SMS Content. * @param {string[]} topics - List of Topic IDs. * @param {string[]} users - List of User IDs. * @param {string[]} targets - List of Targets IDs. * @param {boolean} draft - Is message a draft * @param {string} scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createSMS(messageId: string, content: string, topics?: string[], users?: string[], targets?: string[], draft?: boolean, scheduledAt?: string): Promise; /** * Update an SMS message by its unique ID. This endpoint only works on messages that are in draft status. Messages that are already processing, sent, or failed cannot be updated. * * * @param {string} params.messageId - Message ID. * @param {string[]} params.topics - List of Topic IDs. * @param {string[]} params.users - List of User IDs. * @param {string[]} params.targets - List of Targets IDs. * @param {string} params.content - Email Content. * @param {boolean} params.draft - Is message a draft * @param {string} params.scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @throws {AppwriteException} * @returns {Promise} * @deprecated This API has been deprecated since 1.8.0. Please use `Messaging.updateSMS` instead. */ updateSms(params: { messageId: string; topics?: string[]; users?: string[]; targets?: string[]; content?: string; draft?: boolean; scheduledAt?: string; }): Promise; /** * Update an SMS message by its unique ID. This endpoint only works on messages that are in draft status. Messages that are already processing, sent, or failed cannot be updated. * * * @param {string} messageId - Message ID. * @param {string[]} topics - List of Topic IDs. * @param {string[]} users - List of User IDs. * @param {string[]} targets - List of Targets IDs. * @param {string} content - Email Content. * @param {boolean} draft - Is message a draft * @param {string} scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateSms(messageId: string, topics?: string[], users?: string[], targets?: string[], content?: string, draft?: boolean, scheduledAt?: string): Promise; /** * Update an SMS message by its unique ID. This endpoint only works on messages that are in draft status. Messages that are already processing, sent, or failed cannot be updated. * * * @param {string} params.messageId - Message ID. * @param {string[]} params.topics - List of Topic IDs. * @param {string[]} params.users - List of User IDs. * @param {string[]} params.targets - List of Targets IDs. * @param {string} params.content - Email Content. * @param {boolean} params.draft - Is message a draft * @param {string} params.scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @throws {AppwriteException} * @returns {Promise} */ updateSMS(params: { messageId: string; topics?: string[]; users?: string[]; targets?: string[]; content?: string; draft?: boolean; scheduledAt?: string; }): Promise; /** * Update an SMS message by its unique ID. This endpoint only works on messages that are in draft status. Messages that are already processing, sent, or failed cannot be updated. * * * @param {string} messageId - Message ID. * @param {string[]} topics - List of Topic IDs. * @param {string[]} users - List of User IDs. * @param {string[]} targets - List of Targets IDs. * @param {string} content - Email Content. * @param {boolean} draft - Is message a draft * @param {string} scheduledAt - Scheduled delivery time for message in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. DateTime value must be in future. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateSMS(messageId: string, topics?: string[], users?: string[], targets?: string[], content?: string, draft?: boolean, scheduledAt?: string): Promise; /** * Get a message by its unique ID. * * * @param {string} params.messageId - Message ID. * @throws {AppwriteException} * @returns {Promise} */ getMessage(params: { messageId: string; }): Promise; /** * Get a message by its unique ID. * * * @param {string} messageId - Message ID. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ getMessage(messageId: string): Promise; /** * Delete a message. If the message is not a draft or scheduled, but has been sent, this will not recall the message. * * @param {string} params.messageId - Message ID. * @throws {AppwriteException} * @returns {Promise<{}>} */ delete(params: { messageId: string; }): Promise<{}>; /** * Delete a message. If the message is not a draft or scheduled, but has been sent, this will not recall the message. * * @param {string} messageId - Message ID. * @throws {AppwriteException} * @returns {Promise<{}>} * @deprecated Use the object parameter style method for a better developer experience. */ delete(messageId: string): Promise<{}>; /** * Get the message activity logs listed by its unique ID. * * @param {string} params.messageId - Message ID. * @param {string[]} params.queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Only supported methods are limit and offset * @param {boolean} params.total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} */ listMessageLogs(params: { messageId: string; queries?: string[]; total?: boolean; }): Promise; /** * Get the message activity logs listed by its unique ID. * * @param {string} messageId - Message ID. * @param {string[]} queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Only supported methods are limit and offset * @param {boolean} total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ listMessageLogs(messageId: string, queries?: string[], total?: boolean): Promise; /** * Get a list of the targets associated with a message. * * @param {string} params.messageId - Message ID. * @param {string[]} params.queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: userId, providerId, identifier, providerType * @param {boolean} params.total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} */ listTargets(params: { messageId: string; queries?: string[]; total?: boolean; }): Promise; /** * Get a list of the targets associated with a message. * * @param {string} messageId - Message ID. * @param {string[]} queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: userId, providerId, identifier, providerType * @param {boolean} total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ listTargets(messageId: string, queries?: string[], total?: boolean): Promise; /** * Get a list of all providers from the current Appwrite project. * * @param {string[]} params.queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: name, provider, type, enabled * @param {string} params.search - Search term to filter your list results. Max length: 256 chars. * @param {boolean} params.total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} */ listProviders(params?: { queries?: string[]; search?: string; total?: boolean; }): Promise; /** * Get a list of all providers from the current Appwrite project. * * @param {string[]} queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: name, provider, type, enabled * @param {string} search - Search term to filter your list results. Max length: 256 chars. * @param {boolean} total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ listProviders(queries?: string[], search?: string, total?: boolean): Promise; /** * Create a new Apple Push Notification service provider. * * @param {string} params.providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.name - Provider name. * @param {string} params.authKey - APNS authentication key. * @param {string} params.authKeyId - APNS authentication key ID. * @param {string} params.teamId - APNS team ID. * @param {string} params.bundleId - APNS bundle ID. * @param {boolean} params.sandbox - Use APNS sandbox environment. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated This API has been deprecated since 1.8.0. Please use `Messaging.createAPNSProvider` instead. */ createApnsProvider(params: { providerId: string; name: string; authKey?: string; authKeyId?: string; teamId?: string; bundleId?: string; sandbox?: boolean; enabled?: boolean; }): Promise; /** * Create a new Apple Push Notification service provider. * * @param {string} providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} name - Provider name. * @param {string} authKey - APNS authentication key. * @param {string} authKeyId - APNS authentication key ID. * @param {string} teamId - APNS team ID. * @param {string} bundleId - APNS bundle ID. * @param {boolean} sandbox - Use APNS sandbox environment. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createApnsProvider(providerId: string, name: string, authKey?: string, authKeyId?: string, teamId?: string, bundleId?: string, sandbox?: boolean, enabled?: boolean): Promise; /** * Create a new Apple Push Notification service provider. * * @param {string} params.providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.name - Provider name. * @param {string} params.authKey - APNS authentication key. * @param {string} params.authKeyId - APNS authentication key ID. * @param {string} params.teamId - APNS team ID. * @param {string} params.bundleId - APNS bundle ID. * @param {boolean} params.sandbox - Use APNS sandbox environment. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} */ createAPNSProvider(params: { providerId: string; name: string; authKey?: string; authKeyId?: string; teamId?: string; bundleId?: string; sandbox?: boolean; enabled?: boolean; }): Promise; /** * Create a new Apple Push Notification service provider. * * @param {string} providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} name - Provider name. * @param {string} authKey - APNS authentication key. * @param {string} authKeyId - APNS authentication key ID. * @param {string} teamId - APNS team ID. * @param {string} bundleId - APNS bundle ID. * @param {boolean} sandbox - Use APNS sandbox environment. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createAPNSProvider(providerId: string, name: string, authKey?: string, authKeyId?: string, teamId?: string, bundleId?: string, sandbox?: boolean, enabled?: boolean): Promise; /** * Update a Apple Push Notification service provider by its unique ID. * * @param {string} params.providerId - Provider ID. * @param {string} params.name - Provider name. * @param {boolean} params.enabled - Set as enabled. * @param {string} params.authKey - APNS authentication key. * @param {string} params.authKeyId - APNS authentication key ID. * @param {string} params.teamId - APNS team ID. * @param {string} params.bundleId - APNS bundle ID. * @param {boolean} params.sandbox - Use APNS sandbox environment. * @throws {AppwriteException} * @returns {Promise} * @deprecated This API has been deprecated since 1.8.0. Please use `Messaging.updateAPNSProvider` instead. */ updateApnsProvider(params: { providerId: string; name?: string; enabled?: boolean; authKey?: string; authKeyId?: string; teamId?: string; bundleId?: string; sandbox?: boolean; }): Promise; /** * Update a Apple Push Notification service provider by its unique ID. * * @param {string} providerId - Provider ID. * @param {string} name - Provider name. * @param {boolean} enabled - Set as enabled. * @param {string} authKey - APNS authentication key. * @param {string} authKeyId - APNS authentication key ID. * @param {string} teamId - APNS team ID. * @param {string} bundleId - APNS bundle ID. * @param {boolean} sandbox - Use APNS sandbox environment. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateApnsProvider(providerId: string, name?: string, enabled?: boolean, authKey?: string, authKeyId?: string, teamId?: string, bundleId?: string, sandbox?: boolean): Promise; /** * Update a Apple Push Notification service provider by its unique ID. * * @param {string} params.providerId - Provider ID. * @param {string} params.name - Provider name. * @param {boolean} params.enabled - Set as enabled. * @param {string} params.authKey - APNS authentication key. * @param {string} params.authKeyId - APNS authentication key ID. * @param {string} params.teamId - APNS team ID. * @param {string} params.bundleId - APNS bundle ID. * @param {boolean} params.sandbox - Use APNS sandbox environment. * @throws {AppwriteException} * @returns {Promise} */ updateAPNSProvider(params: { providerId: string; name?: string; enabled?: boolean; authKey?: string; authKeyId?: string; teamId?: string; bundleId?: string; sandbox?: boolean; }): Promise; /** * Update a Apple Push Notification service provider by its unique ID. * * @param {string} providerId - Provider ID. * @param {string} name - Provider name. * @param {boolean} enabled - Set as enabled. * @param {string} authKey - APNS authentication key. * @param {string} authKeyId - APNS authentication key ID. * @param {string} teamId - APNS team ID. * @param {string} bundleId - APNS bundle ID. * @param {boolean} sandbox - Use APNS sandbox environment. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateAPNSProvider(providerId: string, name?: string, enabled?: boolean, authKey?: string, authKeyId?: string, teamId?: string, bundleId?: string, sandbox?: boolean): Promise; /** * Create a new Firebase Cloud Messaging provider. * * @param {string} params.providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.name - Provider name. * @param {object} params.serviceAccountJSON - FCM service account JSON. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated This API has been deprecated since 1.8.0. Please use `Messaging.createFCMProvider` instead. */ createFcmProvider(params: { providerId: string; name: string; serviceAccountJSON?: object; enabled?: boolean; }): Promise; /** * Create a new Firebase Cloud Messaging provider. * * @param {string} providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} name - Provider name. * @param {object} serviceAccountJSON - FCM service account JSON. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createFcmProvider(providerId: string, name: string, serviceAccountJSON?: object, enabled?: boolean): Promise; /** * Create a new Firebase Cloud Messaging provider. * * @param {string} params.providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.name - Provider name. * @param {object} params.serviceAccountJSON - FCM service account JSON. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} */ createFCMProvider(params: { providerId: string; name: string; serviceAccountJSON?: object; enabled?: boolean; }): Promise; /** * Create a new Firebase Cloud Messaging provider. * * @param {string} providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} name - Provider name. * @param {object} serviceAccountJSON - FCM service account JSON. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createFCMProvider(providerId: string, name: string, serviceAccountJSON?: object, enabled?: boolean): Promise; /** * Update a Firebase Cloud Messaging provider by its unique ID. * * @param {string} params.providerId - Provider ID. * @param {string} params.name - Provider name. * @param {boolean} params.enabled - Set as enabled. * @param {object} params.serviceAccountJSON - FCM service account JSON. * @throws {AppwriteException} * @returns {Promise} * @deprecated This API has been deprecated since 1.8.0. Please use `Messaging.updateFCMProvider` instead. */ updateFcmProvider(params: { providerId: string; name?: string; enabled?: boolean; serviceAccountJSON?: object; }): Promise; /** * Update a Firebase Cloud Messaging provider by its unique ID. * * @param {string} providerId - Provider ID. * @param {string} name - Provider name. * @param {boolean} enabled - Set as enabled. * @param {object} serviceAccountJSON - FCM service account JSON. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateFcmProvider(providerId: string, name?: string, enabled?: boolean, serviceAccountJSON?: object): Promise; /** * Update a Firebase Cloud Messaging provider by its unique ID. * * @param {string} params.providerId - Provider ID. * @param {string} params.name - Provider name. * @param {boolean} params.enabled - Set as enabled. * @param {object} params.serviceAccountJSON - FCM service account JSON. * @throws {AppwriteException} * @returns {Promise} */ updateFCMProvider(params: { providerId: string; name?: string; enabled?: boolean; serviceAccountJSON?: object; }): Promise; /** * Update a Firebase Cloud Messaging provider by its unique ID. * * @param {string} providerId - Provider ID. * @param {string} name - Provider name. * @param {boolean} enabled - Set as enabled. * @param {object} serviceAccountJSON - FCM service account JSON. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateFCMProvider(providerId: string, name?: string, enabled?: boolean, serviceAccountJSON?: object): Promise; /** * Create a new Mailgun provider. * * @param {string} params.providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.name - Provider name. * @param {string} params.apiKey - Mailgun API Key. * @param {string} params.domain - Mailgun Domain. * @param {boolean} params.isEuRegion - Set as EU region. * @param {string} params.fromName - Sender Name. * @param {string} params.fromEmail - Sender email address. * @param {string} params.replyToName - Name set in the reply to field for the mail. Default value is sender name. Reply to name must have reply to email as well. * @param {string} params.replyToEmail - Email set in the reply to field for the mail. Default value is sender email. Reply to email must have reply to name as well. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} */ createMailgunProvider(params: { providerId: string; name: string; apiKey?: string; domain?: string; isEuRegion?: boolean; fromName?: string; fromEmail?: string; replyToName?: string; replyToEmail?: string; enabled?: boolean; }): Promise; /** * Create a new Mailgun provider. * * @param {string} providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} name - Provider name. * @param {string} apiKey - Mailgun API Key. * @param {string} domain - Mailgun Domain. * @param {boolean} isEuRegion - Set as EU region. * @param {string} fromName - Sender Name. * @param {string} fromEmail - Sender email address. * @param {string} replyToName - Name set in the reply to field for the mail. Default value is sender name. Reply to name must have reply to email as well. * @param {string} replyToEmail - Email set in the reply to field for the mail. Default value is sender email. Reply to email must have reply to name as well. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createMailgunProvider(providerId: string, name: string, apiKey?: string, domain?: string, isEuRegion?: boolean, fromName?: string, fromEmail?: string, replyToName?: string, replyToEmail?: string, enabled?: boolean): Promise; /** * Update a Mailgun provider by its unique ID. * * @param {string} params.providerId - Provider ID. * @param {string} params.name - Provider name. * @param {string} params.apiKey - Mailgun API Key. * @param {string} params.domain - Mailgun Domain. * @param {boolean} params.isEuRegion - Set as EU region. * @param {boolean} params.enabled - Set as enabled. * @param {string} params.fromName - Sender Name. * @param {string} params.fromEmail - Sender email address. * @param {string} params.replyToName - Name set in the reply to field for the mail. Default value is sender name. * @param {string} params.replyToEmail - Email set in the reply to field for the mail. Default value is sender email. * @throws {AppwriteException} * @returns {Promise} */ updateMailgunProvider(params: { providerId: string; name?: string; apiKey?: string; domain?: string; isEuRegion?: boolean; enabled?: boolean; fromName?: string; fromEmail?: string; replyToName?: string; replyToEmail?: string; }): Promise; /** * Update a Mailgun provider by its unique ID. * * @param {string} providerId - Provider ID. * @param {string} name - Provider name. * @param {string} apiKey - Mailgun API Key. * @param {string} domain - Mailgun Domain. * @param {boolean} isEuRegion - Set as EU region. * @param {boolean} enabled - Set as enabled. * @param {string} fromName - Sender Name. * @param {string} fromEmail - Sender email address. * @param {string} replyToName - Name set in the reply to field for the mail. Default value is sender name. * @param {string} replyToEmail - Email set in the reply to field for the mail. Default value is sender email. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateMailgunProvider(providerId: string, name?: string, apiKey?: string, domain?: string, isEuRegion?: boolean, enabled?: boolean, fromName?: string, fromEmail?: string, replyToName?: string, replyToEmail?: string): Promise; /** * Create a new MSG91 provider. * * @param {string} params.providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.name - Provider name. * @param {string} params.templateId - Msg91 template ID * @param {string} params.senderId - Msg91 sender ID. * @param {string} params.authKey - Msg91 auth key. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} */ createMsg91Provider(params: { providerId: string; name: string; templateId?: string; senderId?: string; authKey?: string; enabled?: boolean; }): Promise; /** * Create a new MSG91 provider. * * @param {string} providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} name - Provider name. * @param {string} templateId - Msg91 template ID * @param {string} senderId - Msg91 sender ID. * @param {string} authKey - Msg91 auth key. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createMsg91Provider(providerId: string, name: string, templateId?: string, senderId?: string, authKey?: string, enabled?: boolean): Promise; /** * Update a MSG91 provider by its unique ID. * * @param {string} params.providerId - Provider ID. * @param {string} params.name - Provider name. * @param {boolean} params.enabled - Set as enabled. * @param {string} params.templateId - Msg91 template ID. * @param {string} params.senderId - Msg91 sender ID. * @param {string} params.authKey - Msg91 auth key. * @throws {AppwriteException} * @returns {Promise} */ updateMsg91Provider(params: { providerId: string; name?: string; enabled?: boolean; templateId?: string; senderId?: string; authKey?: string; }): Promise; /** * Update a MSG91 provider by its unique ID. * * @param {string} providerId - Provider ID. * @param {string} name - Provider name. * @param {boolean} enabled - Set as enabled. * @param {string} templateId - Msg91 template ID. * @param {string} senderId - Msg91 sender ID. * @param {string} authKey - Msg91 auth key. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateMsg91Provider(providerId: string, name?: string, enabled?: boolean, templateId?: string, senderId?: string, authKey?: string): Promise; /** * Create a new Resend provider. * * @param {string} params.providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.name - Provider name. * @param {string} params.apiKey - Resend API key. * @param {string} params.fromName - Sender Name. * @param {string} params.fromEmail - Sender email address. * @param {string} params.replyToName - Name set in the reply to field for the mail. Default value is sender name. * @param {string} params.replyToEmail - Email set in the reply to field for the mail. Default value is sender email. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} */ createResendProvider(params: { providerId: string; name: string; apiKey?: string; fromName?: string; fromEmail?: string; replyToName?: string; replyToEmail?: string; enabled?: boolean; }): Promise; /** * Create a new Resend provider. * * @param {string} providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} name - Provider name. * @param {string} apiKey - Resend API key. * @param {string} fromName - Sender Name. * @param {string} fromEmail - Sender email address. * @param {string} replyToName - Name set in the reply to field for the mail. Default value is sender name. * @param {string} replyToEmail - Email set in the reply to field for the mail. Default value is sender email. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createResendProvider(providerId: string, name: string, apiKey?: string, fromName?: string, fromEmail?: string, replyToName?: string, replyToEmail?: string, enabled?: boolean): Promise; /** * Update a Resend provider by its unique ID. * * @param {string} params.providerId - Provider ID. * @param {string} params.name - Provider name. * @param {boolean} params.enabled - Set as enabled. * @param {string} params.apiKey - Resend API key. * @param {string} params.fromName - Sender Name. * @param {string} params.fromEmail - Sender email address. * @param {string} params.replyToName - Name set in the Reply To field for the mail. Default value is Sender Name. * @param {string} params.replyToEmail - Email set in the Reply To field for the mail. Default value is Sender Email. * @throws {AppwriteException} * @returns {Promise} */ updateResendProvider(params: { providerId: string; name?: string; enabled?: boolean; apiKey?: string; fromName?: string; fromEmail?: string; replyToName?: string; replyToEmail?: string; }): Promise; /** * Update a Resend provider by its unique ID. * * @param {string} providerId - Provider ID. * @param {string} name - Provider name. * @param {boolean} enabled - Set as enabled. * @param {string} apiKey - Resend API key. * @param {string} fromName - Sender Name. * @param {string} fromEmail - Sender email address. * @param {string} replyToName - Name set in the Reply To field for the mail. Default value is Sender Name. * @param {string} replyToEmail - Email set in the Reply To field for the mail. Default value is Sender Email. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateResendProvider(providerId: string, name?: string, enabled?: boolean, apiKey?: string, fromName?: string, fromEmail?: string, replyToName?: string, replyToEmail?: string): Promise; /** * Create a new Sendgrid provider. * * @param {string} params.providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.name - Provider name. * @param {string} params.apiKey - Sendgrid API key. * @param {string} params.fromName - Sender Name. * @param {string} params.fromEmail - Sender email address. * @param {string} params.replyToName - Name set in the reply to field for the mail. Default value is sender name. * @param {string} params.replyToEmail - Email set in the reply to field for the mail. Default value is sender email. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} */ createSendgridProvider(params: { providerId: string; name: string; apiKey?: string; fromName?: string; fromEmail?: string; replyToName?: string; replyToEmail?: string; enabled?: boolean; }): Promise; /** * Create a new Sendgrid provider. * * @param {string} providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} name - Provider name. * @param {string} apiKey - Sendgrid API key. * @param {string} fromName - Sender Name. * @param {string} fromEmail - Sender email address. * @param {string} replyToName - Name set in the reply to field for the mail. Default value is sender name. * @param {string} replyToEmail - Email set in the reply to field for the mail. Default value is sender email. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createSendgridProvider(providerId: string, name: string, apiKey?: string, fromName?: string, fromEmail?: string, replyToName?: string, replyToEmail?: string, enabled?: boolean): Promise; /** * Update a Sendgrid provider by its unique ID. * * @param {string} params.providerId - Provider ID. * @param {string} params.name - Provider name. * @param {boolean} params.enabled - Set as enabled. * @param {string} params.apiKey - Sendgrid API key. * @param {string} params.fromName - Sender Name. * @param {string} params.fromEmail - Sender email address. * @param {string} params.replyToName - Name set in the Reply To field for the mail. Default value is Sender Name. * @param {string} params.replyToEmail - Email set in the Reply To field for the mail. Default value is Sender Email. * @throws {AppwriteException} * @returns {Promise} */ updateSendgridProvider(params: { providerId: string; name?: string; enabled?: boolean; apiKey?: string; fromName?: string; fromEmail?: string; replyToName?: string; replyToEmail?: string; }): Promise; /** * Update a Sendgrid provider by its unique ID. * * @param {string} providerId - Provider ID. * @param {string} name - Provider name. * @param {boolean} enabled - Set as enabled. * @param {string} apiKey - Sendgrid API key. * @param {string} fromName - Sender Name. * @param {string} fromEmail - Sender email address. * @param {string} replyToName - Name set in the Reply To field for the mail. Default value is Sender Name. * @param {string} replyToEmail - Email set in the Reply To field for the mail. Default value is Sender Email. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateSendgridProvider(providerId: string, name?: string, enabled?: boolean, apiKey?: string, fromName?: string, fromEmail?: string, replyToName?: string, replyToEmail?: string): Promise; /** * Create a new SMTP provider. * * @param {string} params.providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.name - Provider name. * @param {string} params.host - SMTP hosts. Either a single hostname or multiple semicolon-delimited hostnames. You can also specify a different port for each host such as `smtp1.example.com:25;smtp2.example.com`. You can also specify encryption type, for example: `tls://smtp1.example.com:587;ssl://smtp2.example.com:465"`. Hosts will be tried in order. * @param {number} params.port - The default SMTP server port. * @param {string} params.username - Authentication username. * @param {string} params.password - Authentication password. * @param {SmtpEncryption} params.encryption - Encryption type. Can be omitted, 'ssl', or 'tls' * @param {boolean} params.autoTLS - Enable SMTP AutoTLS feature. * @param {string} params.mailer - The value to use for the X-Mailer header. * @param {string} params.fromName - Sender Name. * @param {string} params.fromEmail - Sender email address. * @param {string} params.replyToName - Name set in the reply to field for the mail. Default value is sender name. * @param {string} params.replyToEmail - Email set in the reply to field for the mail. Default value is sender email. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated This API has been deprecated since 1.8.0. Please use `Messaging.createSMTPProvider` instead. */ createSmtpProvider(params: { providerId: string; name: string; host: string; port?: number; username?: string; password?: string; encryption?: SmtpEncryption; autoTLS?: boolean; mailer?: string; fromName?: string; fromEmail?: string; replyToName?: string; replyToEmail?: string; enabled?: boolean; }): Promise; /** * Create a new SMTP provider. * * @param {string} providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} name - Provider name. * @param {string} host - SMTP hosts. Either a single hostname or multiple semicolon-delimited hostnames. You can also specify a different port for each host such as `smtp1.example.com:25;smtp2.example.com`. You can also specify encryption type, for example: `tls://smtp1.example.com:587;ssl://smtp2.example.com:465"`. Hosts will be tried in order. * @param {number} port - The default SMTP server port. * @param {string} username - Authentication username. * @param {string} password - Authentication password. * @param {SmtpEncryption} encryption - Encryption type. Can be omitted, 'ssl', or 'tls' * @param {boolean} autoTLS - Enable SMTP AutoTLS feature. * @param {string} mailer - The value to use for the X-Mailer header. * @param {string} fromName - Sender Name. * @param {string} fromEmail - Sender email address. * @param {string} replyToName - Name set in the reply to field for the mail. Default value is sender name. * @param {string} replyToEmail - Email set in the reply to field for the mail. Default value is sender email. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createSmtpProvider(providerId: string, name: string, host: string, port?: number, username?: string, password?: string, encryption?: SmtpEncryption, autoTLS?: boolean, mailer?: string, fromName?: string, fromEmail?: string, replyToName?: string, replyToEmail?: string, enabled?: boolean): Promise; /** * Create a new SMTP provider. * * @param {string} params.providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.name - Provider name. * @param {string} params.host - SMTP hosts. Either a single hostname or multiple semicolon-delimited hostnames. You can also specify a different port for each host such as `smtp1.example.com:25;smtp2.example.com`. You can also specify encryption type, for example: `tls://smtp1.example.com:587;ssl://smtp2.example.com:465"`. Hosts will be tried in order. * @param {number} params.port - The default SMTP server port. * @param {string} params.username - Authentication username. * @param {string} params.password - Authentication password. * @param {SmtpEncryption} params.encryption - Encryption type. Can be omitted, 'ssl', or 'tls' * @param {boolean} params.autoTLS - Enable SMTP AutoTLS feature. * @param {string} params.mailer - The value to use for the X-Mailer header. * @param {string} params.fromName - Sender Name. * @param {string} params.fromEmail - Sender email address. * @param {string} params.replyToName - Name set in the reply to field for the mail. Default value is sender name. * @param {string} params.replyToEmail - Email set in the reply to field for the mail. Default value is sender email. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} */ createSMTPProvider(params: { providerId: string; name: string; host: string; port?: number; username?: string; password?: string; encryption?: SmtpEncryption; autoTLS?: boolean; mailer?: string; fromName?: string; fromEmail?: string; replyToName?: string; replyToEmail?: string; enabled?: boolean; }): Promise; /** * Create a new SMTP provider. * * @param {string} providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} name - Provider name. * @param {string} host - SMTP hosts. Either a single hostname or multiple semicolon-delimited hostnames. You can also specify a different port for each host such as `smtp1.example.com:25;smtp2.example.com`. You can also specify encryption type, for example: `tls://smtp1.example.com:587;ssl://smtp2.example.com:465"`. Hosts will be tried in order. * @param {number} port - The default SMTP server port. * @param {string} username - Authentication username. * @param {string} password - Authentication password. * @param {SmtpEncryption} encryption - Encryption type. Can be omitted, 'ssl', or 'tls' * @param {boolean} autoTLS - Enable SMTP AutoTLS feature. * @param {string} mailer - The value to use for the X-Mailer header. * @param {string} fromName - Sender Name. * @param {string} fromEmail - Sender email address. * @param {string} replyToName - Name set in the reply to field for the mail. Default value is sender name. * @param {string} replyToEmail - Email set in the reply to field for the mail. Default value is sender email. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createSMTPProvider(providerId: string, name: string, host: string, port?: number, username?: string, password?: string, encryption?: SmtpEncryption, autoTLS?: boolean, mailer?: string, fromName?: string, fromEmail?: string, replyToName?: string, replyToEmail?: string, enabled?: boolean): Promise; /** * Update a SMTP provider by its unique ID. * * @param {string} params.providerId - Provider ID. * @param {string} params.name - Provider name. * @param {string} params.host - SMTP hosts. Either a single hostname or multiple semicolon-delimited hostnames. You can also specify a different port for each host such as `smtp1.example.com:25;smtp2.example.com`. You can also specify encryption type, for example: `tls://smtp1.example.com:587;ssl://smtp2.example.com:465"`. Hosts will be tried in order. * @param {number} params.port - SMTP port. * @param {string} params.username - Authentication username. * @param {string} params.password - Authentication password. * @param {SmtpEncryption} params.encryption - Encryption type. Can be 'ssl' or 'tls' * @param {boolean} params.autoTLS - Enable SMTP AutoTLS feature. * @param {string} params.mailer - The value to use for the X-Mailer header. * @param {string} params.fromName - Sender Name. * @param {string} params.fromEmail - Sender email address. * @param {string} params.replyToName - Name set in the Reply To field for the mail. Default value is Sender Name. * @param {string} params.replyToEmail - Email set in the Reply To field for the mail. Default value is Sender Email. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated This API has been deprecated since 1.8.0. Please use `Messaging.updateSMTPProvider` instead. */ updateSmtpProvider(params: { providerId: string; name?: string; host?: string; port?: number; username?: string; password?: string; encryption?: SmtpEncryption; autoTLS?: boolean; mailer?: string; fromName?: string; fromEmail?: string; replyToName?: string; replyToEmail?: string; enabled?: boolean; }): Promise; /** * Update a SMTP provider by its unique ID. * * @param {string} providerId - Provider ID. * @param {string} name - Provider name. * @param {string} host - SMTP hosts. Either a single hostname or multiple semicolon-delimited hostnames. You can also specify a different port for each host such as `smtp1.example.com:25;smtp2.example.com`. You can also specify encryption type, for example: `tls://smtp1.example.com:587;ssl://smtp2.example.com:465"`. Hosts will be tried in order. * @param {number} port - SMTP port. * @param {string} username - Authentication username. * @param {string} password - Authentication password. * @param {SmtpEncryption} encryption - Encryption type. Can be 'ssl' or 'tls' * @param {boolean} autoTLS - Enable SMTP AutoTLS feature. * @param {string} mailer - The value to use for the X-Mailer header. * @param {string} fromName - Sender Name. * @param {string} fromEmail - Sender email address. * @param {string} replyToName - Name set in the Reply To field for the mail. Default value is Sender Name. * @param {string} replyToEmail - Email set in the Reply To field for the mail. Default value is Sender Email. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateSmtpProvider(providerId: string, name?: string, host?: string, port?: number, username?: string, password?: string, encryption?: SmtpEncryption, autoTLS?: boolean, mailer?: string, fromName?: string, fromEmail?: string, replyToName?: string, replyToEmail?: string, enabled?: boolean): Promise; /** * Update a SMTP provider by its unique ID. * * @param {string} params.providerId - Provider ID. * @param {string} params.name - Provider name. * @param {string} params.host - SMTP hosts. Either a single hostname or multiple semicolon-delimited hostnames. You can also specify a different port for each host such as `smtp1.example.com:25;smtp2.example.com`. You can also specify encryption type, for example: `tls://smtp1.example.com:587;ssl://smtp2.example.com:465"`. Hosts will be tried in order. * @param {number} params.port - SMTP port. * @param {string} params.username - Authentication username. * @param {string} params.password - Authentication password. * @param {SmtpEncryption} params.encryption - Encryption type. Can be 'ssl' or 'tls' * @param {boolean} params.autoTLS - Enable SMTP AutoTLS feature. * @param {string} params.mailer - The value to use for the X-Mailer header. * @param {string} params.fromName - Sender Name. * @param {string} params.fromEmail - Sender email address. * @param {string} params.replyToName - Name set in the Reply To field for the mail. Default value is Sender Name. * @param {string} params.replyToEmail - Email set in the Reply To field for the mail. Default value is Sender Email. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} */ updateSMTPProvider(params: { providerId: string; name?: string; host?: string; port?: number; username?: string; password?: string; encryption?: SmtpEncryption; autoTLS?: boolean; mailer?: string; fromName?: string; fromEmail?: string; replyToName?: string; replyToEmail?: string; enabled?: boolean; }): Promise; /** * Update a SMTP provider by its unique ID. * * @param {string} providerId - Provider ID. * @param {string} name - Provider name. * @param {string} host - SMTP hosts. Either a single hostname or multiple semicolon-delimited hostnames. You can also specify a different port for each host such as `smtp1.example.com:25;smtp2.example.com`. You can also specify encryption type, for example: `tls://smtp1.example.com:587;ssl://smtp2.example.com:465"`. Hosts will be tried in order. * @param {number} port - SMTP port. * @param {string} username - Authentication username. * @param {string} password - Authentication password. * @param {SmtpEncryption} encryption - Encryption type. Can be 'ssl' or 'tls' * @param {boolean} autoTLS - Enable SMTP AutoTLS feature. * @param {string} mailer - The value to use for the X-Mailer header. * @param {string} fromName - Sender Name. * @param {string} fromEmail - Sender email address. * @param {string} replyToName - Name set in the Reply To field for the mail. Default value is Sender Name. * @param {string} replyToEmail - Email set in the Reply To field for the mail. Default value is Sender Email. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateSMTPProvider(providerId: string, name?: string, host?: string, port?: number, username?: string, password?: string, encryption?: SmtpEncryption, autoTLS?: boolean, mailer?: string, fromName?: string, fromEmail?: string, replyToName?: string, replyToEmail?: string, enabled?: boolean): Promise; /** * Create a new Telesign provider. * * @param {string} params.providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.name - Provider name. * @param {string} params.from - Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212. * @param {string} params.customerId - Telesign customer ID. * @param {string} params.apiKey - Telesign API key. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} */ createTelesignProvider(params: { providerId: string; name: string; from?: string; customerId?: string; apiKey?: string; enabled?: boolean; }): Promise; /** * Create a new Telesign provider. * * @param {string} providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} name - Provider name. * @param {string} from - Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212. * @param {string} customerId - Telesign customer ID. * @param {string} apiKey - Telesign API key. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createTelesignProvider(providerId: string, name: string, from?: string, customerId?: string, apiKey?: string, enabled?: boolean): Promise; /** * Update a Telesign provider by its unique ID. * * @param {string} params.providerId - Provider ID. * @param {string} params.name - Provider name. * @param {boolean} params.enabled - Set as enabled. * @param {string} params.customerId - Telesign customer ID. * @param {string} params.apiKey - Telesign API key. * @param {string} params.from - Sender number. * @throws {AppwriteException} * @returns {Promise} */ updateTelesignProvider(params: { providerId: string; name?: string; enabled?: boolean; customerId?: string; apiKey?: string; from?: string; }): Promise; /** * Update a Telesign provider by its unique ID. * * @param {string} providerId - Provider ID. * @param {string} name - Provider name. * @param {boolean} enabled - Set as enabled. * @param {string} customerId - Telesign customer ID. * @param {string} apiKey - Telesign API key. * @param {string} from - Sender number. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateTelesignProvider(providerId: string, name?: string, enabled?: boolean, customerId?: string, apiKey?: string, from?: string): Promise; /** * Create a new Textmagic provider. * * @param {string} params.providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.name - Provider name. * @param {string} params.from - Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212. * @param {string} params.username - Textmagic username. * @param {string} params.apiKey - Textmagic apiKey. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} */ createTextmagicProvider(params: { providerId: string; name: string; from?: string; username?: string; apiKey?: string; enabled?: boolean; }): Promise; /** * Create a new Textmagic provider. * * @param {string} providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} name - Provider name. * @param {string} from - Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212. * @param {string} username - Textmagic username. * @param {string} apiKey - Textmagic apiKey. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createTextmagicProvider(providerId: string, name: string, from?: string, username?: string, apiKey?: string, enabled?: boolean): Promise; /** * Update a Textmagic provider by its unique ID. * * @param {string} params.providerId - Provider ID. * @param {string} params.name - Provider name. * @param {boolean} params.enabled - Set as enabled. * @param {string} params.username - Textmagic username. * @param {string} params.apiKey - Textmagic apiKey. * @param {string} params.from - Sender number. * @throws {AppwriteException} * @returns {Promise} */ updateTextmagicProvider(params: { providerId: string; name?: string; enabled?: boolean; username?: string; apiKey?: string; from?: string; }): Promise; /** * Update a Textmagic provider by its unique ID. * * @param {string} providerId - Provider ID. * @param {string} name - Provider name. * @param {boolean} enabled - Set as enabled. * @param {string} username - Textmagic username. * @param {string} apiKey - Textmagic apiKey. * @param {string} from - Sender number. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateTextmagicProvider(providerId: string, name?: string, enabled?: boolean, username?: string, apiKey?: string, from?: string): Promise; /** * Create a new Twilio provider. * * @param {string} params.providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.name - Provider name. * @param {string} params.from - Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212. * @param {string} params.accountSid - Twilio account secret ID. * @param {string} params.authToken - Twilio authentication token. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} */ createTwilioProvider(params: { providerId: string; name: string; from?: string; accountSid?: string; authToken?: string; enabled?: boolean; }): Promise; /** * Create a new Twilio provider. * * @param {string} providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} name - Provider name. * @param {string} from - Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212. * @param {string} accountSid - Twilio account secret ID. * @param {string} authToken - Twilio authentication token. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createTwilioProvider(providerId: string, name: string, from?: string, accountSid?: string, authToken?: string, enabled?: boolean): Promise; /** * Update a Twilio provider by its unique ID. * * @param {string} params.providerId - Provider ID. * @param {string} params.name - Provider name. * @param {boolean} params.enabled - Set as enabled. * @param {string} params.accountSid - Twilio account secret ID. * @param {string} params.authToken - Twilio authentication token. * @param {string} params.from - Sender number. * @throws {AppwriteException} * @returns {Promise} */ updateTwilioProvider(params: { providerId: string; name?: string; enabled?: boolean; accountSid?: string; authToken?: string; from?: string; }): Promise; /** * Update a Twilio provider by its unique ID. * * @param {string} providerId - Provider ID. * @param {string} name - Provider name. * @param {boolean} enabled - Set as enabled. * @param {string} accountSid - Twilio account secret ID. * @param {string} authToken - Twilio authentication token. * @param {string} from - Sender number. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateTwilioProvider(providerId: string, name?: string, enabled?: boolean, accountSid?: string, authToken?: string, from?: string): Promise; /** * Create a new Vonage provider. * * @param {string} params.providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} params.name - Provider name. * @param {string} params.from - Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212. * @param {string} params.apiKey - Vonage API key. * @param {string} params.apiSecret - Vonage API secret. * @param {boolean} params.enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} */ createVonageProvider(params: { providerId: string; name: string; from?: string; apiKey?: string; apiSecret?: string; enabled?: boolean; }): Promise; /** * Create a new Vonage provider. * * @param {string} providerId - Provider ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars. * @param {string} name - Provider name. * @param {string} from - Sender Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212. * @param {string} apiKey - Vonage API key. * @param {string} apiSecret - Vonage API secret. * @param {boolean} enabled - Set as enabled. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createVonageProvider(providerId: string, name: string, from?: string, apiKey?: string, apiSecret?: string, enabled?: boolean): Promise; /** * Update a Vonage provider by its unique ID. * * @param {string} params.providerId - Provider ID. * @param {string} params.name - Provider name. * @param {boolean} params.enabled - Set as enabled. * @param {string} params.apiKey - Vonage API key. * @param {string} params.apiSecret - Vonage API secret. * @param {string} params.from - Sender number. * @throws {AppwriteException} * @returns {Promise} */ updateVonageProvider(params: { providerId: string; name?: string; enabled?: boolean; apiKey?: string; apiSecret?: string; from?: string; }): Promise; /** * Update a Vonage provider by its unique ID. * * @param {string} providerId - Provider ID. * @param {string} name - Provider name. * @param {boolean} enabled - Set as enabled. * @param {string} apiKey - Vonage API key. * @param {string} apiSecret - Vonage API secret. * @param {string} from - Sender number. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateVonageProvider(providerId: string, name?: string, enabled?: boolean, apiKey?: string, apiSecret?: string, from?: string): Promise; /** * Get a provider by its unique ID. * * * @param {string} params.providerId - Provider ID. * @throws {AppwriteException} * @returns {Promise} */ getProvider(params: { providerId: string; }): Promise; /** * Get a provider by its unique ID. * * * @param {string} providerId - Provider ID. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ getProvider(providerId: string): Promise; /** * Delete a provider by its unique ID. * * @param {string} params.providerId - Provider ID. * @throws {AppwriteException} * @returns {Promise<{}>} */ deleteProvider(params: { providerId: string; }): Promise<{}>; /** * Delete a provider by its unique ID. * * @param {string} providerId - Provider ID. * @throws {AppwriteException} * @returns {Promise<{}>} * @deprecated Use the object parameter style method for a better developer experience. */ deleteProvider(providerId: string): Promise<{}>; /** * Get the provider activity logs listed by its unique ID. * * @param {string} params.providerId - Provider ID. * @param {string[]} params.queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Only supported methods are limit and offset * @param {boolean} params.total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} */ listProviderLogs(params: { providerId: string; queries?: string[]; total?: boolean; }): Promise; /** * Get the provider activity logs listed by its unique ID. * * @param {string} providerId - Provider ID. * @param {string[]} queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Only supported methods are limit and offset * @param {boolean} total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ listProviderLogs(providerId: string, queries?: string[], total?: boolean): Promise; /** * Get the subscriber activity logs listed by its unique ID. * * @param {string} params.subscriberId - Subscriber ID. * @param {string[]} params.queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Only supported methods are limit and offset * @param {boolean} params.total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} */ listSubscriberLogs(params: { subscriberId: string; queries?: string[]; total?: boolean; }): Promise; /** * Get the subscriber activity logs listed by its unique ID. * * @param {string} subscriberId - Subscriber ID. * @param {string[]} queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Only supported methods are limit and offset * @param {boolean} total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ listSubscriberLogs(subscriberId: string, queries?: string[], total?: boolean): Promise; /** * Get a list of all topics from the current Appwrite project. * * @param {string[]} params.queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: name, description, emailTotal, smsTotal, pushTotal * @param {string} params.search - Search term to filter your list results. Max length: 256 chars. * @param {boolean} params.total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} */ listTopics(params?: { queries?: string[]; search?: string; total?: boolean; }): Promise; /** * Get a list of all topics from the current Appwrite project. * * @param {string[]} queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: name, description, emailTotal, smsTotal, pushTotal * @param {string} search - Search term to filter your list results. Max length: 256 chars. * @param {boolean} total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ listTopics(queries?: string[], search?: string, total?: boolean): Promise; /** * Create a new topic. * * @param {string} params.topicId - Topic ID. Choose a custom Topic ID or a new Topic ID. * @param {string} params.name - Topic Name. * @param {string[]} params.subscribe - An array of role strings with subscribe permission. By default all users are granted with any subscribe permission. [learn more about roles](https://appwrite.io/docs/permissions#permission-roles). Maximum of 100 roles are allowed, each 64 characters long. * @throws {AppwriteException} * @returns {Promise} */ createTopic(params: { topicId: string; name: string; subscribe?: string[]; }): Promise; /** * Create a new topic. * * @param {string} topicId - Topic ID. Choose a custom Topic ID or a new Topic ID. * @param {string} name - Topic Name. * @param {string[]} subscribe - An array of role strings with subscribe permission. By default all users are granted with any subscribe permission. [learn more about roles](https://appwrite.io/docs/permissions#permission-roles). Maximum of 100 roles are allowed, each 64 characters long. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createTopic(topicId: string, name: string, subscribe?: string[]): Promise; /** * Get a topic by its unique ID. * * * @param {string} params.topicId - Topic ID. * @throws {AppwriteException} * @returns {Promise} */ getTopic(params: { topicId: string; }): Promise; /** * Get a topic by its unique ID. * * * @param {string} topicId - Topic ID. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ getTopic(topicId: string): Promise; /** * Update a topic by its unique ID. * * * @param {string} params.topicId - Topic ID. * @param {string} params.name - Topic Name. * @param {string[]} params.subscribe - An array of role strings with subscribe permission. By default all users are granted with any subscribe permission. [learn more about roles](https://appwrite.io/docs/permissions#permission-roles). Maximum of 100 roles are allowed, each 64 characters long. * @throws {AppwriteException} * @returns {Promise} */ updateTopic(params: { topicId: string; name?: string; subscribe?: string[]; }): Promise; /** * Update a topic by its unique ID. * * * @param {string} topicId - Topic ID. * @param {string} name - Topic Name. * @param {string[]} subscribe - An array of role strings with subscribe permission. By default all users are granted with any subscribe permission. [learn more about roles](https://appwrite.io/docs/permissions#permission-roles). Maximum of 100 roles are allowed, each 64 characters long. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ updateTopic(topicId: string, name?: string, subscribe?: string[]): Promise; /** * Delete a topic by its unique ID. * * @param {string} params.topicId - Topic ID. * @throws {AppwriteException} * @returns {Promise<{}>} */ deleteTopic(params: { topicId: string; }): Promise<{}>; /** * Delete a topic by its unique ID. * * @param {string} topicId - Topic ID. * @throws {AppwriteException} * @returns {Promise<{}>} * @deprecated Use the object parameter style method for a better developer experience. */ deleteTopic(topicId: string): Promise<{}>; /** * Get the topic activity logs listed by its unique ID. * * @param {string} params.topicId - Topic ID. * @param {string[]} params.queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Only supported methods are limit and offset * @param {boolean} params.total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} */ listTopicLogs(params: { topicId: string; queries?: string[]; total?: boolean; }): Promise; /** * Get the topic activity logs listed by its unique ID. * * @param {string} topicId - Topic ID. * @param {string[]} queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Only supported methods are limit and offset * @param {boolean} total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ listTopicLogs(topicId: string, queries?: string[], total?: boolean): Promise; /** * Get a list of all subscribers from the current Appwrite project. * * @param {string} params.topicId - Topic ID. The topic ID subscribed to. * @param {string[]} params.queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: name, provider, type, enabled * @param {string} params.search - Search term to filter your list results. Max length: 256 chars. * @param {boolean} params.total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} */ listSubscribers(params: { topicId: string; queries?: string[]; search?: string; total?: boolean; }): Promise; /** * Get a list of all subscribers from the current Appwrite project. * * @param {string} topicId - Topic ID. The topic ID subscribed to. * @param {string[]} queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: name, provider, type, enabled * @param {string} search - Search term to filter your list results. Max length: 256 chars. * @param {boolean} total - When set to false, the total count returned will be 0 and will not be calculated. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ listSubscribers(topicId: string, queries?: string[], search?: string, total?: boolean): Promise; /** * Create a new subscriber. * * @param {string} params.topicId - Topic ID. The topic ID to subscribe to. * @param {string} params.subscriberId - Subscriber ID. Choose a custom Subscriber ID or a new Subscriber ID. * @param {string} params.targetId - Target ID. The target ID to link to the specified Topic ID. * @throws {AppwriteException} * @returns {Promise} */ createSubscriber(params: { topicId: string; subscriberId: string; targetId: string; }): Promise; /** * Create a new subscriber. * * @param {string} topicId - Topic ID. The topic ID to subscribe to. * @param {string} subscriberId - Subscriber ID. Choose a custom Subscriber ID or a new Subscriber ID. * @param {string} targetId - Target ID. The target ID to link to the specified Topic ID. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ createSubscriber(topicId: string, subscriberId: string, targetId: string): Promise; /** * Get a subscriber by its unique ID. * * * @param {string} params.topicId - Topic ID. The topic ID subscribed to. * @param {string} params.subscriberId - Subscriber ID. * @throws {AppwriteException} * @returns {Promise} */ getSubscriber(params: { topicId: string; subscriberId: string; }): Promise; /** * Get a subscriber by its unique ID. * * * @param {string} topicId - Topic ID. The topic ID subscribed to. * @param {string} subscriberId - Subscriber ID. * @throws {AppwriteException} * @returns {Promise} * @deprecated Use the object parameter style method for a better developer experience. */ getSubscriber(topicId: string, subscriberId: string): Promise; /** * Delete a subscriber by its unique ID. * * @param {string} params.topicId - Topic ID. The topic ID subscribed to. * @param {string} params.subscriberId - Subscriber ID. * @throws {AppwriteException} * @returns {Promise<{}>} */ deleteSubscriber(params: { topicId: string; subscriberId: string; }): Promise<{}>; /** * Delete a subscriber by its unique ID. * * @param {string} topicId - Topic ID. The topic ID subscribed to. * @param {string} subscriberId - Subscriber ID. * @throws {AppwriteException} * @returns {Promise<{}>} * @deprecated Use the object parameter style method for a better developer experience. */ deleteSubscriber(topicId: string, subscriberId: string): Promise<{}>; } export { Messaging };