From df207da292a73fe824132c9bfad06359705160c2 Mon Sep 17 00:00:00 2001 From: Elizabeth Samuel Date: Mon, 28 Jan 2019 16:26:28 -0800 Subject: [PATCH] Add changes to office-js-preview --- types/office-js-preview/index.d.ts | 276 +++++++++++++++++++++++++++++ 1 file changed, 276 insertions(+) diff --git a/types/office-js-preview/index.d.ts b/types/office-js-preview/index.d.ts index 75e9ed910f..e26ab7e8a0 100644 --- a/types/office-js-preview/index.d.ts +++ b/types/office-js-preview/index.d.ts @@ -7713,6 +7713,31 @@ declare namespace Office { */ Appointment = "appointment" } + /** + * Specifies an appointment's location type. + * + * [Api set: Mailbox Preview] + * + * @remarks + * + * + * + * + * + *
{@link https://docs.microsoft.com/outlook/add-ins/#extension-points | Applicable Outlook mode}Compose or read
+ * + * @beta + */ + enum LocationType { + /** + * A custom location. + */ + Custom = "custom", + /** + * A conference room or similar resource. + */ + Room = "room" + } /** * Specifies the month. * @@ -9367,6 +9392,167 @@ declare namespace Office { */ emailAddress: string; } + /** + * Represents the set of locations on an appointment. + * + * [Api set: Mailbox Preview] + * + * @remarks + * + * + * + * + * + * + * + * + * + *
{@link https://docs.microsoft.com/outlook/add-ins/understanding-outlook-add-in-permissions | Minimum permission level}ReadItem
{@link https://docs.microsoft.com/outlook/add-ins/#extension-points | Applicable Outlook mode}Compose or read
+ * + * @beta + */ + interface EnhancedLocation { + /** + * Adds to the set of locations associated with the appointment. + * + * @remarks + * + * + * + * + * + * + * + * + * + *
{@link https://docs.microsoft.com/outlook/add-ins/understanding-outlook-add-in-permissions | Minimum permission level}ReadWriteItem
{@link https://docs.microsoft.com/outlook/add-ins/#extension-points | Applicable Outlook mode}Compose
+ * + * In addition to this signature, this method also has the following signatures: + * + * `addAsync(locationIdentifiers: LocationIdentifier[], callback?: (result: Office.AsyncResultStatus) => void): void;` + * + * @param locationIdentifiers The locations to be added to the current list of locations. + * @param options Optional. An object literal that contains one or more of the following properties. + * asyncContext: Developers can provide any object they wish to access in the callback method. + * @param callback Optional. When the method completes, the function passed in the callback parameter is called with a single parameter, + * asyncResult, which is an Office.AsyncResult object. Check the `status` property of asyncResult to determine if the call succeeded. + */ + addAsync(locationIdentifiers: LocationIdentifier[], options?: Office.AsyncContextOptions, callback?: (result: Office.AsyncResultStatus) => void): void; + /** + * Adds to the set of locations associated with the appointment. + * + * @remarks + * + * + * + * + * + * + * + * + * + *
{@link https://docs.microsoft.com/outlook/add-ins/understanding-outlook-add-in-permissions | Minimum permission level}ReadWriteItem
{@link https://docs.microsoft.com/outlook/add-ins/#extension-points | Applicable Outlook mode}Compose
+ * + * @param locationIdentifiers The locations to be added to the current list of locations. + * @param callback Optional. When the method completes, the function passed in the callback parameter is called with a single parameter, + * asyncResult, which is an Office.AsyncResult object. Check the `status` property of asyncResult to determine if the call succeeded. + */ + addAsync(locationIdentifiers: LocationIdentifier[], callback?: (result: Office.AsyncResultStatus) => void): void; + /** + * Gets the set of locations associated with the appointment. + * + * @remarks + * + * + * + * + * + * + * + * + * + *
{@link https://docs.microsoft.com/outlook/add-ins/understanding-outlook-add-in-permissions | Minimum permission level}ReadItem
{@link https://docs.microsoft.com/outlook/add-ins/#extension-points | Applicable Outlook mode}Compose or read
+ * + * In addition to this signature, this method also has the following signatures: + * + * `getAsync(callback?: (result: Office.AsyncResult) => void): void;` + * + * @param options Optional. An object literal that contains one or more of the following properties. + * asyncContext: Developers can provide any object they wish to access in the callback method. + * @param callback Optional. When the method completes, the function passed in the callback parameter is called with a single parameter, + * asyncResult, which is an Office.AsyncResult object. + */ + getAsync(options?: Office.AsyncContextOptions, callback?: (result: Office.AsyncResult) => void): void; + /** + * Gets the set of locations associated with the appointment. + * + * @remarks + * + * + * + * + * + * + * + * + * + *
{@link https://docs.microsoft.com/outlook/add-ins/understanding-outlook-add-in-permissions | Minimum permission level}ReadItem
{@link https://docs.microsoft.com/outlook/add-ins/#extension-points | Applicable Outlook mode}Compose or read
+ * + * @param callback Optional. When the method completes, the function passed in the callback parameter is called with a single parameter, + * asyncResult, which is an Office.AsyncResult object. + */ + getAsync(callback?: (result: Office.AsyncResult) => void): void; + /** + * Removes the set of locations associated with the appointment. + * + * If there are multiple locations with the same name, all matching locations will be removed even if only one was specified in locationIdentifiers. + * + * @remarks + * + * + * + * + * + * + * + * + * + *
{@link https://docs.microsoft.com/outlook/add-ins/understanding-outlook-add-in-permissions | Minimum permission level}ReadWriteItem
{@link https://docs.microsoft.com/outlook/add-ins/#extension-points | Applicable Outlook mode}Compose
+ * + * In addition to this signature, this method also has the following signatures: + * + * `removeAsync(locationIdentifiers: LocationIdentifier[], callback?: (result: Office.AsyncResultStatus) => void): void;` + * + * @param locationIdentifiers The locations to be removed from the current list of locations. + * @param options Optional. An object literal that contains one or more of the following properties. + * asyncContext: Developers can provide any object they wish to access in the callback method. + * @param callback Optional. When the method completes, the function passed in the callback parameter is called with a single parameter, + * asyncResult, which is an Office.AsyncResult object. Check the `status` property of asyncResult to determine if the call succeeded. + */ + removeAsync(locationIdentifiers: LocationIdentifier[], options?: Office.AsyncContextOptions, callback?: (result: Office.AsyncResultStatus) => void): void; + /** + * Removes the set of locations associated with the appointment. + * + * If there are multiple locations with the same name, all matching locations will be removed even if only one was specified in locationIdentifiers. + * + * @remarks + * + * + * + * + * + * + * + * + * + *
{@link https://docs.microsoft.com/outlook/add-ins/understanding-outlook-add-in-permissions | Minimum permission level}ReadWriteItem
{@link https://docs.microsoft.com/outlook/add-ins/#extension-points | Applicable Outlook mode}Compose
+ * + * @param locationIdentifiers The locations to be removed from the current list of locations. + * @param callback Optional. When the method completes, the function passed in the callback parameter is called with a single parameter, + * asyncResult, which is an Office.AsyncResult object. Check the `status` property of asyncResult to determine if the call succeeded. + */ + removeAsync(locationIdentifiers: LocationIdentifier[], callback?: (result: Office.AsyncResultStatus) => void): void; + } /** * Represents a collection of entities found in an email message or appointment. Read mode only. * @@ -9632,6 +9818,50 @@ declare namespace Office { setAsync(headers: Object, callback?: (result: Office.AsyncResult) => void): void; } + /** + * Represents a location. Read only. + * + * [Api set: Mailbox Preview] + * + * @beta + */ + export interface LocationDetails { + /** + * The LocationIdentifier of the location. + */ + locationIdentifier: LocationIdentifier; + /** + * The location's display name. + */ + displayName: string; + /** + * The email address associated with the location. + */ + emailAddress: string; + } + + /** + * Represents the id of a location. + * + * [Api set: Mailbox Preview] + * + * @beta + */ + interface LocationIdentifier { + /** + * The location's unique id. + * + * For **Room** type, it's the room's email address. + * + * For **Custom** type, it's the displayName. + */ + id: string; + /** + * The location's type. + */ + type: MailboxEnums.LocationType; + } + /** * Represents the appointment organizer, even if an alias or a delegate was used to create the appointment. * This object provides a method to get the organizer value of an appointment in an Outlook add-in. @@ -9733,6 +9963,28 @@ declare namespace Office { * {@link https://docs.microsoft.com/outlook/add-ins/#extension-points | Applicable Outlook mode}Appointment Organizer */ end: Time; + /** + * Gets or sets the locations of the appointment. The `enhancedLocation` property returns an {@link EnhancedLocation} object that + * provides methods to get, remove, or add locations on an item. + * + * [Api set: Mailbox Preview] + * + * @remarks + * + * + * + * + * + * + * + * + * + * + *
{@link https://docs.microsoft.com/outlook/add-ins/understanding-outlook-add-in-permissions | Minimum permission level}ReadItem
{@link https://docs.microsoft.com/outlook/add-ins/#extension-points | Applicable Outlook mode}Appointment Organizer
+ * + * @beta + */ + enhancedLocation: EnhancedLocation; /** * Gets the type of item that an instance represents. * @@ -10820,6 +11072,30 @@ declare namespace Office { * {@link https://docs.microsoft.com/outlook/add-ins/#extension-points | Applicable Outlook mode}Appointment Attendee */ end: Date; + /** + * Gets the locations of an appointment. + * + * The enhancedLocation property returns an {@link EnhancedLocation} object that allows you to get the set of locations (each represented by + * a {@link LocationDetails} object) associated with the appointment. + * + * [Api set: Mailbox Preview] + * + * @remarks + * + * + * + * + * + * + * + * + * + * + *
{@link https://docs.microsoft.com/outlook/add-ins/understanding-outlook-add-in-permissions | Minimum permission level}ReadItem
{@link https://docs.microsoft.com/outlook/add-ins/#extension-points | Applicable Outlook mode}Appointment Attendee
+ * + * @beta + */ + enhancedLocation: EnhancedLocation; /** * Gets the Exchange Web Services item class of the selected item. *