@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.
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
+ }