@asposecloud/aspose-email-cloud
Version:
Aspose.Email Cloud Node.js SDK
176 lines (172 loc) • 5.45 kB
JavaScript
"use strict";
/*
* MIT License
* Copyright (c) 2018-2020 Aspose Pty Ltd
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.CalendarReminderBuilder = exports.CalendarReminder = void 0;
/**
* Provides a grouping of component properties that define an alarm.
*/
class CalendarReminder {
/**
* Provides a grouping of component properties that define an alarm.
* @param action Defines the action to be invoked when an alarm is triggered. Enum, available values: Audio, Display, Email, Procedure, None
* @param attachments Collection of Reminder Attachments. Could be an absolute URI or Base64 string representation of attachment content
* @param attendees Contains collection of ReminderAttendee objects.
* @param description Provides a more complete description of the alarm.
* @param duration Specifies the delay period in ticks, after which the alarm will repeat.
* @param repeat Defines the number of time the alarm should be repeated, after the initial trigger.
* @param summary Defines a short summary or subject for the alarm.
* @param trigger Specifies when an alarm will trigger.
*/
constructor(action, attachments, attendees, description, duration, repeat, summary, trigger) {
this.action = action;
this.attachments = attachments;
this.attendees = attendees;
this.description = description;
this.duration = duration;
this.repeat = repeat;
this.summary = summary;
this.trigger = trigger;
}
/**
* Returns attribute type map
*/
static getAttributeTypeMap() {
return CalendarReminder.attributeTypeMap;
}
}
exports.CalendarReminder = CalendarReminder;
/**
* Attribute type map
*/
CalendarReminder.attributeTypeMap = [
{
name: "action",
baseName: "action",
type: "string",
},
{
name: "attachments",
baseName: "attachments",
type: "Array<string>",
},
{
name: "attendees",
baseName: "attendees",
type: "Array<ReminderAttendee>",
},
{
name: "description",
baseName: "description",
type: "string",
},
{
name: "duration",
baseName: "duration",
type: "number",
},
{
name: "repeat",
baseName: "repeat",
type: "number",
},
{
name: "summary",
baseName: "summary",
type: "string",
},
{
name: "trigger",
baseName: "trigger",
type: "ReminderTrigger",
}
];
/**
* CalendarReminder model builder
*/
class CalendarReminderBuilder {
constructor(model) {
this.model = model;
}
/**
* Build model.
*/
build() {
return this.model;
}
/**
* Defines the action to be invoked when an alarm is triggered. Enum, available values: Audio, Display, Email, Procedure, None
*/
action(action) {
this.model.action = action;
return this;
}
/**
* Collection of Reminder Attachments. Could be an absolute URI or Base64 string representation of attachment content
*/
attachments(attachments) {
this.model.attachments = attachments;
return this;
}
/**
* Contains collection of ReminderAttendee objects.
*/
attendees(attendees) {
this.model.attendees = attendees;
return this;
}
/**
* Provides a more complete description of the alarm.
*/
description(description) {
this.model.description = description;
return this;
}
/**
* Specifies the delay period in ticks, after which the alarm will repeat.
*/
duration(duration) {
this.model.duration = duration;
return this;
}
/**
* Defines the number of time the alarm should be repeated, after the initial trigger.
*/
repeat(repeat) {
this.model.repeat = repeat;
return this;
}
/**
* Defines a short summary or subject for the alarm.
*/
summary(summary) {
this.model.summary = summary;
return this;
}
/**
* Specifies when an alarm will trigger.
*/
trigger(trigger) {
this.model.trigger = trigger;
return this;
}
}
exports.CalendarReminderBuilder = CalendarReminderBuilder;
//# sourceMappingURL=calendar-reminder.js.map