@microsoft/app-manifest 1.0.0-alpha.0d2dd4439.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 (106) hide show
  1. package/LICENSE +23 -0
  2. package/README.md +115 -0
  3. package/build/ManifestCommonProperties.d.ts +30 -0
  4. package/build/ManifestCommonProperties.js +5 -0
  5. package/build/ManifestCommonProperties.js.map +1 -0
  6. package/build/constants.d.ts +1 -0
  7. package/build/constants.js +7 -0
  8. package/build/constants.js.map +1 -0
  9. package/build/declarativeCopilotManifest.d.ts +67 -0
  10. package/build/declarativeCopilotManifest.js +15 -0
  11. package/build/declarativeCopilotManifest.js.map +1 -0
  12. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D0.d.ts +163 -0
  13. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D0.js +214 -0
  14. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D0.js.map +1 -0
  15. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D2.d.ts +185 -0
  16. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D2.js +220 -0
  17. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D2.js.map +1 -0
  18. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D3.d.ts +285 -0
  19. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D3.js +248 -0
  20. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D3.js.map +1 -0
  21. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D4.d.ts +292 -0
  22. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D4.js +259 -0
  23. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D4.js.map +1 -0
  24. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D1.d.ts +429 -0
  25. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D1.js +289 -0
  26. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D1.js.map +1 -0
  27. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D2.d.ts +439 -0
  28. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D2.js +298 -0
  29. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D2.js.map +1 -0
  30. package/build/generated-types/index.d.ts +174 -0
  31. package/build/generated-types/index.js +444 -0
  32. package/build/generated-types/index.js.map +1 -0
  33. package/build/generated-types/teams/TeamsManifestV1D0.d.ts +268 -0
  34. package/build/generated-types/teams/TeamsManifestV1D0.js +265 -0
  35. package/build/generated-types/teams/TeamsManifestV1D0.js.map +1 -0
  36. package/build/generated-types/teams/TeamsManifestV1D1.d.ts +268 -0
  37. package/build/generated-types/teams/TeamsManifestV1D1.js +266 -0
  38. package/build/generated-types/teams/TeamsManifestV1D1.js.map +1 -0
  39. package/build/generated-types/teams/TeamsManifestV1D10.d.ts +589 -0
  40. package/build/generated-types/teams/TeamsManifestV1D10.js +448 -0
  41. package/build/generated-types/teams/TeamsManifestV1D10.js.map +1 -0
  42. package/build/generated-types/teams/TeamsManifestV1D11.d.ts +603 -0
  43. package/build/generated-types/teams/TeamsManifestV1D11.js +447 -0
  44. package/build/generated-types/teams/TeamsManifestV1D11.js.map +1 -0
  45. package/build/generated-types/teams/TeamsManifestV1D12.d.ts +638 -0
  46. package/build/generated-types/teams/TeamsManifestV1D12.js +461 -0
  47. package/build/generated-types/teams/TeamsManifestV1D12.js.map +1 -0
  48. package/build/generated-types/teams/TeamsManifestV1D13.d.ts +640 -0
  49. package/build/generated-types/teams/TeamsManifestV1D13.js +461 -0
  50. package/build/generated-types/teams/TeamsManifestV1D13.js.map +1 -0
  51. package/build/generated-types/teams/TeamsManifestV1D14.d.ts +651 -0
  52. package/build/generated-types/teams/TeamsManifestV1D14.js +467 -0
  53. package/build/generated-types/teams/TeamsManifestV1D14.js.map +1 -0
  54. package/build/generated-types/teams/TeamsManifestV1D15.d.ts +656 -0
  55. package/build/generated-types/teams/TeamsManifestV1D15.js +468 -0
  56. package/build/generated-types/teams/TeamsManifestV1D15.js.map +1 -0
  57. package/build/generated-types/teams/TeamsManifestV1D16.d.ts +659 -0
  58. package/build/generated-types/teams/TeamsManifestV1D16.js +471 -0
  59. package/build/generated-types/teams/TeamsManifestV1D16.js.map +1 -0
  60. package/build/generated-types/teams/TeamsManifestV1D17.d.ts +1212 -0
  61. package/build/generated-types/teams/TeamsManifestV1D17.js +733 -0
  62. package/build/generated-types/teams/TeamsManifestV1D17.js.map +1 -0
  63. package/build/generated-types/teams/TeamsManifestV1D19.d.ts +1238 -0
  64. package/build/generated-types/teams/TeamsManifestV1D19.js +742 -0
  65. package/build/generated-types/teams/TeamsManifestV1D19.js.map +1 -0
  66. package/build/generated-types/teams/TeamsManifestV1D2.d.ts +268 -0
  67. package/build/generated-types/teams/TeamsManifestV1D2.js +266 -0
  68. package/build/generated-types/teams/TeamsManifestV1D2.js.map +1 -0
  69. package/build/generated-types/teams/TeamsManifestV1D20.d.ts +1420 -0
  70. package/build/generated-types/teams/TeamsManifestV1D20.js +818 -0
  71. package/build/generated-types/teams/TeamsManifestV1D20.js.map +1 -0
  72. package/build/generated-types/teams/TeamsManifestV1D3.d.ts +280 -0
  73. package/build/generated-types/teams/TeamsManifestV1D3.js +279 -0
  74. package/build/generated-types/teams/TeamsManifestV1D3.js.map +1 -0
  75. package/build/generated-types/teams/TeamsManifestV1D4.d.ts +333 -0
  76. package/build/generated-types/teams/TeamsManifestV1D4.js +316 -0
  77. package/build/generated-types/teams/TeamsManifestV1D4.js.map +1 -0
  78. package/build/generated-types/teams/TeamsManifestV1D5.d.ts +423 -0
  79. package/build/generated-types/teams/TeamsManifestV1D5.js +357 -0
  80. package/build/generated-types/teams/TeamsManifestV1D5.js.map +1 -0
  81. package/build/generated-types/teams/TeamsManifestV1D6.d.ts +428 -0
  82. package/build/generated-types/teams/TeamsManifestV1D6.js +359 -0
  83. package/build/generated-types/teams/TeamsManifestV1D6.js.map +1 -0
  84. package/build/generated-types/teams/TeamsManifestV1D7.d.ts +444 -0
  85. package/build/generated-types/teams/TeamsManifestV1D7.js +369 -0
  86. package/build/generated-types/teams/TeamsManifestV1D7.js.map +1 -0
  87. package/build/generated-types/teams/TeamsManifestV1D8.d.ts +466 -0
  88. package/build/generated-types/teams/TeamsManifestV1D8.js +386 -0
  89. package/build/generated-types/teams/TeamsManifestV1D8.js.map +1 -0
  90. package/build/generated-types/teams/TeamsManifestV1D9.d.ts +532 -0
  91. package/build/generated-types/teams/TeamsManifestV1D9.js +420 -0
  92. package/build/generated-types/teams/TeamsManifestV1D9.js.map +1 -0
  93. package/build/generated-types/teams/TeamsManifestVDevPreview.d.ts +2219 -0
  94. package/build/generated-types/teams/TeamsManifestVDevPreview.js +1090 -0
  95. package/build/generated-types/teams/TeamsManifestVDevPreview.js.map +1 -0
  96. package/build/index.d.ts +88 -0
  97. package/build/index.js +247 -0
  98. package/build/index.js.map +1 -0
  99. package/build/manifest.d.ts +521 -0
  100. package/build/manifest.js +61 -0
  101. package/build/manifest.js.map +1 -0
  102. package/build/pluginManifest.d.ts +143 -0
  103. package/build/pluginManifest.js +3 -0
  104. package/build/pluginManifest.js.map +1 -0
  105. package/build/tsconfig.tsbuildinfo +1 -0
  106. package/package.json +68 -0
