/* * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is * regenerated. */ import * as msRest from "@azure/ms-rest-js"; import * as Models from "../models"; import * as Mappers from "../models/optionsEmailMappers"; import * as Parameters from "../models/parameters"; import { Office365ConnectorContext } from "../office365ConnectorContext"; /** Class representing a OptionsEmail. */ export class OptionsEmail { private readonly client: Office365ConnectorContext; /** * Create a OptionsEmail. * @param {Office365ConnectorContext} client Reference to the service client. */ constructor(client: Office365ConnectorContext) { this.client = client; } /** * This operation sends an approval email and waits for a response from the recipient. Please refer * to the following link regarding the support of actionable messages in different mail clients: * https://docs.microsoft.com/outlook/actionable-messages/#outlook-version-requirements-for-actionable-messages. * @summary Send approval email * @param approvalEmailSubscription Subscription request for approval email. * @param [options] The optional parameters * @returns Promise */ sendApprovalMail(approvalEmailSubscription: Models.ApprovalEmailSubscription, options?: msRest.RequestOptionsBase): Promise; /** * @param approvalEmailSubscription Subscription request for approval email. * @param callback The callback */ sendApprovalMail(approvalEmailSubscription: Models.ApprovalEmailSubscription, callback: msRest.ServiceCallback): void; /** * @param approvalEmailSubscription Subscription request for approval email. * @param options The optional parameters * @param callback The callback */ sendApprovalMail(approvalEmailSubscription: Models.ApprovalEmailSubscription, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; sendApprovalMail(approvalEmailSubscription: Models.ApprovalEmailSubscription, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { approvalEmailSubscription, options }, sendApprovalMailOperationSpec, callback) as Promise; } /** * This operation sends an email with multiple options and waits for the recipient to respond back * with one of the options. Please refer to the following link regarding the support of actionable * messages in different mail clients: * https://docs.microsoft.com/outlook/actionable-messages/#outlook-version-requirements-for-actionable-messages. * @summary Send email with options * @param optionsEmailSubscription Subscription request for options email. * @param [options] The optional parameters * @returns Promise */ sendMailWithOptions(optionsEmailSubscription: Models.OptionsEmailSubscription, options?: msRest.RequestOptionsBase): Promise; /** * @param optionsEmailSubscription Subscription request for options email. * @param callback The callback */ sendMailWithOptions(optionsEmailSubscription: Models.OptionsEmailSubscription, callback: msRest.ServiceCallback): void; /** * @param optionsEmailSubscription Subscription request for options email. * @param options The optional parameters * @param callback The callback */ sendMailWithOptions(optionsEmailSubscription: Models.OptionsEmailSubscription, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; sendMailWithOptions(optionsEmailSubscription: Models.OptionsEmailSubscription, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { optionsEmailSubscription, options }, sendMailWithOptionsOperationSpec, callback) as Promise; } } // Operation Specifications const serializer = new msRest.Serializer(Mappers); const sendApprovalMailOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "apim/office365/{connectionId}/approvalmail/$subscriptions", urlParameters: [ Parameters.connectionId ], requestBody: { parameterPath: "approvalEmailSubscription", mapper: { ...Mappers.ApprovalEmailSubscription, required: true } }, responses: { 201: { bodyMapper: Mappers.SubscriptionResponse }, 400: {}, 401: {}, 403: {}, 500: {}, default: {} }, serializer }; const sendMailWithOptionsOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "apim/office365/{connectionId}/mailwithoptions/$subscriptions", urlParameters: [ Parameters.connectionId ], requestBody: { parameterPath: "optionsEmailSubscription", mapper: { ...Mappers.OptionsEmailSubscription, required: true } }, responses: { 201: { bodyMapper: Mappers.SubscriptionResponse }, 400: {}, 401: {}, 403: {}, 500: {}, default: {} }, serializer };