@microsoft/teams-js 2.30.0 → 2.31.0-beta.0
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/esm/_virtual/__polyfill-node.os.js +1 -0
- package/dist/esm/_virtual/_polyfill-node.os.js +1 -0
- package/dist/esm/node_modules/.pnpm/debug@4.3.5/node_modules/debug/src/node.js +1 -1
- package/dist/esm/node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js +1 -0
- package/dist/esm/node_modules/.pnpm/supports-color@7.2.0/node_modules/supports-color/index.js +1 -0
- package/dist/esm/packages/teams-js/dts/index.d.ts +2 -0
- package/dist/esm/packages/teams-js/dts/internal/VideoFrameTypes.d.ts +78 -0
- package/dist/esm/packages/teams-js/dts/internal/appHelpers.d.ts +8 -0
- package/dist/esm/packages/teams-js/dts/internal/appIdValidation.d.ts +16 -0
- package/dist/esm/packages/teams-js/dts/internal/communication.d.ts +162 -0
- package/dist/esm/packages/teams-js/dts/internal/constants.d.ts +146 -0
- package/dist/esm/packages/teams-js/dts/internal/deepLinkConstants.d.ts +26 -0
- package/dist/esm/packages/teams-js/dts/internal/deepLinkUtilities.d.ts +4 -0
- package/dist/esm/packages/teams-js/dts/internal/emailAddressValidation.d.ts +1 -0
- package/dist/esm/packages/teams-js/dts/internal/globalVars.d.ts +12 -0
- package/dist/esm/packages/teams-js/dts/internal/handlers.d.ts +80 -0
- package/dist/esm/packages/teams-js/dts/internal/interfaces.d.ts +47 -0
- package/dist/esm/packages/teams-js/dts/internal/internalAPIs.d.ts +61 -0
- package/dist/esm/packages/teams-js/dts/internal/marketplaceUtils.d.ts +94 -0
- package/dist/esm/packages/teams-js/dts/internal/mediaUtil.d.ts +95 -0
- package/dist/esm/packages/teams-js/dts/internal/messageObjects.d.ts +73 -0
- package/dist/esm/packages/teams-js/dts/internal/nestedAppAuthUtils.d.ts +105 -0
- package/dist/esm/packages/teams-js/dts/internal/profileUtil.d.ts +11 -0
- package/dist/esm/packages/teams-js/dts/internal/responseHandler.d.ts +30 -0
- package/dist/esm/packages/teams-js/dts/internal/telemetry.d.ts +344 -0
- package/dist/esm/packages/teams-js/dts/internal/typeCheckUtilities.d.ts +1 -0
- package/dist/esm/packages/teams-js/dts/internal/utils.d.ts +200 -0
- package/dist/esm/packages/teams-js/dts/internal/uuidObject.d.ts +11 -0
- package/dist/esm/packages/teams-js/dts/internal/validOrigins.d.ts +6 -0
- package/dist/esm/packages/teams-js/dts/internal/videoEffectsUtils.d.ts +31 -0
- package/dist/esm/packages/teams-js/dts/internal/videoFrameTick.d.ts +10 -0
- package/dist/esm/packages/teams-js/dts/internal/videoPerformanceMonitor.d.ts +54 -0
- package/dist/esm/packages/teams-js/dts/internal/videoPerformanceStatistics.d.ts +49 -0
- package/dist/esm/packages/teams-js/dts/private/appEntity.d.ts +89 -0
- package/dist/esm/packages/teams-js/dts/private/constants.d.ts +9 -0
- package/dist/esm/packages/teams-js/dts/private/conversations.d.ts +152 -0
- package/dist/esm/packages/teams-js/dts/private/copilot.d.ts +39 -0
- package/dist/esm/packages/teams-js/dts/private/externalAppAuthentication.d.ts +378 -0
- package/dist/esm/packages/teams-js/dts/private/externalAppAuthenticationForCEA.d.ts +75 -0
- package/dist/esm/packages/teams-js/dts/private/externalAppCardActions.d.ts +112 -0
- package/dist/esm/packages/teams-js/dts/private/externalAppCardActionsForCEA.d.ts +49 -0
- package/dist/esm/packages/teams-js/dts/private/externalAppCommands.d.ts +123 -0
- package/dist/esm/packages/teams-js/dts/private/files.d.ts +758 -0
- package/dist/esm/packages/teams-js/dts/private/hostEntity.d.ts +176 -0
- package/dist/esm/packages/teams-js/dts/private/index.d.ts +20 -0
- package/dist/esm/packages/teams-js/dts/private/interfaces.d.ts +250 -0
- package/dist/esm/packages/teams-js/dts/private/logs.d.ts +25 -0
- package/dist/esm/packages/teams-js/dts/private/meetingRoom.d.ts +203 -0
- package/dist/esm/packages/teams-js/dts/private/messageChannels.d.ts +107 -0
- package/dist/esm/packages/teams-js/dts/private/notifications.d.ts +26 -0
- package/dist/esm/packages/teams-js/dts/private/otherAppStateChange.d.ts +81 -0
- package/dist/esm/packages/teams-js/dts/private/privateAPIs.d.ts +60 -0
- package/dist/esm/packages/teams-js/dts/private/remoteCamera.d.ts +298 -0
- package/dist/esm/packages/teams-js/dts/private/teams.d.ts +116 -0
- package/dist/esm/packages/teams-js/dts/private/videoEffectsEx.d.ts +244 -0
- package/dist/esm/packages/teams-js/dts/public/adaptiveCards.d.ts +6 -0
- package/dist/esm/packages/teams-js/dts/public/app.d.ts +592 -0
- package/dist/esm/packages/teams-js/dts/public/appId.d.ts +33 -0
- package/dist/esm/packages/teams-js/dts/public/appInitialization.d.ts +57 -0
- package/dist/esm/packages/teams-js/dts/public/appInstallDialog.d.ts +18 -0
- package/dist/esm/packages/teams-js/dts/public/appWindow.d.ts +66 -0
- package/dist/esm/packages/teams-js/dts/public/authentication.d.ts +409 -0
- package/dist/esm/packages/teams-js/dts/public/barCode.d.ts +53 -0
- package/dist/esm/packages/teams-js/dts/public/calendar.d.ts +40 -0
- package/dist/esm/packages/teams-js/dts/public/call.d.ts +53 -0
- package/dist/esm/packages/teams-js/dts/public/chat.d.ts +66 -0
- package/dist/esm/packages/teams-js/dts/public/clipboard.d.ts +34 -0
- package/dist/esm/packages/teams-js/dts/public/constants.d.ts +179 -0
- package/dist/esm/packages/teams-js/dts/public/dialog.d.ts +286 -0
- package/dist/esm/packages/teams-js/dts/public/emailAddress.d.ts +12 -0
- package/dist/esm/packages/teams-js/dts/public/geoLocation.d.ts +100 -0
- package/dist/esm/packages/teams-js/dts/public/index.d.ts +44 -0
- package/dist/esm/packages/teams-js/dts/public/interfaces.d.ts +1133 -0
- package/dist/esm/packages/teams-js/dts/public/liveShareHost.d.ts +221 -0
- package/dist/esm/packages/teams-js/dts/public/location.d.ts +86 -0
- package/dist/esm/packages/teams-js/dts/public/mail.d.ts +95 -0
- package/dist/esm/packages/teams-js/dts/public/marketplace.d.ts +321 -0
- package/dist/esm/packages/teams-js/dts/public/media.d.ts +440 -0
- package/dist/esm/packages/teams-js/dts/public/meeting.d.ts +906 -0
- package/dist/esm/packages/teams-js/dts/public/menus.d.ts +188 -0
- package/dist/esm/packages/teams-js/dts/public/monetization.d.ts +58 -0
- package/dist/esm/packages/teams-js/dts/public/navigation.d.ts +45 -0
- package/dist/esm/packages/teams-js/dts/public/nestedAppAuth.d.ts +15 -0
- package/dist/esm/packages/teams-js/dts/public/pages.d.ts +574 -0
- package/dist/esm/packages/teams-js/dts/public/people.d.ts +75 -0
- package/dist/esm/packages/teams-js/dts/public/profile.d.ts +127 -0
- package/dist/esm/packages/teams-js/dts/public/publicAPIs.d.ts +218 -0
- package/dist/esm/packages/teams-js/dts/public/runtime.d.ts +207 -0
- package/dist/esm/packages/teams-js/dts/public/search.d.ts +91 -0
- package/dist/esm/packages/teams-js/dts/public/secondaryBrowser.d.ts +32 -0
- package/dist/esm/packages/teams-js/dts/public/serializable.interface.d.ts +17 -0
- package/dist/esm/packages/teams-js/dts/public/settings.d.ts +101 -0
- package/dist/esm/packages/teams-js/dts/public/sharing.d.ts +124 -0
- package/dist/esm/packages/teams-js/dts/public/stageView.d.ts +104 -0
- package/dist/esm/packages/teams-js/dts/public/tasks.d.ts +62 -0
- package/dist/esm/packages/teams-js/dts/public/teamsAPIs.d.ts +77 -0
- package/dist/esm/packages/teams-js/dts/public/thirdPartyCloudStorage.d.ts +119 -0
- package/dist/esm/packages/teams-js/dts/public/version.d.ts +5 -0
- package/dist/esm/packages/teams-js/dts/public/videoEffects.d.ts +213 -0
- package/dist/esm/packages/teams-js/dts/public/visualMedia.d.ts +192 -0
- package/dist/esm/packages/teams-js/dts/public/webStorage.d.ts +27 -0
- package/dist/esm/packages/teams-js/src/index.js +1 -1
- package/dist/esm/packages/teams-js/src/internal/appHelpers.js +1 -0
- package/dist/esm/packages/teams-js/src/internal/communication.js +1 -1
- package/dist/esm/packages/teams-js/src/internal/deepLinkUtilities.js +1 -1
- package/dist/esm/packages/teams-js/src/internal/responseHandler.js +1 -0
- package/dist/esm/packages/teams-js/src/private/externalAppAuthentication.js +1 -1
- package/dist/esm/packages/teams-js/src/private/externalAppAuthenticationForCEA.js +1 -1
- package/dist/esm/packages/teams-js/src/private/hostEntity.js +1 -1
- package/dist/esm/packages/teams-js/src/private/videoEffectsEx.js +1 -1
- package/dist/esm/packages/teams-js/src/public/app.js +1 -1
- package/dist/esm/packages/teams-js/src/public/appId.js +1 -1
- package/dist/esm/packages/teams-js/src/public/appInitialization.js +1 -1
- package/dist/esm/packages/teams-js/src/public/appInstallDialog.js +1 -1
- package/dist/esm/packages/teams-js/src/public/authentication.js +1 -1
- package/dist/esm/packages/teams-js/src/public/barCode.js +1 -1
- package/dist/esm/packages/teams-js/src/public/calendar.js +1 -1
- package/dist/esm/packages/teams-js/src/public/call.js +1 -1
- package/dist/esm/packages/teams-js/src/public/clipboard.js +1 -1
- package/dist/esm/packages/teams-js/src/public/constants.js +1 -1
- package/dist/esm/packages/teams-js/src/public/pages.js +1 -1
- package/dist/esm/packages/teams-js/src/public/publicAPIs.js +1 -1
- package/dist/esm/packages/teams-js/src/public/serializable.interface.js +1 -0
- package/dist/esm/packages/teams-js/src/public/settings.js +1 -1
- package/dist/esm/packages/teams-js/src/public/tasks.js +1 -1
- package/dist/esm/packages/teams-js/src/public/version.js +1 -1
- package/dist/esm/packages/teams-js/src/public/webStorage.js +1 -1
- package/dist/umd/MicrosoftTeams.d.ts +10740 -10768
- package/dist/umd/MicrosoftTeams.js +1571 -1359
- package/dist/umd/MicrosoftTeams.js.map +1 -1
- package/dist/umd/MicrosoftTeams.min.js +1 -1
- package/dist/umd/MicrosoftTeams.min.js.map +1 -1
- package/package.json +1 -51
- package/dist/esm/node_modules/.pnpm/supports-color@8.1.1/node_modules/supports-color/browser.js +0 -1
@@ -0,0 +1,1133 @@
|
|
1
|
+
import { ChannelType, DialogDimension, HostClientType, HostName, TeamType, UserTeamRole } from './constants';
|
2
|
+
import { FrameContexts } from './constants';
|
3
|
+
/**
|
4
|
+
* Represents information about tabs for an app
|
5
|
+
*/
|
6
|
+
export interface TabInformation {
|
7
|
+
/** Represents the tabs associated with a Microsoft Teams app */
|
8
|
+
teamTabs: TabInstance[];
|
9
|
+
}
|
10
|
+
/**
|
11
|
+
* Represents information about a tab instance
|
12
|
+
*/
|
13
|
+
export interface TabInstance {
|
14
|
+
/**
|
15
|
+
* The name of the tab
|
16
|
+
*/
|
17
|
+
tabName: string;
|
18
|
+
/**
|
19
|
+
* @internal
|
20
|
+
* Limited to Microsoft-internal use
|
21
|
+
* @protected
|
22
|
+
*/
|
23
|
+
internalTabInstanceId?: string;
|
24
|
+
/**
|
25
|
+
* Last viewed time of this tab. null means unknown
|
26
|
+
*/
|
27
|
+
lastViewUnixEpochTime?: string;
|
28
|
+
/**
|
29
|
+
* The developer-defined unique ID for the entity this content points to.
|
30
|
+
*/
|
31
|
+
entityId?: string;
|
32
|
+
/**
|
33
|
+
* The Microsoft Teams ID for the channel with which the content is associated.
|
34
|
+
*/
|
35
|
+
channelId?: string;
|
36
|
+
/**
|
37
|
+
* The name for the channel with which the content is associated.
|
38
|
+
*/
|
39
|
+
channelName?: string;
|
40
|
+
/**
|
41
|
+
* Is this tab in a favorite channel?
|
42
|
+
*/
|
43
|
+
channelIsFavorite?: boolean;
|
44
|
+
/**
|
45
|
+
* The Microsoft Teams ID for the team with which the content is associated.
|
46
|
+
*/
|
47
|
+
teamId?: string;
|
48
|
+
/**
|
49
|
+
* The name for the team with which the content is associated.
|
50
|
+
*/
|
51
|
+
teamName?: string;
|
52
|
+
/**
|
53
|
+
* Is this tab in a favorite team?
|
54
|
+
*/
|
55
|
+
teamIsFavorite?: boolean;
|
56
|
+
/**
|
57
|
+
* The Office 365 group ID for the team with which the content is associated.
|
58
|
+
* This field is available only when the identity permission is requested in the manifest.
|
59
|
+
*/
|
60
|
+
groupId?: string;
|
61
|
+
/**
|
62
|
+
* Content URL of this tab
|
63
|
+
*/
|
64
|
+
url?: string;
|
65
|
+
/**
|
66
|
+
* Website URL of this tab
|
67
|
+
*/
|
68
|
+
websiteUrl?: string;
|
69
|
+
/**
|
70
|
+
* AppId of this tab
|
71
|
+
*/
|
72
|
+
appId?: string;
|
73
|
+
/**
|
74
|
+
* Order of this tab. Order is 1-indexed.
|
75
|
+
*/
|
76
|
+
order?: number;
|
77
|
+
}
|
78
|
+
/**
|
79
|
+
* Indicates information about the tab instance for filtering purposes.
|
80
|
+
*/
|
81
|
+
export interface TabInstanceParameters {
|
82
|
+
/**
|
83
|
+
* Flag allowing to select favorite channels only
|
84
|
+
*/
|
85
|
+
favoriteChannelsOnly?: boolean;
|
86
|
+
/**
|
87
|
+
* Flag allowing to select favorite teams only
|
88
|
+
*/
|
89
|
+
favoriteTeamsOnly?: boolean;
|
90
|
+
}
|
91
|
+
/**
|
92
|
+
* Represents Team Information
|
93
|
+
*/
|
94
|
+
export interface TeamInformation {
|
95
|
+
/**
|
96
|
+
* Id of the team
|
97
|
+
*/
|
98
|
+
teamId: string;
|
99
|
+
/**
|
100
|
+
* Team display name
|
101
|
+
*/
|
102
|
+
teamName: string;
|
103
|
+
/**
|
104
|
+
* Team description
|
105
|
+
*/
|
106
|
+
teamDescription?: string;
|
107
|
+
/**
|
108
|
+
* Thumbnail Uri
|
109
|
+
*/
|
110
|
+
thumbnailUri?: string;
|
111
|
+
/**
|
112
|
+
* The Office 365 group ID for the team with which the content is associated.
|
113
|
+
* This field is available only when the identity permission is requested in the manifest.
|
114
|
+
*/
|
115
|
+
groupId?: string;
|
116
|
+
/**
|
117
|
+
* Role of current user in the team
|
118
|
+
*/
|
119
|
+
userTeamRole?: UserTeamRole;
|
120
|
+
/**
|
121
|
+
* The type of the team.
|
122
|
+
*/
|
123
|
+
teamType?: TeamType;
|
124
|
+
/**
|
125
|
+
* The locked status of the team
|
126
|
+
*/
|
127
|
+
isTeamLocked?: boolean;
|
128
|
+
/**
|
129
|
+
* The archived status of the team
|
130
|
+
*/
|
131
|
+
isTeamArchived?: boolean;
|
132
|
+
}
|
133
|
+
/**
|
134
|
+
* Represents OS locale info used for formatting date and time data
|
135
|
+
*/
|
136
|
+
export interface LocaleInfo {
|
137
|
+
/** Represents the user's platform on which the app is running. */
|
138
|
+
platform: HostClientType.android | HostClientType.ios | HostClientType.macos | 'windows';
|
139
|
+
/**
|
140
|
+
* Represents the regional format used by the user's locale.
|
141
|
+
* @example `en-us`.
|
142
|
+
*/
|
143
|
+
regionalFormat: string;
|
144
|
+
/**
|
145
|
+
* Displays date values, as specified by the short date format MM/DD/YYYY in user's regional settings.
|
146
|
+
* @example 4/21/2023 or 4-21-2023
|
147
|
+
*/
|
148
|
+
shortDate: string;
|
149
|
+
/**
|
150
|
+
* Displays only date values, as specified by the Long Date format in user's regional settings.
|
151
|
+
* @example Friday, April 21, 2023
|
152
|
+
*/
|
153
|
+
longDate: string;
|
154
|
+
/**
|
155
|
+
* A string representing the short time format used by the user's locale.
|
156
|
+
* @example 10:10
|
157
|
+
*/
|
158
|
+
shortTime: string;
|
159
|
+
/**
|
160
|
+
* A string representing the long time format used by the user's locale.
|
161
|
+
* @example 10:10:42 AM
|
162
|
+
*/
|
163
|
+
longTime: string;
|
164
|
+
}
|
165
|
+
/**
|
166
|
+
* Allowed user file open preferences
|
167
|
+
*/
|
168
|
+
export declare enum FileOpenPreference {
|
169
|
+
/** Indicates that the user should be prompted to open the file in inline. */
|
170
|
+
Inline = "inline",
|
171
|
+
/** Indicates that the user should be prompted to open the file in the native desktop application associated with the file type. */
|
172
|
+
Desktop = "desktop",
|
173
|
+
/** Indicates that the user should be prompted to open the file in a web browser. */
|
174
|
+
Web = "web"
|
175
|
+
}
|
176
|
+
/**
|
177
|
+
* Types of Action Objects
|
178
|
+
*
|
179
|
+
* @beta
|
180
|
+
*/
|
181
|
+
export declare enum ActionObjectType {
|
182
|
+
/** Represents content within a Microsoft 365 application. */
|
183
|
+
M365Content = "m365content"
|
184
|
+
}
|
185
|
+
/**
|
186
|
+
* Data pertaining to object(s) the action is being performed on
|
187
|
+
*
|
188
|
+
* @param T The type of action being implemented
|
189
|
+
*
|
190
|
+
* @beta
|
191
|
+
*/
|
192
|
+
export interface BaseActionObject<T extends ActionObjectType> {
|
193
|
+
/** Represents action type. */
|
194
|
+
type: T;
|
195
|
+
}
|
196
|
+
/**
|
197
|
+
* Stores information needed to represent content stored in OneDrive or Sharepoint
|
198
|
+
*
|
199
|
+
* @beta
|
200
|
+
*/
|
201
|
+
export interface M365ContentAction extends BaseActionObject<ActionObjectType.M365Content> {
|
202
|
+
/**
|
203
|
+
* Only office content IDs are passed to the app. Apps should use these ids
|
204
|
+
* to query the Microsoft graph for more details.
|
205
|
+
*/
|
206
|
+
itemId: string;
|
207
|
+
/** Represents an optional secondary identifier for an action in a Microsoft 365 content item. */
|
208
|
+
secondaryId?: SecondaryId;
|
209
|
+
}
|
210
|
+
/**
|
211
|
+
* Contains additional IDs of the content that the action is triggered from. Maps to ids used in the Graph.
|
212
|
+
*
|
213
|
+
* @beta
|
214
|
+
*/
|
215
|
+
export interface SecondaryId {
|
216
|
+
/** Name of the secondary id that should be used. */
|
217
|
+
name: SecondaryM365ContentIdName;
|
218
|
+
/** The secondary id value that can be used to retrieve M365 content. */
|
219
|
+
value: string;
|
220
|
+
}
|
221
|
+
/**
|
222
|
+
* These correspond with field names in the MSGraph.
|
223
|
+
* See [commonly accessed resources](https://learn.microsoft.com/graph/api/resources/onedrive?view=graph-rest-1.0#commonly-accessed-resources).
|
224
|
+
* @beta
|
225
|
+
*/
|
226
|
+
export declare enum SecondaryM365ContentIdName {
|
227
|
+
/** OneDrive ID */
|
228
|
+
DriveId = "driveId",
|
229
|
+
/** Teams Group ID */
|
230
|
+
GroupId = "groupId",
|
231
|
+
/** SharePoint ID */
|
232
|
+
SiteId = "siteId",
|
233
|
+
/** User ID */
|
234
|
+
UserId = "userId"
|
235
|
+
}
|
236
|
+
/**
|
237
|
+
* Information about an Action.
|
238
|
+
*
|
239
|
+
* @remarks
|
240
|
+
* This contains Id of the action, and the information about the object that triggered the action.
|
241
|
+
* @beta
|
242
|
+
*/
|
243
|
+
export interface ActionInfo {
|
244
|
+
/**
|
245
|
+
* Id of the action. Maps to the action id supplied inside the manifest
|
246
|
+
*/
|
247
|
+
actionId: string;
|
248
|
+
/**
|
249
|
+
* Array of corresponding action objects
|
250
|
+
*/
|
251
|
+
actionObjects: BaseActionObject<ActionObjectType>[];
|
252
|
+
}
|
253
|
+
/**
|
254
|
+
* @deprecated
|
255
|
+
* As of TeamsJS v2.0.0, please use the {@link app.Context} interface and its updated properties instead.
|
256
|
+
*
|
257
|
+
* @remarks
|
258
|
+
* For more details about the updated {@link app.Context} interface, visit the
|
259
|
+
* [Teams JavaScript client SDK](https://learn.microsoft.com/microsoftteams/platform/tabs/how-to/using-teams-client-sdk#updates-to-the-context-interface)
|
260
|
+
* overview article.
|
261
|
+
*
|
262
|
+
* Represents the structure of the received context message.
|
263
|
+
*/
|
264
|
+
export interface Context {
|
265
|
+
/**
|
266
|
+
* @deprecated
|
267
|
+
* As of TeamsJS v2.0.0, please use {@link ActionInfo | app.Context.actionInfo} instead
|
268
|
+
*
|
269
|
+
* Common information applicable to all content actions
|
270
|
+
*/
|
271
|
+
actionInfo?: ActionInfo;
|
272
|
+
/**
|
273
|
+
* @deprecated
|
274
|
+
* As of TeamsJS v2.0.0, please use {@link app.TeamInfo.groupId | app.Context.team.groupId} instead
|
275
|
+
*
|
276
|
+
* The Office 365 group ID for the team with which the content is associated.
|
277
|
+
* This field is available only when the identity permission is requested in the manifest.
|
278
|
+
*/
|
279
|
+
groupId?: string;
|
280
|
+
/**
|
281
|
+
* @deprecated
|
282
|
+
* As of TeamsJS v2.0.0, please use {@link app.TeamInfo.internalId | app.Context.team.internalId} instead
|
283
|
+
*
|
284
|
+
* The Microsoft Teams ID for the team with which the content is associated.
|
285
|
+
*/
|
286
|
+
teamId?: string;
|
287
|
+
/**
|
288
|
+
* @deprecated
|
289
|
+
* As of TeamsJS v2.0.0, please use {@link app.TeamInfo.displayName | app.Context.team.displayName} instead
|
290
|
+
*
|
291
|
+
* The name for the team with which the content is associated.
|
292
|
+
*/
|
293
|
+
teamName?: string;
|
294
|
+
/**
|
295
|
+
* @deprecated
|
296
|
+
* As of TeamsJS v2.0.0, please use {@link app.ChannelInfo.id | app.Context.channel.id} instead
|
297
|
+
*
|
298
|
+
* The Microsoft Teams ID for the channel with which the content is associated.
|
299
|
+
*/
|
300
|
+
channelId?: string;
|
301
|
+
/**
|
302
|
+
* @deprecated
|
303
|
+
* As of TeamsJS v2.0.0, please use {@link app.ChannelInfo.displayName | app.Context.channel.displayName} instead
|
304
|
+
*
|
305
|
+
* The name for the channel with which the content is associated.
|
306
|
+
*/
|
307
|
+
channelName?: string;
|
308
|
+
/**
|
309
|
+
* @deprecated
|
310
|
+
* As of TeamsJS v2.0.0, please use {@link app.ChannelInfo.membershipType | app.Context.channel.membershipType} instead
|
311
|
+
*
|
312
|
+
* The type of the channel with which the content is associated.
|
313
|
+
*/
|
314
|
+
channelType?: ChannelType;
|
315
|
+
/**
|
316
|
+
* @deprecated
|
317
|
+
* As of TeamsJS v2.0.0, please use {@link app.PageInfo.id | app.Context.page.id} instead
|
318
|
+
*
|
319
|
+
* The developer-defined unique ID for the entity this content points to.
|
320
|
+
*/
|
321
|
+
entityId: string;
|
322
|
+
/**
|
323
|
+
* @deprecated
|
324
|
+
* As of TeamsJS v2.0.0, please use {@link app.PageInfo.subPageId | app.Context.page.subPageId} instead
|
325
|
+
*
|
326
|
+
* The developer-defined unique ID for the sub-entity this content points to.
|
327
|
+
* This field should be used to restore to a specific state within an entity,
|
328
|
+
* such as scrolling to or activating a specific piece of content.
|
329
|
+
*/
|
330
|
+
subEntityId?: string;
|
331
|
+
/**
|
332
|
+
* @deprecated
|
333
|
+
* As of TeamsJS v2.0.0, please use {@link app.AppInfo.locale | app.Context.app.locale} instead
|
334
|
+
*
|
335
|
+
* The current locale that the user has configured for the app formatted as
|
336
|
+
* languageId-countryId (for example, en-us).
|
337
|
+
*/
|
338
|
+
locale: string;
|
339
|
+
/**
|
340
|
+
* @deprecated
|
341
|
+
* As of TeamsJS v2.0.0, please use {@link app.AppInfo.osLocaleInfo | app.Context.app.osLocaleInfo} instead
|
342
|
+
*
|
343
|
+
* More detailed locale info from the user's OS if available. Can be used together with
|
344
|
+
* the @microsoft/globe NPM package to ensure your app respects the user's OS date and
|
345
|
+
* time format configuration
|
346
|
+
*/
|
347
|
+
osLocaleInfo?: LocaleInfo;
|
348
|
+
/**
|
349
|
+
* @deprecated
|
350
|
+
*
|
351
|
+
* As of TeamsJS v2.0.0, please use {@link app.UserInfo.loginHint | app.Context.user.loginHint} or
|
352
|
+
* {@link app.UserInfo.userPrincipalName | app.Context.user.userPrincipalName} instead.
|
353
|
+
* The UPN of the current user.
|
354
|
+
* Because a malicious party can run your content in a browser, this value should
|
355
|
+
* be used only as a hint as to who the user is and never as proof of identity.
|
356
|
+
* This field is available only when the identity permission is requested in the manifest.
|
357
|
+
*/
|
358
|
+
upn?: string;
|
359
|
+
/**
|
360
|
+
* @deprecated
|
361
|
+
* As of TeamsJS v2.0.0, please use {@link app.TenantInfo.id | app.Context.user.tenant.id} instead
|
362
|
+
*
|
363
|
+
* The Microsoft Entra tenant ID of the current user.
|
364
|
+
* Because a malicious party can run your content in a browser, this value should
|
365
|
+
* be used only as a hint as to who the user is and never as proof of identity.
|
366
|
+
* This field is available only when the identity permission is requested in the manifest.
|
367
|
+
*/
|
368
|
+
tid?: string;
|
369
|
+
/**
|
370
|
+
* @deprecated
|
371
|
+
* As of TeamsJS v2.0.0, please use {@link app.AppInfo.theme | app.Context.app.theme} instead
|
372
|
+
*
|
373
|
+
* The current UI theme.
|
374
|
+
*/
|
375
|
+
theme?: string;
|
376
|
+
/**
|
377
|
+
* @deprecated
|
378
|
+
* As of TeamsJS v2.0.0, please use {@link app.PageInfo.isFullScreen | app.Context.page.isFullScreen} instead
|
379
|
+
*
|
380
|
+
* Indication whether the tab is in full-screen mode.
|
381
|
+
*/
|
382
|
+
isFullScreen?: boolean;
|
383
|
+
/**
|
384
|
+
* @deprecated
|
385
|
+
* As of TeamsJS v2.0.0, please use {@link app.TeamInfo.type | app.Context.team.type} instead
|
386
|
+
*
|
387
|
+
* The type of the team.
|
388
|
+
*/
|
389
|
+
teamType?: TeamType;
|
390
|
+
/**
|
391
|
+
* @deprecated
|
392
|
+
* As of TeamsJS v2.0.0, please use {@link app.SharePointSiteInfo.teamSiteUrl | app.Context.sharePointSite.teamSiteUrl} instead
|
393
|
+
*
|
394
|
+
* The root SharePoint site associated with the team.
|
395
|
+
*/
|
396
|
+
teamSiteUrl?: string;
|
397
|
+
/**
|
398
|
+
* @deprecated
|
399
|
+
* As of TeamsJS v2.0.0, please use {@link app.SharePointSiteInfo.teamSiteDomain | app.Context.sharePointSite.teamSiteDomain} instead
|
400
|
+
*
|
401
|
+
* The domain of the root SharePoint site associated with the team.
|
402
|
+
*/
|
403
|
+
teamSiteDomain?: string;
|
404
|
+
/**
|
405
|
+
* @deprecated
|
406
|
+
* As of TeamsJS v2.0.0, please use {@link app.SharePointSiteInfo.teamSitePath | app.Context.sharePointSite.teamSitePath} instead
|
407
|
+
*
|
408
|
+
* The relative path to the SharePoint site associated with the team.
|
409
|
+
*/
|
410
|
+
teamSitePath?: string;
|
411
|
+
/**
|
412
|
+
* @deprecated
|
413
|
+
* As of TeamsJS v2.0.0, please use {@link app.ChannelInfo.ownerTenantId | app.Context.channel.ownerTenantId} instead
|
414
|
+
*
|
415
|
+
* The tenant ID of the host team.
|
416
|
+
*/
|
417
|
+
hostTeamTenantId?: string;
|
418
|
+
/**
|
419
|
+
* @deprecated
|
420
|
+
* As of TeamsJS v2.0.0, please use {@link app.ChannelInfo.ownerGroupId | app.Context.channel.ownerGroupId} instead
|
421
|
+
*
|
422
|
+
* The Microsoft Entra group ID of the host team.
|
423
|
+
*/
|
424
|
+
hostTeamGroupId?: string;
|
425
|
+
/**
|
426
|
+
* @deprecated
|
427
|
+
* As of TeamsJS v2.0.0, please use {@link app.ChannelInfo.relativeUrl | app.Context.channel.relativeUrl} instead
|
428
|
+
*
|
429
|
+
* The relative path to the SharePoint folder associated with the channel.
|
430
|
+
*/
|
431
|
+
channelRelativeUrl?: string;
|
432
|
+
/**
|
433
|
+
* @deprecated
|
434
|
+
* As of TeamsJS v2.0.0, please use {@link app.AppHostInfo.sessionId | app.Context.app.host.sessionId} instead
|
435
|
+
*
|
436
|
+
* Unique ID for the current Teams session for use in correlating telemetry data.
|
437
|
+
*/
|
438
|
+
sessionId?: string;
|
439
|
+
/**
|
440
|
+
* @deprecated
|
441
|
+
* As of TeamsJS v2.0.0, please use {@link app.TeamInfo.userRole | app.Context.team.userRole} instead
|
442
|
+
*
|
443
|
+
* The user's role in the team.
|
444
|
+
* Because a malicious party can run your content in a browser, this value should
|
445
|
+
* be used only as a hint as to the user's role, and never as proof of her role.
|
446
|
+
*/
|
447
|
+
userTeamRole?: UserTeamRole;
|
448
|
+
/**
|
449
|
+
* @deprecated
|
450
|
+
* As of TeamsJS v2.0.0, please use {@link app.ChatInfo.id | app.Context.chat.id} instead
|
451
|
+
*
|
452
|
+
* The Microsoft Teams ID for the chat with which the content is associated.
|
453
|
+
*/
|
454
|
+
chatId?: string;
|
455
|
+
/**
|
456
|
+
* @deprecated
|
457
|
+
* As of TeamsJS v2.0.0, please use {@link app.UserInfo.loginHint | app.Context.user.loginHint} instead
|
458
|
+
*
|
459
|
+
* A value suitable for use as a login_hint when authenticating with Microsoft Entra ID.
|
460
|
+
* Because a malicious party can run your content in a browser, this value should
|
461
|
+
* be used only as a hint as to who the user is and never as proof of identity.
|
462
|
+
* This field is available only when the identity permission is requested in the manifest.
|
463
|
+
*/
|
464
|
+
loginHint?: string;
|
465
|
+
/**
|
466
|
+
* @deprecated
|
467
|
+
* As of TeamsJS v2.0.0, please use {@link app.UserInfo.userPrincipalName | app.Context.user.userPrincipalName} instead
|
468
|
+
*
|
469
|
+
* The UPN of the current user. This may be an externally-authenticated UPN (e.g., guest users).
|
470
|
+
* Because a malicious party run your content in a browser, this value should
|
471
|
+
* be used only as a hint as to who the user is and never as proof of identity.
|
472
|
+
* This field is available only when the identity permission is requested in the manifest.
|
473
|
+
*/
|
474
|
+
userPrincipalName?: string;
|
475
|
+
/**
|
476
|
+
* @deprecated
|
477
|
+
* As of TeamsJS v2.0.0, please use {@link app.UserInfo.id | app.Context.user.id} instead
|
478
|
+
*
|
479
|
+
* The Microsoft Entra object ID of the current user.
|
480
|
+
* Because a malicious party run your content in a browser, this value should
|
481
|
+
* be used only as a hint as to who the user is and never as proof of identity.
|
482
|
+
* This field is available only when the identity permission is requested in the manifest.
|
483
|
+
*/
|
484
|
+
userObjectId?: string;
|
485
|
+
/**
|
486
|
+
* @deprecated
|
487
|
+
* As of TeamsJS v2.0.0, please use {@link app.TeamInfo.isArchived | app.Context.team.isArchived} instead
|
488
|
+
*
|
489
|
+
* Indicates whether team is archived.
|
490
|
+
* Apps should use this as a signal to prevent any changes to content associated with archived teams.
|
491
|
+
*/
|
492
|
+
isTeamArchived?: boolean;
|
493
|
+
/**
|
494
|
+
* @deprecated
|
495
|
+
* As of TeamsJS v2.0.0, please use {@link app.AppHostInfo.name | app.Context.app.host.name} instead
|
496
|
+
*
|
497
|
+
* The name of the host client. Possible values are: Office, Orange, Outlook, Teams
|
498
|
+
*/
|
499
|
+
hostName?: HostName;
|
500
|
+
/**
|
501
|
+
* @deprecated
|
502
|
+
* As of TeamsJS v2.0.0, please use {@link app.AppHostInfo.clientType | app.Context.app.host.clientType} instead
|
503
|
+
*
|
504
|
+
* The type of the host client. Possible values are : android, ios, web, desktop, rigel(deprecated, use teamsRoomsWindows instead),
|
505
|
+
* surfaceHub, teamsRoomsWindows, teamsRoomsAndroid, teamsPhones, teamsDisplays
|
506
|
+
*/
|
507
|
+
hostClientType?: HostClientType;
|
508
|
+
/**
|
509
|
+
* @deprecated
|
510
|
+
* As of TeamsJS v2.0.0, please use {@link app.PageInfo.frameContext | app.Context.page.frameContext} instead
|
511
|
+
*
|
512
|
+
* The context where tab url is loaded (content, task, setting, remove, sidePanel)
|
513
|
+
*/
|
514
|
+
frameContext?: FrameContexts;
|
515
|
+
/**
|
516
|
+
* @deprecated
|
517
|
+
* As of TeamsJS v2.0.0, please use {@link app.Context | app.Context.sharepoint} instead
|
518
|
+
*
|
519
|
+
* SharePoint context. This is only available when hosted in SharePoint.
|
520
|
+
*/
|
521
|
+
sharepoint?: any;
|
522
|
+
/**
|
523
|
+
* @deprecated
|
524
|
+
* As of TeamsJS v2.0.0, please use {@link app.TenantInfo.teamsSku | app.Context.tenant.teamsSku} instead
|
525
|
+
*
|
526
|
+
* The type of license for the current users tenant.
|
527
|
+
*/
|
528
|
+
tenantSKU?: string;
|
529
|
+
/**
|
530
|
+
* @deprecated
|
531
|
+
* As of TeamsJS v2.0.0, please use {@link app.UserInfo.licenseType | app.Context.user.licenseType} instead
|
532
|
+
*
|
533
|
+
* The license type for the current user.
|
534
|
+
*/
|
535
|
+
userLicenseType?: string;
|
536
|
+
/**
|
537
|
+
* @deprecated
|
538
|
+
* As of TeamsJS v2.0.0, please use {@link app.AppInfo.parentMessageId | app.Context.app.parentMessageId} instead
|
539
|
+
*
|
540
|
+
* The ID of the parent message from which this task module was launched.
|
541
|
+
* This is only available in task modules launched from bot cards.
|
542
|
+
*/
|
543
|
+
parentMessageId?: string;
|
544
|
+
/**
|
545
|
+
* @deprecated
|
546
|
+
* As of TeamsJS v2.0.0, please use {@link app.AppHostInfo.ringId | app.Context.app.host.ringId} instead
|
547
|
+
*
|
548
|
+
* Current ring ID
|
549
|
+
*/
|
550
|
+
ringId?: string;
|
551
|
+
/**
|
552
|
+
* @deprecated
|
553
|
+
* As of TeamsJS v2.0.0, please use {@link app.AppInfo.sessionId | app.Context.app.sessionId} instead
|
554
|
+
*
|
555
|
+
* Unique ID for the current session for use in correlating telemetry data. A session corresponds to the lifecycle of an app. A new session begins upon the creation of a webview (on Teams mobile) or iframe (in Teams desktop) hosting the app, and ends when it is destroyed.
|
556
|
+
*/
|
557
|
+
appSessionId?: string;
|
558
|
+
/**
|
559
|
+
* @deprecated
|
560
|
+
* As of TeamsJS v2.0.0, please use {@link app.AppInfo.appLaunchId | app.Context.app.appLaunchId} instead
|
561
|
+
*
|
562
|
+
* ID for the current visible app which is different for across cached sessions. Used for correlating telemetry data``
|
563
|
+
*/
|
564
|
+
appLaunchId?: string;
|
565
|
+
/**
|
566
|
+
* @deprecated
|
567
|
+
* As of TeamsJS v2.0.0, please use {@link app.UserInfo.isCallingAllowed | app.Context.user.isCallingAllowed} instead
|
568
|
+
*
|
569
|
+
* Represents whether calling is allowed for the current logged in User
|
570
|
+
*/
|
571
|
+
isCallingAllowed?: boolean;
|
572
|
+
/**
|
573
|
+
* @deprecated
|
574
|
+
* As of TeamsJS v2.0.0, please use {@link app.UserInfo.isPSTNCallingAllowed | app.Context.user.isPSTNCallingAllowed} instead
|
575
|
+
*
|
576
|
+
* Represents whether PSTN calling is allowed for the current logged in User
|
577
|
+
*/
|
578
|
+
isPSTNCallingAllowed?: boolean;
|
579
|
+
/**
|
580
|
+
* @deprecated
|
581
|
+
* As of TeamsJS v2.0.0, please use {@link app.MeetingInfo.id | app.Context.meeting.id} instead
|
582
|
+
*
|
583
|
+
* Meeting Id used by tab when running in meeting context
|
584
|
+
*/
|
585
|
+
meetingId?: string;
|
586
|
+
/**
|
587
|
+
* @deprecated
|
588
|
+
* As of TeamsJS v2.0.0, please use {@link app.ChannelInfo.defaultOneNoteSectionId | app.Context.channel.defaultOneNoteSectionId} instead
|
589
|
+
*
|
590
|
+
* The OneNote section ID that is linked to the channel.
|
591
|
+
*/
|
592
|
+
defaultOneNoteSectionId?: string;
|
593
|
+
/**
|
594
|
+
* @deprecated
|
595
|
+
* As of TeamsJS v2.0.0, please use {@link app.PageInfo.isMultiWindow | app.Context.page.isMultiWindow} instead
|
596
|
+
*
|
597
|
+
* Indication whether the tab is in a pop out window
|
598
|
+
*/
|
599
|
+
isMultiWindow?: boolean;
|
600
|
+
/**
|
601
|
+
* @deprecated
|
602
|
+
* As of TeamsJS v2.0.0, please use {@link app.PageInfo.isBackgroundLoad | app.Context.page.isBackgroundLoad} instead
|
603
|
+
*
|
604
|
+
* Indication whether the tab is being loaded in the background
|
605
|
+
*/
|
606
|
+
isBackgroundLoad?: boolean;
|
607
|
+
/**
|
608
|
+
* @deprecated
|
609
|
+
* As of TeamsJS v2.0.0, please use {@link app.AppInfo.iconPositionVertical | app.Context.app.iconPositionVertical} instead
|
610
|
+
*
|
611
|
+
* Personal app icon y coordinate position
|
612
|
+
*/
|
613
|
+
appIconPosition?: number;
|
614
|
+
/**
|
615
|
+
* @deprecated
|
616
|
+
* As of TeamsJS v2.0.0, please use {@link app.PageInfo.sourceOrigin | app.Context.page.sourceOrigin} instead
|
617
|
+
*
|
618
|
+
* Source origin from where the tab is opened
|
619
|
+
*/
|
620
|
+
sourceOrigin?: string;
|
621
|
+
/**
|
622
|
+
* @deprecated
|
623
|
+
* As of TeamsJS v2.0.0, please use {@link app.AppInfo.userClickTime | app.Context.app.userClickTime} instead
|
624
|
+
*
|
625
|
+
* Time when the user clicked on the tab
|
626
|
+
*/
|
627
|
+
userClickTime?: number;
|
628
|
+
/**
|
629
|
+
* @deprecated
|
630
|
+
* As of TeamsJS v2.0.0, please use {@link app.TeamInfo.templateId | app.Context.team.templateId} instead
|
631
|
+
*
|
632
|
+
* Team Template ID if there was a Team Template associated with the creation of the team.
|
633
|
+
*/
|
634
|
+
teamTemplateId?: string;
|
635
|
+
/**
|
636
|
+
* @deprecated
|
637
|
+
* As of TeamsJS v2.0.0, please use {@link app.AppInfo.userFileOpenPreference | app.Context.app.userFileOpenPreference} instead
|
638
|
+
*
|
639
|
+
* Where the user prefers the file to be opened from by default during file open
|
640
|
+
*/
|
641
|
+
userFileOpenPreference?: FileOpenPreference;
|
642
|
+
/**
|
643
|
+
* @deprecated
|
644
|
+
* As of TeamsJS v2.0.0, please use {@link app.UserInfo.displayName | app.Context.user.displayName} instead
|
645
|
+
*
|
646
|
+
* The address book name of the current user.
|
647
|
+
*/
|
648
|
+
userDisplayName?: string;
|
649
|
+
/**
|
650
|
+
* @deprecated
|
651
|
+
* As of TeamsJS v2.0.0, please use {@link app.SharePointSiteInfo.teamSiteId | app.Context.sharePointSite.teamSiteId} instead
|
652
|
+
*
|
653
|
+
* Teamsite ID, aka sharepoint site id.
|
654
|
+
*/
|
655
|
+
teamSiteId?: string;
|
656
|
+
/**
|
657
|
+
* @deprecated
|
658
|
+
* As of TeamsJS v2.0.0, please use {@link app.SharePointSiteInfo.mySiteDomain | app.Context.sharePointSite.mySiteDomain} instead
|
659
|
+
*
|
660
|
+
* The SharePoint my site domain associated with the user.
|
661
|
+
*/
|
662
|
+
mySiteDomain?: string;
|
663
|
+
/**
|
664
|
+
* @deprecated
|
665
|
+
* As of TeamsJS v2.0.0, please use {@link app.SharePointSiteInfo.mySitePath | app.Context.sharePointSite.mySitePath} instead
|
666
|
+
*
|
667
|
+
* The SharePoint relative path to the current users mysite
|
668
|
+
*/
|
669
|
+
mySitePath?: string;
|
670
|
+
/**
|
671
|
+
* @deprecated
|
672
|
+
* As of TeamsJS v2.0.0, please use {@link app.Context.dialogParameters} instead
|
673
|
+
*
|
674
|
+
* When `processActionCommand` activates a dialog, this dialog should automatically fill in some fields with information. This information comes from M365 and is given to `processActionCommand` as `extractedParameters`.
|
675
|
+
* App developers need to use these `extractedParameters` in their dialog.
|
676
|
+
* They help pre-fill the dialog with necessary information (`dialogParameters`) along with other details.
|
677
|
+
*/
|
678
|
+
dialogParameters?: Record<string, string>;
|
679
|
+
}
|
680
|
+
/** Represents the parameters used to share a deep link. */
|
681
|
+
export interface ShareDeepLinkParameters {
|
682
|
+
/**
|
683
|
+
* The developer-defined unique ID for the sub-page to which this deep link points in the current page.
|
684
|
+
* This field should be used to restore to a specific state within a page, such as scrolling to or activating a specific piece of content.
|
685
|
+
*/
|
686
|
+
subPageId: string;
|
687
|
+
/**
|
688
|
+
* The label for the sub-page that should be displayed when the deep link is rendered in a client.
|
689
|
+
*/
|
690
|
+
subPageLabel: string;
|
691
|
+
/**
|
692
|
+
* The fallback URL to which to navigate the user if the client cannot render the page.
|
693
|
+
* This URL should lead directly to the sub-entity.
|
694
|
+
*/
|
695
|
+
subPageWebUrl?: string;
|
696
|
+
}
|
697
|
+
/**
|
698
|
+
* @deprecated
|
699
|
+
* As of TeamsJS v2.0.0, please use {@link ShareDeepLinkParameters} instead.
|
700
|
+
*/
|
701
|
+
export interface DeepLinkParameters {
|
702
|
+
/**
|
703
|
+
* The developer-defined unique ID for the sub-entity to which this deep link points in the current entity.
|
704
|
+
* This field should be used to restore to a specific state within an entity, such as scrolling to or activating a specific piece of content.
|
705
|
+
*/
|
706
|
+
subEntityId: string;
|
707
|
+
/**
|
708
|
+
* The label for the sub-entity that should be displayed when the deep link is rendered in a client.
|
709
|
+
*/
|
710
|
+
subEntityLabel: string;
|
711
|
+
/**
|
712
|
+
* The fallback URL to which to navigate the user if the client cannot render the page.
|
713
|
+
* This URL should lead directly to the sub-entity.
|
714
|
+
*/
|
715
|
+
subEntityWebUrl?: string;
|
716
|
+
}
|
717
|
+
/**
|
718
|
+
* @hidden
|
719
|
+
* Shared Dialog Properties
|
720
|
+
*/
|
721
|
+
export interface BaseDialogInfo {
|
722
|
+
/**
|
723
|
+
* The requested size of the dialog
|
724
|
+
*/
|
725
|
+
size: DialogSize;
|
726
|
+
/**
|
727
|
+
* Title of the dialog module.
|
728
|
+
*/
|
729
|
+
title?: string;
|
730
|
+
}
|
731
|
+
/**
|
732
|
+
* Data structure to describe dialog information needed to open an Adaptive Card-based dialog.
|
733
|
+
*/
|
734
|
+
export interface AdaptiveCardDialogInfo extends BaseDialogInfo {
|
735
|
+
/**
|
736
|
+
* JSON defining an Adaptive Card.
|
737
|
+
*/
|
738
|
+
card: string;
|
739
|
+
}
|
740
|
+
/**
|
741
|
+
* Data structure to describe dialog information needed to open a bot-based Adaptive Card-based dialog.
|
742
|
+
*/
|
743
|
+
export interface BotAdaptiveCardDialogInfo extends AdaptiveCardDialogInfo {
|
744
|
+
/**
|
745
|
+
* Specifies a bot ID to send the result of the user's interaction with the dialog module.
|
746
|
+
* The bot will receive a task/complete invoke event with a JSON object
|
747
|
+
* in the event payload.
|
748
|
+
*/
|
749
|
+
completionBotId: string;
|
750
|
+
}
|
751
|
+
/**
|
752
|
+
* Data structure to represent the size of a dialog
|
753
|
+
*/
|
754
|
+
export interface DialogSize {
|
755
|
+
/**
|
756
|
+
* The requested height of the webview/iframe.
|
757
|
+
*/
|
758
|
+
height: DialogDimension | number;
|
759
|
+
/**
|
760
|
+
* The requested width of the webview/iframe.
|
761
|
+
*/
|
762
|
+
width: DialogDimension | number;
|
763
|
+
}
|
764
|
+
/**
|
765
|
+
* Data structure to describe dialog information needed to open a url-based dialog.
|
766
|
+
*/
|
767
|
+
export interface UrlDialogInfo extends BaseDialogInfo {
|
768
|
+
/**
|
769
|
+
* The url to be rendered in the webview/iframe.
|
770
|
+
*
|
771
|
+
* @remarks
|
772
|
+
* The domain of the url must match at least one of the
|
773
|
+
* valid domains specified in the [validDomains block](https://learn.microsoft.com/microsoftteams/platform/resources/schema/manifest-schema#validdomains) of the app manifest
|
774
|
+
*/
|
775
|
+
url: string;
|
776
|
+
/**
|
777
|
+
* If client doesnt support the URL, the URL that needs to be opened in the browser.
|
778
|
+
*/
|
779
|
+
fallbackUrl?: string;
|
780
|
+
}
|
781
|
+
/**
|
782
|
+
* Data structure to describe dialog information needed to open a bot based dialog.
|
783
|
+
*/
|
784
|
+
export interface BotUrlDialogInfo extends UrlDialogInfo {
|
785
|
+
/**
|
786
|
+
* Specifies a bot ID to send the result of the user's interaction with the task module.
|
787
|
+
* The bot will receive a task/complete invoke event with a JSON object
|
788
|
+
* in the event payload.
|
789
|
+
*/
|
790
|
+
completionBotId: string;
|
791
|
+
}
|
792
|
+
/**
|
793
|
+
* Data structure to describe dialog information
|
794
|
+
*/
|
795
|
+
export interface DialogInfo {
|
796
|
+
/**
|
797
|
+
* The url to be rendered in the webview/iframe.
|
798
|
+
*
|
799
|
+
* @remarks
|
800
|
+
* The domain of the url must match at least one of the
|
801
|
+
* valid domains specified in the validDomains block of the manifest
|
802
|
+
*/
|
803
|
+
url?: string;
|
804
|
+
/**
|
805
|
+
* JSON defining an adaptive card.
|
806
|
+
*/
|
807
|
+
card?: string;
|
808
|
+
/**
|
809
|
+
* The requested height of the webview/iframe.
|
810
|
+
*/
|
811
|
+
height?: DialogDimension | number;
|
812
|
+
/**
|
813
|
+
* The requested width of the webview/iframe.
|
814
|
+
*/
|
815
|
+
width?: DialogDimension | number;
|
816
|
+
/**
|
817
|
+
* Title of the task module.
|
818
|
+
*/
|
819
|
+
title?: string;
|
820
|
+
/**
|
821
|
+
* If client doesnt support the URL, the URL that needs to be opened in the browser.
|
822
|
+
*/
|
823
|
+
fallbackUrl?: string;
|
824
|
+
/**
|
825
|
+
* Specifies a bot ID to send the result of the user's interaction with the task module.
|
826
|
+
* If specified, the bot will receive a task/complete invoke event with a JSON object
|
827
|
+
* in the event payload.
|
828
|
+
*/
|
829
|
+
completionBotId?: string;
|
830
|
+
}
|
831
|
+
/**
|
832
|
+
* @deprecated
|
833
|
+
* As of TeamsJS v2.0.0, please use {@link DialogInfo} instead.
|
834
|
+
*/
|
835
|
+
export type TaskInfo = DialogInfo;
|
836
|
+
/**
|
837
|
+
* @beta
|
838
|
+
* Data structure to be used with the {@link app.lifecycle.registerOnResumeHandler app.lifecycle.registerOnResumeHandler(handler: (context: ResumeContext) => void): void} to pass the context to the app.
|
839
|
+
*/
|
840
|
+
export interface ResumeContext {
|
841
|
+
/**
|
842
|
+
* The entity that is requested to be loaded
|
843
|
+
*/
|
844
|
+
entityId: string;
|
845
|
+
/**
|
846
|
+
* The content URL that is requested to be loaded
|
847
|
+
*/
|
848
|
+
contentUrl: URL;
|
849
|
+
}
|
850
|
+
/**
|
851
|
+
* @deprecated
|
852
|
+
* As of 2.14.1, please use {@link ResumeContext} instead.
|
853
|
+
*/
|
854
|
+
export interface LoadContext {
|
855
|
+
/**
|
856
|
+
* The entity that is requested to be loaded
|
857
|
+
*/
|
858
|
+
entityId: string;
|
859
|
+
/**
|
860
|
+
* The content URL that is requested to be loaded
|
861
|
+
*/
|
862
|
+
contentUrl: string;
|
863
|
+
}
|
864
|
+
/** Represents information about a frame within a tab or dialog module. */
|
865
|
+
export interface FrameInfo {
|
866
|
+
/**
|
867
|
+
* The current URL that needs to be used in the iframe if the tab is reloaded
|
868
|
+
*/
|
869
|
+
contentUrl: string;
|
870
|
+
/**
|
871
|
+
* The current URL that needs to be used for opening the website when the user clicks on 'Go to website'
|
872
|
+
*/
|
873
|
+
websiteUrl: string;
|
874
|
+
}
|
875
|
+
/**
|
876
|
+
* @deprecated
|
877
|
+
* As of TeamsJS v2.0.0, please use {@link FrameInfo} instead.
|
878
|
+
*/
|
879
|
+
export type FrameContext = FrameInfo;
|
880
|
+
/** Represents an error that occurs during the execution of an app or integration. */
|
881
|
+
export interface SdkError {
|
882
|
+
/**
|
883
|
+
error code
|
884
|
+
*/
|
885
|
+
errorCode: ErrorCode;
|
886
|
+
/**
|
887
|
+
Optional description for the error. This may contain useful information for web-app developers.
|
888
|
+
This string will not be localized and is not for end-user consumption.
|
889
|
+
App should not depend on the string content. The exact value may change. This is only for debugging purposes.
|
890
|
+
*/
|
891
|
+
message?: string;
|
892
|
+
}
|
893
|
+
export declare function isSdkError(err: unknown): err is SdkError;
|
894
|
+
/** Error codes used to identify different types of errors that can occur while developing apps. */
|
895
|
+
export declare enum ErrorCode {
|
896
|
+
/**
|
897
|
+
* API not supported in the current platform.
|
898
|
+
*/
|
899
|
+
NOT_SUPPORTED_ON_PLATFORM = 100,
|
900
|
+
/**
|
901
|
+
* Internal error encountered while performing the required operation.
|
902
|
+
*/
|
903
|
+
INTERNAL_ERROR = 500,
|
904
|
+
/**
|
905
|
+
* API is not supported in the current context
|
906
|
+
*/
|
907
|
+
NOT_SUPPORTED_IN_CURRENT_CONTEXT = 501,
|
908
|
+
/**
|
909
|
+
Permissions denied by user
|
910
|
+
*/
|
911
|
+
PERMISSION_DENIED = 1000,
|
912
|
+
/**
|
913
|
+
* Network issue
|
914
|
+
*/
|
915
|
+
NETWORK_ERROR = 2000,
|
916
|
+
/**
|
917
|
+
* Underlying hardware doesn't support the capability
|
918
|
+
*/
|
919
|
+
NO_HW_SUPPORT = 3000,
|
920
|
+
/**
|
921
|
+
* One or more arguments are invalid
|
922
|
+
*/
|
923
|
+
INVALID_ARGUMENTS = 4000,
|
924
|
+
/**
|
925
|
+
* User is not authorized for this operation
|
926
|
+
*/
|
927
|
+
UNAUTHORIZED_USER_OPERATION = 5000,
|
928
|
+
/**
|
929
|
+
* Could not complete the operation due to insufficient resources
|
930
|
+
*/
|
931
|
+
INSUFFICIENT_RESOURCES = 6000,
|
932
|
+
/**
|
933
|
+
* Platform throttled the request because of API was invoked too frequently
|
934
|
+
*/
|
935
|
+
THROTTLE = 7000,
|
936
|
+
/**
|
937
|
+
* User aborted the operation
|
938
|
+
*/
|
939
|
+
USER_ABORT = 8000,
|
940
|
+
/**
|
941
|
+
* Could not complete the operation in the given time interval
|
942
|
+
*/
|
943
|
+
OPERATION_TIMED_OUT = 8001,
|
944
|
+
/**
|
945
|
+
* Platform code is old and doesn't implement this API
|
946
|
+
*/
|
947
|
+
OLD_PLATFORM = 9000,
|
948
|
+
/**
|
949
|
+
* The file specified was not found on the given location
|
950
|
+
*/
|
951
|
+
FILE_NOT_FOUND = 404,
|
952
|
+
/**
|
953
|
+
* The return value is too big and has exceeded our size boundries
|
954
|
+
*/
|
955
|
+
SIZE_EXCEEDED = 10000
|
956
|
+
}
|
957
|
+
/** @hidden */
|
958
|
+
export declare enum DevicePermission {
|
959
|
+
GeoLocation = "geolocation",
|
960
|
+
Media = "media"
|
961
|
+
}
|
962
|
+
/** @hidden */
|
963
|
+
export interface HostVersionsInfo {
|
964
|
+
adaptiveCardSchemaVersion?: AdaptiveCardVersion;
|
965
|
+
appEligibilityInformation?: AppEligibilityInformation;
|
966
|
+
}
|
967
|
+
/**
|
968
|
+
* Represents the major and minor versions of the Adaptive Card schema in the current host
|
969
|
+
*/
|
970
|
+
export interface AdaptiveCardVersion {
|
971
|
+
/** Represents the major version number. */
|
972
|
+
majorVersion: number;
|
973
|
+
/** Represents the minor version number. */
|
974
|
+
minorVersion: number;
|
975
|
+
}
|
976
|
+
/**
|
977
|
+
* @hidden
|
978
|
+
* Eligibility Information for the app user.
|
979
|
+
*
|
980
|
+
* @beta
|
981
|
+
*/
|
982
|
+
export interface AppEligibilityInformation {
|
983
|
+
/**
|
984
|
+
* Describes the user’s age group, which can have implications on which product they are able to use.
|
985
|
+
*/
|
986
|
+
ageGroup: LegalAgeGroupClassification | null;
|
987
|
+
/**
|
988
|
+
* Describes the user’s chat experience based on their eligible licenses & their tenant’s eligible licenses.
|
989
|
+
* A user will be in at most one cohort.
|
990
|
+
*/
|
991
|
+
cohort: Cohort | null;
|
992
|
+
/**
|
993
|
+
* Indicates that the user is eligible for Microsoft Entra ID Authenticated Copilot experience.
|
994
|
+
*/
|
995
|
+
isCopilotEligible: boolean;
|
996
|
+
/**
|
997
|
+
* Implementation may change to be based on tenant-home region rather than IP.
|
998
|
+
*/
|
999
|
+
isCopilotEnabledRegion: boolean;
|
1000
|
+
/**
|
1001
|
+
* Indicates if the tenant admin has opted the user out of Copilot.
|
1002
|
+
*/
|
1003
|
+
isOptedOutByAdmin: boolean;
|
1004
|
+
/**
|
1005
|
+
* Education Eligibility Information for the app user
|
1006
|
+
*/
|
1007
|
+
userClassification: UserClassification | null;
|
1008
|
+
}
|
1009
|
+
/**
|
1010
|
+
* @hidden
|
1011
|
+
*
|
1012
|
+
* @beta
|
1013
|
+
*/
|
1014
|
+
export interface UserClassificationWithEduType {
|
1015
|
+
/**
|
1016
|
+
* For EDU tenants only. Indicates if the tenant is higher ed or K12.
|
1017
|
+
*/
|
1018
|
+
eduType: EduType;
|
1019
|
+
/**
|
1020
|
+
* Describes additional traits of the user that contribute to FRE experience, etc.
|
1021
|
+
*/
|
1022
|
+
persona: Persona.Faculty | Persona.Student;
|
1023
|
+
}
|
1024
|
+
/**
|
1025
|
+
* @hidden
|
1026
|
+
*
|
1027
|
+
* @beta
|
1028
|
+
*/
|
1029
|
+
export interface UserClassificationWithOtherType {
|
1030
|
+
persona: Persona.Other;
|
1031
|
+
}
|
1032
|
+
/**
|
1033
|
+
* @hidden
|
1034
|
+
*
|
1035
|
+
* @beta
|
1036
|
+
*/
|
1037
|
+
export type UserClassification = UserClassificationWithEduType | UserClassificationWithOtherType;
|
1038
|
+
/**
|
1039
|
+
* @hidden
|
1040
|
+
*
|
1041
|
+
* @beta
|
1042
|
+
*/
|
1043
|
+
export declare enum Cohort {
|
1044
|
+
BCAIS = "bcais",
|
1045
|
+
BCWAF = "bcwaf",
|
1046
|
+
BCWBF = "bcwbf"
|
1047
|
+
}
|
1048
|
+
/**
|
1049
|
+
* @hidden
|
1050
|
+
*
|
1051
|
+
* @beta
|
1052
|
+
*/
|
1053
|
+
export declare enum Persona {
|
1054
|
+
/**
|
1055
|
+
* User has a faculty license
|
1056
|
+
*/
|
1057
|
+
Faculty = "faculty",
|
1058
|
+
/**
|
1059
|
+
* User has a student license
|
1060
|
+
*/
|
1061
|
+
Student = "student",
|
1062
|
+
/**
|
1063
|
+
* When user is not a faculty or student
|
1064
|
+
*/
|
1065
|
+
Other = "other"
|
1066
|
+
}
|
1067
|
+
/**
|
1068
|
+
* @hidden
|
1069
|
+
*
|
1070
|
+
* @beta
|
1071
|
+
*/
|
1072
|
+
export declare enum LegalAgeGroupClassification {
|
1073
|
+
/**
|
1074
|
+
* The user is considered an adult based on the age-related regulations of their country or region.
|
1075
|
+
*/
|
1076
|
+
Adult = "adult",
|
1077
|
+
/**
|
1078
|
+
* The user is a minor but is from a country or region that has no age-related regulations.
|
1079
|
+
*/
|
1080
|
+
MinorNoParentalConsentRequired = "minorNoParentalConsentRequired",
|
1081
|
+
/**
|
1082
|
+
* Reserved for future use
|
1083
|
+
*/
|
1084
|
+
MinorWithoutParentalConsent = "minorWithoutParentalConsent",
|
1085
|
+
/**
|
1086
|
+
* The user is considered a minor based on the age-related regulations of their country or region, and the administrator
|
1087
|
+
* of the account obtained appropriate consent from a parent or guardian.
|
1088
|
+
*/
|
1089
|
+
MinorWithParentalConsent = "minorWithParentalConsent",
|
1090
|
+
/**
|
1091
|
+
* The user is from a country or region that has additional age-related regulations, such as the United States,
|
1092
|
+
* United Kingdom, European Union, or South Korea, and the user's age is between a minor and an adult age
|
1093
|
+
* (as stipulated based on country or region). Generally, this means that teenagers are considered as notAdult in regulated countries.
|
1094
|
+
*/
|
1095
|
+
NonAdult = "nonAdult"
|
1096
|
+
}
|
1097
|
+
/**
|
1098
|
+
* @hidden
|
1099
|
+
*
|
1100
|
+
* @beta
|
1101
|
+
*/
|
1102
|
+
export declare enum EduType {
|
1103
|
+
/**
|
1104
|
+
* User is from a tenant labeled as “HigherEd”
|
1105
|
+
*/
|
1106
|
+
HigherEducation = "higherEducation",
|
1107
|
+
/**
|
1108
|
+
* User is from a tenant labeled as “K12”
|
1109
|
+
*/
|
1110
|
+
K12 = "k12",
|
1111
|
+
/**
|
1112
|
+
* User is from a tenant labeled as “Others” (e.g. research institutions)
|
1113
|
+
*/
|
1114
|
+
Other = "other"
|
1115
|
+
}
|
1116
|
+
/**
|
1117
|
+
* Currently supported Mime type
|
1118
|
+
*/
|
1119
|
+
export declare enum ClipboardSupportedMimeType {
|
1120
|
+
TextPlain = "text/plain",
|
1121
|
+
TextHtml = "text/html",
|
1122
|
+
ImagePNG = "image/png",
|
1123
|
+
ImageJPEG = "image/jpeg"
|
1124
|
+
}
|
1125
|
+
/**
|
1126
|
+
* Clipboard write parameters
|
1127
|
+
*/
|
1128
|
+
export interface ClipboardParams {
|
1129
|
+
/** Mime Type of data to be copied to Clipboard */
|
1130
|
+
mimeType: ClipboardSupportedMimeType;
|
1131
|
+
/** Blob content in Base64 string format */
|
1132
|
+
content: string;
|
1133
|
+
}
|