@@ -0,0 +1,532 @@
1
+ export interface TeamsManifestV1D9 {
2
+ $schema?: string;
3
+ /**
4
+ * The version of the schema this manifest is using.
5
+ */
6
+ manifestVersion: "1.9";
7
+ /**
8
+ * The version of the app. Changes to your manifest should cause a version change. This
9
+ * version string must follow the semver standard (http://semver.org).
10
+ */
11
+ version: string;
12
+ /**
13
+ * A unique identifier for this app. This id must be a GUID.
14
+ */
15
+ id: string;
16
+ /**
17
+ * A unique identifier for this app in reverse domain notation. E.g: com.example.myapp
18
+ */
19
+ packageName?: string;
20
+ localizationInfo?: LocalizationInfo;
21
+ developer: Developer;
22
+ name: Name;
23
+ description: Description;
24
+ icons: Icons;
25
+ /**
26
+ * A color to use in conjunction with the icon. The value must be a valid HTML color code
27
+ * starting with '#', for example `#4464ee`.
28
+ */
29
+ accentColor: string;
30
+ /**
31
+ * These are tabs users can optionally add to their channels and 1:1 or group chats and
32
+ * require extra configuration before they are added. Configurable tabs are not supported in
33
+ * the personal scope. Currently only one configurable tab per app is supported.
34
+ */
35
+ configurableTabs?: ConfigurableTab[];
36
+ /**
37
+ * A set of tabs that may be 'pinned' by default, without the user adding them manually.
38
+ * Static tabs declared in personal scope are always pinned to the app's personal
39
+ * experience. Static tabs do not currently support the 'teams' scope.
40
+ */
41
+ staticTabs?: StaticTab[];
42
+ /**
43
+ * The set of bots for this app. Currently only one bot per app is supported.
44
+ */
45
+ bots?: Bot[];
46
+ /**
47
+ * The set of Office365 connectors for this app. Currently only one connector per app is
48
+ * supported.
49
+ */
50
+ connectors?: Connector[];
51
+ /**
52
+ * The set of compose extensions for this app. Currently only one compose extension per app
53
+ * is supported.
54
+ */
55
+ composeExtensions?: ComposeExtension[];
56
+ /**
57
+ * Specifies the permissions the app requests from users.
58
+ */
59
+ permissions?: Permission[];
60
+ /**
61
+ * Specify the native features on a user's device that your app may request access to.
62
+ */
63
+ devicePermissions?: DevicePermission[];
64
+ /**
65
+ * A list of valid domains from which the tabs expect to load any content. Domain listings
66
+ * can include wildcards, for example `*.example.com`. If your tab configuration or content
67
+ * UI needs to navigate to any other domain besides the one use for tab configuration, that
68
+ * domain must be specified here.
69
+ */
70
+ validDomains?: string[];
71
+ /**
72
+ * Specify your AAD App ID and Graph information to help users seamlessly sign into your AAD
73
+ * app.
74
+ */
75
+ webApplicationInfo?: WebApplicationInfo;
76
+ /**
77
+ * A value indicating whether or not show loading indicator when app/tab is loading
78
+ */
79
+ showLoadingIndicator?: boolean;
80
+ /**
81
+ * A value indicating whether a personal app is rendered without a tab header-bar
82
+ */
83
+ isFullScreen?: boolean;
84
+ activities?: Activities;
85
+ /**
86
+ * The install scope defined for this app by default. This will be the option displayed on
87
+ * the button when a user tries to add the app
88
+ */
89
+ defaultInstallScope?: DefaultInstallScope;
90
+ /**
91
+ * When a group install scope is selected, this will define the default capability when the
92
+ * user installs the app
93
+ */
94
+ defaultGroupCapability?: DefaultGroupCapability;
95
+ }
96
+ export interface Activities {
97
+ /**
98
+ * Specify the types of activites that your app can post to a users activity feed
99
+ */
100
+ activityTypes?: ActivityType[];
101
+ }
102
+ export interface ActivityType {
103
+ type: string;
104
+ description: string;
105
+ templateText: string;
106
+ }
107
+ export interface Bot {
108
+ /**
109
+ * The Microsoft App ID specified for the bot in the Bot Framework portal
110
+ * (https://dev.botframework.com/bots)
111
+ */
112
+ botId: string;
113
+ /**
114
+ * This value describes whether or not the bot utilizes a user hint to add the bot to a
115
+ * specific channel.
116
+ */
117
+ needsChannelSelector?: boolean;
118
+ /**
119
+ * A value indicating whether or not the bot is a one-way notification only bot, as opposed
120
+ * to a conversational bot.
121
+ */
122
+ isNotificationOnly?: boolean;
123
+ /**
124
+ * A value indicating whether the bot supports uploading/downloading of files.
125
+ */
126
+ supportsFiles?: boolean;
127
+ /**
128
+ * A value indicating whether the bot supports audio calling.
129
+ */
130
+ supportsCalling?: boolean;
131
+ /**
132
+ * A value indicating whether the bot supports video calling.
133
+ */
134
+ supportsVideo?: boolean;
135
+ /**
136
+ * Specifies whether the bot offers an experience in the context of a channel in a team, in
137
+ * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
138
+ * options are non-exclusive.
139
+ */
140
+ scopes: CommandListScope[];
141
+ /**
142
+ * The list of commands that the bot supplies, including their usage, description, and the
143
+ * scope for which the commands are valid. A separate command list should be used for each
144
+ * scope.
145
+ */
146
+ commandLists?: CommandList[];
147
+ }
148
+ export interface CommandList {
149
+ /**
150
+ * Specifies the scopes for which the command list is valid
151
+ */
152
+ scopes: CommandListScope[];
153
+ commands: CommandListCommand[];
154
+ }
155
+ export interface CommandListCommand {
156
+ /**
157
+ * The bot command name
158
+ */
159
+ title: string;
160
+ /**
161
+ * A simple text description or an example of the command syntax and its arguments.
162
+ */
163
+ description: string;
164
+ }
165
+ export type CommandListScope = "team" | "personal" | "groupChat" | "groupchat";
166
+ export interface ComposeExtension {
167
+ /**
168
+ * The Microsoft App ID specified for the bot powering the compose extension in the Bot
169
+ * Framework portal (https://dev.botframework.com/bots)
170
+ */
171
+ botId: string;
172
+ /**
173
+ * A value indicating whether the configuration of a compose extension can be updated by the
174
+ * user.
175
+ */
176
+ canUpdateConfiguration?: boolean;
177
+ commands: ComposeExtensionCommand[];
178
+ /**
179
+ * A list of handlers that allow apps to be invoked when certain conditions are met
180
+ */
181
+ messageHandlers?: MessageHandler[];
182
+ }
183
+ export interface ComposeExtensionCommand {
184
+ /**
185
+ * Id of the command.
186
+ */
187
+ id: string;
188
+ /**
189
+ * Type of the command
190
+ */
191
+ type?: CommandType;
192
+ /**
193
+ * Context where the command would apply
194
+ */
195
+ context?: CommandContext[];
196
+ /**
197
+ * Title of the command.
198
+ */
199
+ title: string;
200
+ /**
201
+ * Description of the command.
202
+ */
203
+ description?: string;
204
+ /**
205
+ * A boolean value that indicates if the command should be run once initially with no
206
+ * parameter.
207
+ */
208
+ initialRun?: boolean;
209
+ /**
210
+ * A boolean value that indicates if it should fetch task module dynamically
211
+ */
212
+ fetchTask?: boolean;
213
+ parameters?: Parameter[];
214
+ taskInfo?: TaskInfo;
215
+ }
216
+ export type CommandContext = "compose" | "commandBox" | "message";
217
+ export interface Parameter {
218
+ /**
219
+ * Name of the parameter.
220
+ */
221
+ name: string;
222
+ /**
223
+ * Type of the parameter
224
+ */
225
+ inputType?: InputType;
226
+ /**
227
+ * Title of the parameter.
228
+ */
229
+ title: string;
230
+ /**
231
+ * Description of the parameter.
232
+ */
233
+ description?: string;
234
+ /**
235
+ * Initial value for the parameter
236
+ */
237
+ value?: string;
238
+ /**
239
+ * The choice options for the parameter
240
+ */
241
+ choices?: Choice[];
242
+ }
243
+ export interface Choice {
244
+ /**
245
+ * Title of the choice
246
+ */
247
+ title: string;
248
+ /**
249
+ * Value of the choice
250
+ */
251
+ value: string;
252
+ }
253
+ /**
254
+ * Type of the parameter
255
+ */
256
+ export type InputType = "text" | "textarea" | "number" | "date" | "time" | "toggle" | "choiceset";
257
+ export interface TaskInfo {
258
+ /**
259
+ * Initial dialog title
260
+ */
261
+ title?: string;
262
+ /**
263
+ * Dialog width - either a number in pixels or default layout such as 'large', 'medium', or
264
+ * 'small'
265
+ */
266
+ width?: string;
267
+ /**
268
+ * Dialog height - either a number in pixels or default layout such as 'large', 'medium', or
269
+ * 'small'
270
+ */
271
+ height?: string;
272
+ /**
273
+ * Initial webview URL
274
+ */
275
+ url?: string;
276
+ }
277
+ /**
278
+ * Type of the command
279
+ */
280
+ export type CommandType = "query" | "action";
281
+ export interface MessageHandler {
282
+ /**
283
+ * Type of the message handler
284
+ */
285
+ type: "link";
286
+ value: Value;
287
+ }
288
+ /**
289
+ * Type of the message handler
290
+ */
291
+ export interface Value {
292
+ /**
293
+ * A list of domains that the link message handler can register for, and when they are
294
+ * matched the app will be invoked
295
+ */
296
+ domains?: string[];
297
+ [property: string]: any;
298
+ }
299
+ export interface ConfigurableTab {
300
+ /**
301
+ * The url to use when configuring the tab.
302
+ */
303
+ configurationUrl: string;
304
+ /**
305
+ * A value indicating whether an instance of the tab's configuration can be updated by the
306
+ * user after creation.
307
+ */
308
+ canUpdateConfiguration?: boolean;
309
+ /**
310
+ * Specifies whether the tab offers an experience in the context of a channel in a team, in
311
+ * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
312
+ * options are non-exclusive. Currently, configurable tabs are only supported in the teams
313
+ * and groupchats scopes.
314
+ */
315
+ scopes: ConfigurableTabScope[];
316
+ /**
317
+ * The set of meetingSurfaceItem scopes that a tab belong to
318
+ */
319
+ meetingSurfaces?: MeetingSurface[];
320
+ /**
321
+ * The set of contextItem scopes that a tab belong to
322
+ */
323
+ context?: ConfigurableTabContext[];
324
+ /**
325
+ * The set of supportedPlatform scopes that a tab belong to
326
+ */
327
+ supportedPlatform?: SupportedPlatform[];
328
+ /**
329
+ * A relative file path to a tab preview image for use in SharePoint. Size 1024x768.
330
+ */
331
+ sharePointPreviewImage?: string;
332
+ /**
333
+ * Defines how your tab will be made available in SharePoint.
334
+ */
335
+ supportedSharePointHosts?: SupportedSharePointHost[];
336
+ }
337
+ export type ConfigurableTabContext = "personalTab" | "channelTab" | "privateChatTab" | "meetingChatTab" | "meetingDetailsTab" | "meetingSidePanel" | "meetingStage" | "callingSidePanel";
338
+ export type MeetingSurface = "sidePanel" | "stage";
339
+ export type ConfigurableTabScope = "team" | "groupChat" | "groupchat";
340
+ export type SupportedPlatform = "desktop" | "mobile" | "teamsMeetingDevices";
341
+ export type SupportedSharePointHost = "sharePointFullPage" | "sharePointWebPart";
342
+ export interface Connector {
343
+ /**
344
+ * A unique identifier for the connector which matches its ID in the Connectors Developer
345
+ * Portal.
346
+ */
347
+ connectorId: string;
348
+ /**
349
+ * The url to use for configuring the connector using the inline configuration experience.
350
+ */
351
+ configurationUrl?: string;
352
+ /**
353
+ * Specifies whether the connector offers an experience in the context of a channel in a
354
+ * team, or an experience scoped to an individual user alone. Currently, only the team scope
355
+ * is supported.
356
+ */
357
+ scopes: "team"[];
358
+ }
359
+ /**
360
+ * When a group install scope is selected, this will define the default capability when the
361
+ * user installs the app
362
+ */
363
+ export interface DefaultGroupCapability {
364
+ /**
365
+ * When the install scope selected is Team, this field specifies the default capability
366
+ * available
367
+ */
368
+ team?: Groupchat;
369
+ /**
370
+ * When the install scope selected is GroupChat, this field specifies the default capability
371
+ * available
372
+ */
373
+ groupchat?: Groupchat;
374
+ /**
375
+ * When the install scope selected is Meetings, this field specifies the default capability
376
+ * available
377
+ */
378
+ meetings?: Groupchat;
379
+ }
380
+ /**
381
+ * When the install scope selected is GroupChat, this field specifies the default capability
382
+ * available
383
+ *
384
+ * When the install scope selected is Meetings, this field specifies the default capability
385
+ * available
386
+ *
387
+ * When the install scope selected is Team, this field specifies the default capability
388
+ * available
389
+ */
390
+ export type Groupchat = "tab" | "bot" | "connector";
391
+ /**
392
+ * The install scope defined for this app by default. This will be the option displayed on
393
+ * the button when a user tries to add the app
394
+ */
395
+ export type DefaultInstallScope = "personal" | "team" | "groupchat" | "groupChat" | "meetings";
396
+ export interface Description {
397
+ /**
398
+ * A short description of the app used when space is limited. Maximum length is 80
399
+ * characters.
400
+ */
401
+ short: string;
402
+ /**
403
+ * The full description of the app. Maximum length is 4000 characters.
404
+ */
405
+ full: string;
406
+ }
407
+ export interface Developer {
408
+ /**
409
+ * The display name for the developer.
410
+ */
411
+ name: string;
412
+ /**
413
+ * The Microsoft Partner Network ID that identifies the partner organization building the
414
+ * app. This field is not required, and should only be used if you are already part of the
415
+ * Microsoft Partner Network. More info at https://aka.ms/partner
416
+ */
417
+ mpnId?: string;
418
+ /**
419
+ * The url to the page that provides support information for the app.
420
+ */
421
+ websiteUrl: string;
422
+ /**
423
+ * The url to the page that provides privacy information for the app.
424
+ */
425
+ privacyUrl: string;
426
+ /**
427
+ * The url to the page that provides the terms of use for the app.
428
+ */
429
+ termsOfUseUrl: string;
430
+ }
431
+ export type DevicePermission = "geolocation" | "media" | "notifications" | "midi" | "openExternal";
432
+ export interface Icons {
433
+ /**
434
+ * A relative file path to a transparent PNG outline icon. The border color needs to be
435
+ * white. Size 32x32.
436
+ */
437
+ outline: string;
438
+ /**
439
+ * A relative file path to a full color PNG icon. Size 192x192.
440
+ */
441
+ color: string;
442
+ }
443
+ export interface LocalizationInfo {
444
+ /**
445
+ * The language tag of the strings in this top level manifest file.
446
+ */
447
+ defaultLanguageTag: string;
448
+ additionalLanguages?: AdditionalLanguage[];
449
+ }
450
+ export interface AdditionalLanguage {
451
+ /**
452
+ * The language tag of the strings in the provided file.
453
+ */
454
+ languageTag: string;
455
+ /**
456
+ * A relative file path to a the .json file containing the translated strings.
457
+ */
458
+ file: string;
459
+ }
460
+ export interface Name {
461
+ /**
462
+ * A short display name for the app.
463
+ */
464
+ short: string;
465
+ /**
466
+ * The full name of the app, used if the full app name exceeds 30 characters.
467
+ */
468
+ full?: string;
469
+ }
470
+ export type Permission = "identity" | "messageTeamMembers";
471
+ export interface StaticTab {
472
+ /**
473
+ * A unique identifier for the entity which the tab displays.
474
+ */
475
+ entityId: string;
476
+ /**
477
+ * The display name of the tab.
478
+ */
479
+ name?: string;
480
+ /**
481
+ * The url which points to the entity UI to be displayed in the Teams canvas.
482
+ */
483
+ contentUrl?: string;
484
+ /**
485
+ * The Microsoft App ID specified for the bot in the Bot Framework portal
486
+ * (https://dev.botframework.com/bots)
487
+ */
488
+ contentBotId?: string;
489
+ /**
490
+ * The url to point at if a user opts to view in a browser.
491
+ */
492
+ websiteUrl?: string;
493
+ /**
494
+ * The url to direct a user's search queries.
495
+ */
496
+ searchUrl?: string;
497
+ /**
498
+ * Specifies whether the tab offers an experience in the context of a channel in a team, or
499
+ * an experience scoped to an individual user alone. These options are non-exclusive.
500
+ * Currently static tabs are only supported in the 'personal' scope.
501
+ */
502
+ scopes: StaticTabScope[];
503
+ /**
504
+ * The set of contextItem scopes that a tab belong to
505
+ */
506
+ context?: StaticTabContext[];
507
+ /**
508
+ * The set of supportedPlatform scopes that a tab belong to
509
+ */
510
+ supportedPlatform?: SupportedPlatform[];
511
+ }
512
+ export type StaticTabContext = "personalTab" | "channelTab";
513
+ export type StaticTabScope = "team" | "personal";
514
+ /**
515
+ * Specify your AAD App ID and Graph information to help users seamlessly sign into your AAD
516
+ * app.
517
+ */
518
+ export interface WebApplicationInfo {
519
+ /**
520
+ * AAD application id of the app. This id must be a GUID.
521
+ */
522
+ id: string;
523
+ /**
524
+ * Resource url of app for acquiring auth token for SSO.
525
+ */
526
+ resource?: string;
527
+ applicationPermissions?: string[];
528
+ }
529
+ export declare class Convert {
530
+ static toTeamsManifestV1D9(json: string): TeamsManifestV1D9;
531
+ static teamsManifestV1D9ToJson(value: TeamsManifestV1D9): string;
532
+ }