@microsoft/teams-js 2.30.0 → 2.31.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/dist/esm/_virtual/__polyfill-node.os.js +1 -0
  2. package/dist/esm/_virtual/_polyfill-node.os.js +1 -0
  3. package/dist/esm/node_modules/.pnpm/debug@4.3.5/node_modules/debug/src/node.js +1 -1
  4. package/dist/esm/node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js +1 -0
  5. package/dist/esm/node_modules/.pnpm/supports-color@7.2.0/node_modules/supports-color/index.js +1 -0
  6. package/dist/esm/packages/teams-js/dts/index.d.ts +2 -0
  7. package/dist/esm/packages/teams-js/dts/internal/VideoFrameTypes.d.ts +78 -0
  8. package/dist/esm/packages/teams-js/dts/internal/appHelpers.d.ts +8 -0
  9. package/dist/esm/packages/teams-js/dts/internal/appIdValidation.d.ts +16 -0
  10. package/dist/esm/packages/teams-js/dts/internal/communication.d.ts +162 -0
  11. package/dist/esm/packages/teams-js/dts/internal/constants.d.ts +146 -0
  12. package/dist/esm/packages/teams-js/dts/internal/deepLinkConstants.d.ts +26 -0
  13. package/dist/esm/packages/teams-js/dts/internal/deepLinkUtilities.d.ts +4 -0
  14. package/dist/esm/packages/teams-js/dts/internal/emailAddressValidation.d.ts +1 -0
  15. package/dist/esm/packages/teams-js/dts/internal/globalVars.d.ts +12 -0
  16. package/dist/esm/packages/teams-js/dts/internal/handlers.d.ts +80 -0
  17. package/dist/esm/packages/teams-js/dts/internal/interfaces.d.ts +47 -0
  18. package/dist/esm/packages/teams-js/dts/internal/internalAPIs.d.ts +61 -0
  19. package/dist/esm/packages/teams-js/dts/internal/marketplaceUtils.d.ts +94 -0
  20. package/dist/esm/packages/teams-js/dts/internal/mediaUtil.d.ts +95 -0
  21. package/dist/esm/packages/teams-js/dts/internal/messageObjects.d.ts +73 -0
  22. package/dist/esm/packages/teams-js/dts/internal/nestedAppAuthUtils.d.ts +105 -0
  23. package/dist/esm/packages/teams-js/dts/internal/profileUtil.d.ts +11 -0
  24. package/dist/esm/packages/teams-js/dts/internal/responseHandler.d.ts +30 -0
  25. package/dist/esm/packages/teams-js/dts/internal/telemetry.d.ts +344 -0
  26. package/dist/esm/packages/teams-js/dts/internal/typeCheckUtilities.d.ts +1 -0
  27. package/dist/esm/packages/teams-js/dts/internal/utils.d.ts +200 -0
  28. package/dist/esm/packages/teams-js/dts/internal/uuidObject.d.ts +11 -0
  29. package/dist/esm/packages/teams-js/dts/internal/validOrigins.d.ts +6 -0
  30. package/dist/esm/packages/teams-js/dts/internal/videoEffectsUtils.d.ts +31 -0
  31. package/dist/esm/packages/teams-js/dts/internal/videoFrameTick.d.ts +10 -0
  32. package/dist/esm/packages/teams-js/dts/internal/videoPerformanceMonitor.d.ts +54 -0
  33. package/dist/esm/packages/teams-js/dts/internal/videoPerformanceStatistics.d.ts +49 -0
  34. package/dist/esm/packages/teams-js/dts/private/appEntity.d.ts +89 -0
  35. package/dist/esm/packages/teams-js/dts/private/constants.d.ts +9 -0
  36. package/dist/esm/packages/teams-js/dts/private/conversations.d.ts +152 -0
  37. package/dist/esm/packages/teams-js/dts/private/copilot.d.ts +39 -0
  38. package/dist/esm/packages/teams-js/dts/private/externalAppAuthentication.d.ts +378 -0
  39. package/dist/esm/packages/teams-js/dts/private/externalAppAuthenticationForCEA.d.ts +75 -0
  40. package/dist/esm/packages/teams-js/dts/private/externalAppCardActions.d.ts +112 -0
  41. package/dist/esm/packages/teams-js/dts/private/externalAppCardActionsForCEA.d.ts +49 -0
  42. package/dist/esm/packages/teams-js/dts/private/externalAppCommands.d.ts +123 -0
  43. package/dist/esm/packages/teams-js/dts/private/files.d.ts +758 -0
  44. package/dist/esm/packages/teams-js/dts/private/hostEntity.d.ts +176 -0
  45. package/dist/esm/packages/teams-js/dts/private/index.d.ts +20 -0
  46. package/dist/esm/packages/teams-js/dts/private/interfaces.d.ts +250 -0
  47. package/dist/esm/packages/teams-js/dts/private/logs.d.ts +25 -0
  48. package/dist/esm/packages/teams-js/dts/private/meetingRoom.d.ts +203 -0
  49. package/dist/esm/packages/teams-js/dts/private/messageChannels.d.ts +107 -0
  50. package/dist/esm/packages/teams-js/dts/private/notifications.d.ts +26 -0
  51. package/dist/esm/packages/teams-js/dts/private/otherAppStateChange.d.ts +81 -0
  52. package/dist/esm/packages/teams-js/dts/private/privateAPIs.d.ts +60 -0
  53. package/dist/esm/packages/teams-js/dts/private/remoteCamera.d.ts +298 -0
  54. package/dist/esm/packages/teams-js/dts/private/teams.d.ts +116 -0
  55. package/dist/esm/packages/teams-js/dts/private/videoEffectsEx.d.ts +244 -0
  56. package/dist/esm/packages/teams-js/dts/public/adaptiveCards.d.ts +6 -0
  57. package/dist/esm/packages/teams-js/dts/public/app.d.ts +592 -0
  58. package/dist/esm/packages/teams-js/dts/public/appId.d.ts +33 -0
  59. package/dist/esm/packages/teams-js/dts/public/appInitialization.d.ts +57 -0
  60. package/dist/esm/packages/teams-js/dts/public/appInstallDialog.d.ts +18 -0
  61. package/dist/esm/packages/teams-js/dts/public/appWindow.d.ts +66 -0
  62. package/dist/esm/packages/teams-js/dts/public/authentication.d.ts +409 -0
  63. package/dist/esm/packages/teams-js/dts/public/barCode.d.ts +53 -0
  64. package/dist/esm/packages/teams-js/dts/public/calendar.d.ts +40 -0
  65. package/dist/esm/packages/teams-js/dts/public/call.d.ts +53 -0
  66. package/dist/esm/packages/teams-js/dts/public/chat.d.ts +66 -0
  67. package/dist/esm/packages/teams-js/dts/public/clipboard.d.ts +34 -0
  68. package/dist/esm/packages/teams-js/dts/public/constants.d.ts +179 -0
  69. package/dist/esm/packages/teams-js/dts/public/dialog.d.ts +286 -0
  70. package/dist/esm/packages/teams-js/dts/public/emailAddress.d.ts +12 -0
  71. package/dist/esm/packages/teams-js/dts/public/geoLocation.d.ts +100 -0
  72. package/dist/esm/packages/teams-js/dts/public/index.d.ts +44 -0
  73. package/dist/esm/packages/teams-js/dts/public/interfaces.d.ts +1133 -0
  74. package/dist/esm/packages/teams-js/dts/public/liveShareHost.d.ts +221 -0
  75. package/dist/esm/packages/teams-js/dts/public/location.d.ts +86 -0
  76. package/dist/esm/packages/teams-js/dts/public/mail.d.ts +95 -0
  77. package/dist/esm/packages/teams-js/dts/public/marketplace.d.ts +321 -0
  78. package/dist/esm/packages/teams-js/dts/public/media.d.ts +440 -0
  79. package/dist/esm/packages/teams-js/dts/public/meeting.d.ts +906 -0
  80. package/dist/esm/packages/teams-js/dts/public/menus.d.ts +188 -0
  81. package/dist/esm/packages/teams-js/dts/public/monetization.d.ts +58 -0
  82. package/dist/esm/packages/teams-js/dts/public/navigation.d.ts +45 -0
  83. package/dist/esm/packages/teams-js/dts/public/nestedAppAuth.d.ts +15 -0
  84. package/dist/esm/packages/teams-js/dts/public/pages.d.ts +574 -0
  85. package/dist/esm/packages/teams-js/dts/public/people.d.ts +75 -0
  86. package/dist/esm/packages/teams-js/dts/public/profile.d.ts +127 -0
  87. package/dist/esm/packages/teams-js/dts/public/publicAPIs.d.ts +218 -0
  88. package/dist/esm/packages/teams-js/dts/public/runtime.d.ts +207 -0
  89. package/dist/esm/packages/teams-js/dts/public/search.d.ts +91 -0
  90. package/dist/esm/packages/teams-js/dts/public/secondaryBrowser.d.ts +32 -0
  91. package/dist/esm/packages/teams-js/dts/public/serializable.interface.d.ts +17 -0
  92. package/dist/esm/packages/teams-js/dts/public/settings.d.ts +101 -0
  93. package/dist/esm/packages/teams-js/dts/public/sharing.d.ts +124 -0
  94. package/dist/esm/packages/teams-js/dts/public/stageView.d.ts +104 -0
  95. package/dist/esm/packages/teams-js/dts/public/tasks.d.ts +62 -0
  96. package/dist/esm/packages/teams-js/dts/public/teamsAPIs.d.ts +77 -0
  97. package/dist/esm/packages/teams-js/dts/public/thirdPartyCloudStorage.d.ts +119 -0
  98. package/dist/esm/packages/teams-js/dts/public/version.d.ts +5 -0
  99. package/dist/esm/packages/teams-js/dts/public/videoEffects.d.ts +213 -0
  100. package/dist/esm/packages/teams-js/dts/public/visualMedia.d.ts +192 -0
  101. package/dist/esm/packages/teams-js/dts/public/webStorage.d.ts +27 -0
  102. package/dist/esm/packages/teams-js/src/index.js +1 -1
  103. package/dist/esm/packages/teams-js/src/internal/appHelpers.js +1 -0
  104. package/dist/esm/packages/teams-js/src/internal/communication.js +1 -1
  105. package/dist/esm/packages/teams-js/src/internal/deepLinkUtilities.js +1 -1
  106. package/dist/esm/packages/teams-js/src/internal/responseHandler.js +1 -0
  107. package/dist/esm/packages/teams-js/src/private/externalAppAuthentication.js +1 -1
  108. package/dist/esm/packages/teams-js/src/private/externalAppAuthenticationForCEA.js +1 -1
  109. package/dist/esm/packages/teams-js/src/private/hostEntity.js +1 -1
  110. package/dist/esm/packages/teams-js/src/private/videoEffectsEx.js +1 -1
  111. package/dist/esm/packages/teams-js/src/public/app.js +1 -1
  112. package/dist/esm/packages/teams-js/src/public/appId.js +1 -1
  113. package/dist/esm/packages/teams-js/src/public/appInitialization.js +1 -1
  114. package/dist/esm/packages/teams-js/src/public/appInstallDialog.js +1 -1
  115. package/dist/esm/packages/teams-js/src/public/authentication.js +1 -1
  116. package/dist/esm/packages/teams-js/src/public/barCode.js +1 -1
  117. package/dist/esm/packages/teams-js/src/public/calendar.js +1 -1
  118. package/dist/esm/packages/teams-js/src/public/call.js +1 -1
  119. package/dist/esm/packages/teams-js/src/public/clipboard.js +1 -1
  120. package/dist/esm/packages/teams-js/src/public/constants.js +1 -1
  121. package/dist/esm/packages/teams-js/src/public/pages.js +1 -1
  122. package/dist/esm/packages/teams-js/src/public/publicAPIs.js +1 -1
  123. package/dist/esm/packages/teams-js/src/public/serializable.interface.js +1 -0
  124. package/dist/esm/packages/teams-js/src/public/settings.js +1 -1
  125. package/dist/esm/packages/teams-js/src/public/tasks.js +1 -1
  126. package/dist/esm/packages/teams-js/src/public/version.js +1 -1
  127. package/dist/esm/packages/teams-js/src/public/webStorage.js +1 -1
  128. package/dist/umd/MicrosoftTeams.d.ts +10740 -10768
  129. package/dist/umd/MicrosoftTeams.js +1571 -1359
  130. package/dist/umd/MicrosoftTeams.js.map +1 -1
  131. package/dist/umd/MicrosoftTeams.min.js +1 -1
  132. package/dist/umd/MicrosoftTeams.min.js.map +1 -1
  133. package/package.json +1 -51
  134. 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
+ }