@microsoft/app-manifest 1.0.0-alpha.cdc23356f.0 → 1.0.0-alpha.e3f6ce706.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 (92) hide show
  1. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D0.d.ts +30 -30
  2. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D0.js +10 -10
  3. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D0.js.map +1 -1
  4. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D2.d.ts +29 -29
  5. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D2.js +10 -10
  6. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D2.js.map +1 -1
  7. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D3.d.ts +30 -43
  8. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D3.js +11 -16
  9. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D3.js.map +1 -1
  10. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D4.d.ts +36 -36
  11. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D4.js +12 -12
  12. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D4.js.map +1 -1
  13. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D1.d.ts +91 -91
  14. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D1.js +25 -25
  15. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D1.js.map +1 -1
  16. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D2.d.ts +86 -86
  17. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D2.js +24 -24
  18. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D2.js.map +1 -1
  19. package/build/generated-types/index.d.ts +4 -2
  20. package/build/generated-types/index.js +12 -5
  21. package/build/generated-types/index.js.map +1 -1
  22. package/build/generated-types/teams/TeamsManifestV1D0.d.ts +87 -87
  23. package/build/generated-types/teams/TeamsManifestV1D0.js +27 -27
  24. package/build/generated-types/teams/TeamsManifestV1D0.js.map +1 -1
  25. package/build/generated-types/teams/TeamsManifestV1D1.d.ts +86 -86
  26. package/build/generated-types/teams/TeamsManifestV1D1.js +26 -26
  27. package/build/generated-types/teams/TeamsManifestV1D1.js.map +1 -1
  28. package/build/generated-types/teams/TeamsManifestV1D10.d.ts +185 -185
  29. package/build/generated-types/teams/TeamsManifestV1D10.js +58 -58
  30. package/build/generated-types/teams/TeamsManifestV1D10.js.map +1 -1
  31. package/build/generated-types/teams/TeamsManifestV1D11.d.ts +188 -188
  32. package/build/generated-types/teams/TeamsManifestV1D11.js +60 -60
  33. package/build/generated-types/teams/TeamsManifestV1D11.js.map +1 -1
  34. package/build/generated-types/teams/TeamsManifestV1D12.d.ts +187 -187
  35. package/build/generated-types/teams/TeamsManifestV1D12.js +60 -60
  36. package/build/generated-types/teams/TeamsManifestV1D12.js.map +1 -1
  37. package/build/generated-types/teams/TeamsManifestV1D13.d.ts +189 -189
  38. package/build/generated-types/teams/TeamsManifestV1D13.js +60 -60
  39. package/build/generated-types/teams/TeamsManifestV1D13.js.map +1 -1
  40. package/build/generated-types/teams/TeamsManifestV1D14.d.ts +192 -192
  41. package/build/generated-types/teams/TeamsManifestV1D14.js +61 -61
  42. package/build/generated-types/teams/TeamsManifestV1D14.js.map +1 -1
  43. package/build/generated-types/teams/TeamsManifestV1D15.d.ts +192 -192
  44. package/build/generated-types/teams/TeamsManifestV1D15.js +61 -61
  45. package/build/generated-types/teams/TeamsManifestV1D15.js.map +1 -1
  46. package/build/generated-types/teams/TeamsManifestV1D16.d.ts +196 -196
  47. package/build/generated-types/teams/TeamsManifestV1D16.js +62 -62
  48. package/build/generated-types/teams/TeamsManifestV1D16.js.map +1 -1
  49. package/build/generated-types/teams/TeamsManifestV1D17.d.ts +347 -347
  50. package/build/generated-types/teams/TeamsManifestV1D17.js +129 -129
  51. package/build/generated-types/teams/TeamsManifestV1D17.js.map +1 -1
  52. package/build/generated-types/teams/TeamsManifestV1D19.d.ts +356 -356
  53. package/build/generated-types/teams/TeamsManifestV1D19.js +132 -132
  54. package/build/generated-types/teams/TeamsManifestV1D19.js.map +1 -1
  55. package/build/generated-types/teams/TeamsManifestV1D2.d.ts +86 -86
  56. package/build/generated-types/teams/TeamsManifestV1D2.js +26 -26
  57. package/build/generated-types/teams/TeamsManifestV1D2.js.map +1 -1
  58. package/build/generated-types/teams/TeamsManifestV1D20.d.ts +409 -409
  59. package/build/generated-types/teams/TeamsManifestV1D20.js +150 -150
  60. package/build/generated-types/teams/TeamsManifestV1D20.js.map +1 -1
  61. package/build/generated-types/teams/TeamsManifestV1D21.d.ts +1464 -0
  62. package/build/generated-types/teams/TeamsManifestV1D21.js +835 -0
  63. package/build/generated-types/teams/TeamsManifestV1D21.js.map +1 -0
  64. package/build/generated-types/teams/TeamsManifestV1D3.d.ts +90 -90
  65. package/build/generated-types/teams/TeamsManifestV1D3.js +28 -28
  66. package/build/generated-types/teams/TeamsManifestV1D3.js.map +1 -1
  67. package/build/generated-types/teams/TeamsManifestV1D4.d.ts +99 -99
  68. package/build/generated-types/teams/TeamsManifestV1D4.js +32 -32
  69. package/build/generated-types/teams/TeamsManifestV1D4.js.map +1 -1
  70. package/build/generated-types/teams/TeamsManifestV1D5.d.ts +123 -123
  71. package/build/generated-types/teams/TeamsManifestV1D5.js +39 -39
  72. package/build/generated-types/teams/TeamsManifestV1D5.js.map +1 -1
  73. package/build/generated-types/teams/TeamsManifestV1D6.d.ts +128 -128
  74. package/build/generated-types/teams/TeamsManifestV1D6.js +41 -41
  75. package/build/generated-types/teams/TeamsManifestV1D6.js.map +1 -1
  76. package/build/generated-types/teams/TeamsManifestV1D7.d.ts +134 -134
  77. package/build/generated-types/teams/TeamsManifestV1D7.js +44 -44
  78. package/build/generated-types/teams/TeamsManifestV1D7.js.map +1 -1
  79. package/build/generated-types/teams/TeamsManifestV1D8.d.ts +151 -151
  80. package/build/generated-types/teams/TeamsManifestV1D8.js +48 -48
  81. package/build/generated-types/teams/TeamsManifestV1D8.js.map +1 -1
  82. package/build/generated-types/teams/TeamsManifestV1D9.d.ts +172 -172
  83. package/build/generated-types/teams/TeamsManifestV1D9.js +54 -54
  84. package/build/generated-types/teams/TeamsManifestV1D9.js.map +1 -1
  85. package/build/generated-types/teams/TeamsManifestVDevPreview.d.ts +605 -581
  86. package/build/generated-types/teams/TeamsManifestVDevPreview.js +206 -200
  87. package/build/generated-types/teams/TeamsManifestVDevPreview.js.map +1 -1
  88. package/build/index.d.ts +0 -14
  89. package/build/index.js +0 -97
  90. package/build/index.js.map +1 -1
  91. package/build/tsconfig.tsbuildinfo +1 -1
  92. package/package.json +2 -2
@@ -1,133 +1,133 @@
1
1
  export interface TeamsManifestV1D16 {
2
2
  $schema?: string;
3
3
  /**
4
- * A color to use in conjunction with the icon. The value must be a valid HTML color code
5
- * starting with '#', for example `#4464ee`.
4
+ * The version of the schema this manifest is using. This schema version supports extending
5
+ * Teams apps to other parts of the Microsoft 365 ecosystem. More info at
6
+ * https://aka.ms/extendteamsapps.
6
7
  */
7
- accentColor: string;
8
- activities?: Activities;
8
+ manifestVersion: "1.16";
9
9
  /**
10
- * Specify and consolidates authorization related information for the App.
10
+ * The version of the app. Changes to your manifest should cause a version change. This
11
+ * version string must follow the semver standard (http://semver.org).
11
12
  */
12
- authorization?: Authorization;
13
+ version: string;
13
14
  /**
14
- * The set of bots for this app. Currently only one bot per app is supported.
15
+ * A unique identifier for this app. This id must be a GUID.
15
16
  */
16
- bots?: Bot[];
17
+ id: string;
17
18
  /**
18
- * The set of compose extensions for this app. Currently only one compose extension per app
19
- * is supported.
19
+ * A unique identifier for this app in reverse domain notation. E.g: com.example.myapp
20
20
  */
21
- composeExtensions?: ComposeExtension[];
21
+ packageName?: string;
22
+ localizationInfo?: LocalizationInfo;
23
+ developer: Developer;
24
+ name: Name;
25
+ description: Description;
26
+ icons: Icons;
22
27
  /**
23
- * A list of tenant configured properties for an app
28
+ * A color to use in conjunction with the icon. The value must be a valid HTML color code
29
+ * starting with '#', for example `#4464ee`.
24
30
  */
25
- configurableProperties?: ConfigurableProperty[];
31
+ accentColor: string;
26
32
  /**
27
33
  * These are tabs users can optionally add to their channels and 1:1 or group chats and
28
34
  * require extra configuration before they are added. Configurable tabs are not supported in
29
35
  * the personal scope. Currently only one configurable tab per app is supported.
30
36
  */
31
37
  configurableTabs?: ConfigurableTab[];
38
+ /**
39
+ * A set of tabs that may be 'pinned' by default, without the user adding them manually.
40
+ * Static tabs declared in personal scope are always pinned to the app's personal
41
+ * experience. Static tabs do not currently support the 'teams' scope.
42
+ */
43
+ staticTabs?: StaticTab[];
44
+ /**
45
+ * The set of bots for this app. Currently only one bot per app is supported.
46
+ */
47
+ bots?: Bot[];
32
48
  /**
33
49
  * The set of Office365 connectors for this app. Currently only one connector per app is
34
50
  * supported.
35
51
  */
36
52
  connectors?: Connector[];
37
53
  /**
38
- * A value indicating whether an app is blocked by default until admin allows it
54
+ * Subscription offer associated with this app.
39
55
  */
40
- defaultBlockUntilAdminAction?: boolean;
56
+ subscriptionOffer?: SubscriptionOffer;
41
57
  /**
42
- * When a group install scope is selected, this will define the default capability when the
43
- * user installs the app
58
+ * The set of compose extensions for this app. Currently only one compose extension per app
59
+ * is supported.
44
60
  */
45
- defaultGroupCapability?: DefaultGroupCapability;
61
+ composeExtensions?: ComposeExtension[];
46
62
  /**
47
- * The install scope defined for this app by default. This will be the option displayed on
48
- * the button when a user tries to add the app
63
+ * Specifies the permissions the app requests from users.
49
64
  */
50
- defaultInstallScope?: DefaultInstallScope;
51
- description: Description;
52
- developer: Developer;
65
+ permissions?: Permission[];
53
66
  /**
54
67
  * Specify the native features on a user's device that your app may request access to.
55
68
  */
56
69
  devicePermissions?: DevicePermission[];
70
+ /**
71
+ * A list of valid domains from which the tabs expect to load any content. Domain listings
72
+ * can include wildcards, for example `*.example.com`. If your tab configuration or content
73
+ * UI needs to navigate to any other domain besides the one use for tab configuration, that
74
+ * domain must be specified here.
75
+ */
76
+ validDomains?: string[];
77
+ /**
78
+ * Specify your AAD App ID and Graph information to help users seamlessly sign into your AAD
79
+ * app.
80
+ */
81
+ webApplicationInfo?: WebApplicationInfo;
57
82
  /**
58
83
  * Specify the app's Graph connector configuration. If this is present then
59
84
  * webApplicationInfo.id must also be specified.
60
85
  */
61
86
  graphConnector?: GraphConnector;
62
- icons: Icons;
63
87
  /**
64
- * A unique identifier for this app. This id must be a GUID.
88
+ * A value indicating whether or not show loading indicator when app/tab is loading
65
89
  */
66
- id: string;
90
+ showLoadingIndicator?: boolean;
67
91
  /**
68
92
  * A value indicating whether a personal app is rendered without a tab header-bar
69
93
  */
70
94
  isFullScreen?: boolean;
71
- localizationInfo?: LocalizationInfo;
72
- /**
73
- * The version of the schema this manifest is using. This schema version supports extending
74
- * Teams apps to other parts of the Microsoft 365 ecosystem. More info at
75
- * https://aka.ms/extendteamsapps.
76
- */
77
- manifestVersion: "1.16";
95
+ activities?: Activities;
78
96
  /**
79
- * Specify meeting extension definition.
97
+ * A list of tenant configured properties for an app
80
98
  */
81
- meetingExtensionDefinition?: MeetingExtensionDefinition;
82
- name: Name;
99
+ configurableProperties?: ConfigurableProperty[];
83
100
  /**
84
- * A unique identifier for this app in reverse domain notation. E.g: com.example.myapp
101
+ * List of 'non-standard' channel types that the app supports. Note: Channels of standard
102
+ * type are supported by default if the app supports team scope.
85
103
  */
86
- packageName?: string;
104
+ supportedChannelTypes?: SupportedChannelType[];
87
105
  /**
88
- * Specifies the permissions the app requests from users.
106
+ * A value indicating whether an app is blocked by default until admin allows it
89
107
  */
90
- permissions?: Permission[];
108
+ defaultBlockUntilAdminAction?: boolean;
91
109
  /**
92
110
  * The url to the page that provides additional app information for the admins
93
111
  */
94
112
  publisherDocsUrl?: string;
95
113
  /**
96
- * A value indicating whether or not show loading indicator when app/tab is loading
97
- */
98
- showLoadingIndicator?: boolean;
99
- /**
100
- * A set of tabs that may be 'pinned' by default, without the user adding them manually.
101
- * Static tabs declared in personal scope are always pinned to the app's personal
102
- * experience. Static tabs do not currently support the 'teams' scope.
103
- */
104
- staticTabs?: StaticTab[];
105
- /**
106
- * Subscription offer associated with this app.
107
- */
108
- subscriptionOffer?: SubscriptionOffer;
109
- /**
110
- * List of 'non-standard' channel types that the app supports. Note: Channels of standard
111
- * type are supported by default if the app supports team scope.
114
+ * The install scope defined for this app by default. This will be the option displayed on
115
+ * the button when a user tries to add the app
112
116
  */
113
- supportedChannelTypes?: SupportedChannelType[];
117
+ defaultInstallScope?: DefaultInstallScope;
114
118
  /**
115
- * A list of valid domains from which the tabs expect to load any content. Domain listings
116
- * can include wildcards, for example `*.example.com`. If your tab configuration or content
117
- * UI needs to navigate to any other domain besides the one use for tab configuration, that
118
- * domain must be specified here.
119
+ * When a group install scope is selected, this will define the default capability when the
120
+ * user installs the app
119
121
  */
120
- validDomains?: string[];
122
+ defaultGroupCapability?: DefaultGroupCapability;
121
123
  /**
122
- * The version of the app. Changes to your manifest should cause a version change. This
123
- * version string must follow the semver standard (http://semver.org).
124
+ * Specify meeting extension definition.
124
125
  */
125
- version: string;
126
+ meetingExtensionDefinition?: MeetingExtensionDefinition;
126
127
  /**
127
- * Specify your AAD App ID and Graph information to help users seamlessly sign into your AAD
128
- * app.
128
+ * Specify and consolidates authorization related information for the App.
129
129
  */
130
- webApplicationInfo?: WebApplicationInfo;
130
+ authorization?: Authorization;
131
131
  }
132
132
  export interface Activities {
133
133
  /**
@@ -136,9 +136,9 @@ export interface Activities {
136
136
  activityTypes?: ActivityType[];
137
137
  }
138
138
  export interface ActivityType {
139
+ type: string;
139
140
  description: string;
140
141
  templateText: string;
141
- type: string;
142
142
  }
143
143
  /**
144
144
  * Specify and consolidates authorization related information for the App.
@@ -179,56 +179,56 @@ export interface Bot {
179
179
  */
180
180
  botId: string;
181
181
  /**
182
- * The list of commands that the bot supplies, including their usage, description, and the
183
- * scope for which the commands are valid. A separate command list should be used for each
184
- * scope.
182
+ * This value describes whether or not the bot utilizes a user hint to add the bot to a
183
+ * specific channel.
185
184
  */
186
- commandLists?: CommandList[];
185
+ needsChannelSelector?: boolean;
187
186
  /**
188
187
  * A value indicating whether or not the bot is a one-way notification only bot, as opposed
189
188
  * to a conversational bot.
190
189
  */
191
190
  isNotificationOnly?: boolean;
192
191
  /**
193
- * This value describes whether or not the bot utilizes a user hint to add the bot to a
194
- * specific channel.
195
- */
196
- needsChannelSelector?: boolean;
197
- /**
198
- * Specifies whether the bot offers an experience in the context of a channel in a team, in
199
- * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
200
- * options are non-exclusive.
192
+ * A value indicating whether the bot supports uploading/downloading of files.
201
193
  */
202
- scopes: CommandListScope[];
194
+ supportsFiles?: boolean;
203
195
  /**
204
196
  * A value indicating whether the bot supports audio calling.
205
197
  */
206
198
  supportsCalling?: boolean;
207
- /**
208
- * A value indicating whether the bot supports uploading/downloading of files.
209
- */
210
- supportsFiles?: boolean;
211
199
  /**
212
200
  * A value indicating whether the bot supports video calling.
213
201
  */
214
202
  supportsVideo?: boolean;
203
+ /**
204
+ * Specifies whether the bot offers an experience in the context of a channel in a team, in
205
+ * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
206
+ * options are non-exclusive.
207
+ */
208
+ scopes: CommandListScope[];
209
+ /**
210
+ * The list of commands that the bot supplies, including their usage, description, and the
211
+ * scope for which the commands are valid. A separate command list should be used for each
212
+ * scope.
213
+ */
214
+ commandLists?: CommandList[];
215
215
  }
216
216
  export interface CommandList {
217
- commands: CommandListCommand[];
218
217
  /**
219
218
  * Specifies the scopes for which the command list is valid
220
219
  */
221
220
  scopes: CommandListScope[];
221
+ commands: CommandListCommand[];
222
222
  }
223
223
  export interface CommandListCommand {
224
- /**
225
- * A simple text description or an example of the command syntax and its arguments.
226
- */
227
- description: string;
228
224
  /**
229
225
  * The bot command name
230
226
  */
231
227
  title: string;
228
+ /**
229
+ * A simple text description or an example of the command syntax and its arguments.
230
+ */
231
+ description: string;
232
232
  }
233
233
  export type CommandListScope = "team" | "personal" | "groupChat" | "groupchat";
234
234
  export interface ComposeExtension {
@@ -250,63 +250,63 @@ export interface ComposeExtension {
250
250
  }
251
251
  export interface ComposeExtensionCommand {
252
252
  /**
253
- * Context where the command would apply
253
+ * Id of the command.
254
254
  */
255
- context?: CommandContext[];
255
+ id: string;
256
256
  /**
257
- * Description of the command.
257
+ * Type of the command
258
258
  */
259
- description?: string;
259
+ type?: CommandType;
260
260
  /**
261
- * A boolean value that indicates if it should fetch task module dynamically
261
+ * Context where the command would apply
262
262
  */
263
- fetchTask?: boolean;
263
+ context?: CommandContext[];
264
264
  /**
265
- * Id of the command.
265
+ * Title of the command.
266
266
  */
267
- id: string;
267
+ title: string;
268
+ /**
269
+ * Description of the command.
270
+ */
271
+ description?: string;
268
272
  /**
269
273
  * A boolean value that indicates if the command should be run once initially with no
270
274
  * parameter.
271
275
  */
272
276
  initialRun?: boolean;
273
- parameters?: Parameter[];
274
- taskInfo?: TaskInfo;
275
- /**
276
- * Title of the command.
277
- */
278
- title: string;
279
277
  /**
280
- * Type of the command
278
+ * A boolean value that indicates if it should fetch task module dynamically
281
279
  */
282
- type?: CommandType;
280
+ fetchTask?: boolean;
281
+ parameters?: Parameter[];
282
+ taskInfo?: TaskInfo;
283
283
  }
284
284
  export type CommandContext = "compose" | "commandBox" | "message";
285
285
  export interface Parameter {
286
286
  /**
287
- * The choice options for the parameter
288
- */
289
- choices?: Choice[];
290
- /**
291
- * Description of the parameter.
287
+ * Name of the parameter.
292
288
  */
293
- description?: string;
289
+ name: string;
294
290
  /**
295
291
  * Type of the parameter
296
292
  */
297
293
  inputType?: InputType;
298
- /**
299
- * Name of the parameter.
300
- */
301
- name: string;
302
294
  /**
303
295
  * Title of the parameter.
304
296
  */
305
297
  title: string;
298
+ /**
299
+ * Description of the parameter.
300
+ */
301
+ description?: string;
306
302
  /**
307
303
  * Initial value for the parameter
308
304
  */
309
305
  value?: string;
306
+ /**
307
+ * The choice options for the parameter
308
+ */
309
+ choices?: Choice[];
310
310
  }
311
311
  export interface Choice {
312
312
  /**
@@ -323,24 +323,24 @@ export interface Choice {
323
323
  */
324
324
  export type InputType = "text" | "textarea" | "number" | "date" | "time" | "toggle" | "choiceset";
325
325
  export interface TaskInfo {
326
- /**
327
- * Dialog height - either a number in pixels or default layout such as 'large', 'medium', or
328
- * 'small'
329
- */
330
- height?: string;
331
326
  /**
332
327
  * Initial dialog title
333
328
  */
334
329
  title?: string;
335
- /**
336
- * Initial webview URL
337
- */
338
- url?: string;
339
330
  /**
340
331
  * Dialog width - either a number in pixels or default layout such as 'large', 'medium', or
341
332
  * 'small'
342
333
  */
343
334
  width?: string;
335
+ /**
336
+ * Dialog height - either a number in pixels or default layout such as 'large', 'medium', or
337
+ * 'small'
338
+ */
339
+ height?: string;
340
+ /**
341
+ * Initial webview URL
342
+ */
343
+ url?: string;
344
344
  }
345
345
  /**
346
346
  * Type of the command
@@ -371,23 +371,15 @@ export interface Value {
371
371
  }
372
372
  export type ConfigurableProperty = "name" | "shortDescription" | "longDescription" | "smallImageUrl" | "largeImageUrl" | "accentColor" | "developerUrl" | "privacyUrl" | "termsOfUseUrl";
373
373
  export interface ConfigurableTab {
374
- /**
375
- * A value indicating whether an instance of the tab's configuration can be updated by the
376
- * user after creation.
377
- */
378
- canUpdateConfiguration?: boolean;
379
374
  /**
380
375
  * The url to use when configuring the tab.
381
376
  */
382
377
  configurationUrl: string;
383
378
  /**
384
- * The set of contextItem scopes that a tab belong to
385
- */
386
- context?: ConfigurableTabContext[];
387
- /**
388
- * The set of meetingSurfaceItem scopes that a tab belong to
379
+ * A value indicating whether an instance of the tab's configuration can be updated by the
380
+ * user after creation.
389
381
  */
390
- meetingSurfaces?: MeetingSurface[];
382
+ canUpdateConfiguration?: boolean;
391
383
  /**
392
384
  * Specifies whether the tab offers an experience in the context of a channel in a team, in
393
385
  * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
@@ -395,6 +387,14 @@ export interface ConfigurableTab {
395
387
  * and groupchats scopes.
396
388
  */
397
389
  scopes: ConfigurableTabScope[];
390
+ /**
391
+ * The set of meetingSurfaceItem scopes that a tab belong to
392
+ */
393
+ meetingSurfaces?: MeetingSurface[];
394
+ /**
395
+ * The set of contextItem scopes that a tab belong to
396
+ */
397
+ context?: ConfigurableTabContext[];
398
398
  /**
399
399
  * A relative file path to a tab preview image for use in SharePoint. Size 1024x768.
400
400
  */
@@ -409,15 +409,15 @@ export type MeetingSurface = "sidePanel" | "stage";
409
409
  export type ConfigurableTabScope = "team" | "groupChat" | "groupchat";
410
410
  export type SupportedSharePointHost = "sharePointFullPage" | "sharePointWebPart";
411
411
  export interface Connector {
412
- /**
413
- * The url to use for configuring the connector using the inline configuration experience.
414
- */
415
- configurationUrl?: string;
416
412
  /**
417
413
  * A unique identifier for the connector which matches its ID in the Connectors Developer
418
414
  * Portal.
419
415
  */
420
416
  connectorId: string;
417
+ /**
418
+ * The url to use for configuring the connector using the inline configuration experience.
419
+ */
420
+ configurationUrl?: string;
421
421
  /**
422
422
  * Specifies whether the connector offers an experience in the context of a channel in a
423
423
  * team, or an experience scoped to an individual user alone. Currently, only the team scope
@@ -430,6 +430,11 @@ export interface Connector {
430
430
  * user installs the app
431
431
  */
432
432
  export interface DefaultGroupCapability {
433
+ /**
434
+ * When the install scope selected is Team, this field specifies the default capability
435
+ * available
436
+ */
437
+ team?: Groupchat;
433
438
  /**
434
439
  * When the install scope selected is GroupChat, this field specifies the default capability
435
440
  * available
@@ -440,11 +445,6 @@ export interface DefaultGroupCapability {
440
445
  * available
441
446
  */
442
447
  meetings?: Groupchat;
443
- /**
444
- * When the install scope selected is Team, this field specifies the default capability
445
- * available
446
- */
447
- team?: Groupchat;
448
448
  }
449
449
  /**
450
450
  * When the install scope selected is GroupChat, this field specifies the default capability
@@ -463,17 +463,21 @@ export type Groupchat = "tab" | "bot" | "connector";
463
463
  */
464
464
  export type DefaultInstallScope = "personal" | "team" | "groupChat" | "groupchat" | "meetings";
465
465
  export interface Description {
466
- /**
467
- * The full description of the app. Maximum length is 4000 characters.
468
- */
469
- full: string;
470
466
  /**
471
467
  * A short description of the app used when space is limited. Maximum length is 80
472
468
  * characters.
473
469
  */
474
470
  short: string;
471
+ /**
472
+ * The full description of the app. Maximum length is 4000 characters.
473
+ */
474
+ full: string;
475
475
  }
476
476
  export interface Developer {
477
+ /**
478
+ * The display name for the developer.
479
+ */
480
+ name: string;
477
481
  /**
478
482
  * The Microsoft Partner Network ID that identifies the partner organization building the
479
483
  * app. This field is not required, and should only be used if you are already part of the
@@ -481,9 +485,9 @@ export interface Developer {
481
485
  */
482
486
  mpnId?: string;
483
487
  /**
484
- * The display name for the developer.
488
+ * The url to the page that provides support information for the app.
485
489
  */
486
- name: string;
490
+ websiteUrl: string;
487
491
  /**
488
492
  * The url to the page that provides privacy information for the app.
489
493
  */
@@ -492,10 +496,6 @@ export interface Developer {
492
496
  * The url to the page that provides the terms of use for the app.
493
497
  */
494
498
  termsOfUseUrl: string;
495
- /**
496
- * The url to the page that provides support information for the app.
497
- */
498
- websiteUrl: string;
499
499
  }
500
500
  export type DevicePermission = "geolocation" | "media" | "notifications" | "midi" | "openExternal";
501
501
  /**
@@ -509,32 +509,32 @@ export interface GraphConnector {
509
509
  notificationUrl: string;
510
510
  }
511
511
  export interface Icons {
512
- /**
513
- * A relative file path to a full color PNG icon. Size 192x192.
514
- */
515
- color: string;
516
512
  /**
517
513
  * A relative file path to a transparent PNG outline icon. The border color needs to be
518
514
  * white. Size 32x32.
519
515
  */
520
516
  outline: string;
517
+ /**
518
+ * A relative file path to a full color PNG icon. Size 192x192.
519
+ */
520
+ color: string;
521
521
  }
522
522
  export interface LocalizationInfo {
523
- additionalLanguages?: AdditionalLanguage[];
524
523
  /**
525
524
  * The language tag of the strings in this top level manifest file.
526
525
  */
527
526
  defaultLanguageTag: string;
527
+ additionalLanguages?: AdditionalLanguage[];
528
528
  }
529
529
  export interface AdditionalLanguage {
530
- /**
531
- * A relative file path to a the .json file containing the translated strings.
532
- */
533
- file: string;
534
530
  /**
535
531
  * The language tag of the strings in the provided file.
536
532
  */
537
533
  languageTag: string;
534
+ /**
535
+ * A relative file path to a the .json file containing the translated strings.
536
+ */
537
+ file: string;
538
538
  }
539
539
  /**
540
540
  * Specify meeting extension definition.
@@ -544,75 +544,79 @@ export interface MeetingExtensionDefinition {
544
544
  * Meeting supported scenes.
545
545
  */
546
546
  scenes?: Scene[];
547
- /**
548
- * A boolean value indicating whether this app allows management by anonymous users.
549
- */
550
- supportsAnonymousGuestUsers?: boolean;
551
547
  /**
552
548
  * A boolean value indicating whether this app can stream the meeting's audio video content
553
549
  * to an RTMP endpoint.
554
550
  */
555
551
  supportsStreaming?: boolean;
556
- }
557
- export interface Scene {
558
552
  /**
559
- * A relative file path to a scene metadata json file.
553
+ * A boolean value indicating whether this app allows management by anonymous users.
560
554
  */
561
- file: string;
555
+ supportsAnonymousGuestUsers?: boolean;
556
+ }
557
+ export interface Scene {
562
558
  /**
563
559
  * A unique identifier for this scene. This id must be a GUID.
564
560
  */
565
561
  id: string;
566
- /**
567
- * Maximum audiences supported in scene.
568
- */
569
- maxAudience: number;
570
562
  /**
571
563
  * Scene name.
572
564
  */
573
565
  name: string;
566
+ /**
567
+ * A relative file path to a scene metadata json file.
568
+ */
569
+ file: string;
574
570
  /**
575
571
  * A relative file path to a scene PNG preview icon.
576
572
  */
577
573
  preview: string;
574
+ /**
575
+ * Maximum audiences supported in scene.
576
+ */
577
+ maxAudience: number;
578
578
  /**
579
579
  * Number of seats reserved for organizers or presenters.
580
580
  */
581
581
  seatsReservedForOrganizersOrPresenters: number;
582
582
  }
583
583
  export interface Name {
584
- /**
585
- * The full name of the app, used if the full app name exceeds 30 characters.
586
- */
587
- full: string;
588
584
  /**
589
585
  * A short display name for the app.
590
586
  */
591
587
  short: string;
588
+ /**
589
+ * The full name of the app, used if the full app name exceeds 30 characters.
590
+ */
591
+ full: string;
592
592
  }
593
593
  export type Permission = "identity" | "messageTeamMembers";
594
594
  export interface StaticTab {
595
595
  /**
596
- * The Microsoft App ID specified for the bot in the Bot Framework portal
597
- * (https://dev.botframework.com/bots)
596
+ * A unique identifier for the entity which the tab displays.
598
597
  */
599
- contentBotId?: string;
598
+ entityId: string;
599
+ /**
600
+ * The display name of the tab.
601
+ */
602
+ name?: string;
600
603
  /**
601
604
  * The url which points to the entity UI to be displayed in the canvas.
602
605
  */
603
606
  contentUrl?: string;
604
607
  /**
605
- * The set of contextItem scopes that a tab belong to
608
+ * The Microsoft App ID specified for the bot in the Bot Framework portal
609
+ * (https://dev.botframework.com/bots)
606
610
  */
607
- context?: StaticTabContext[];
611
+ contentBotId?: string;
608
612
  /**
609
- * A unique identifier for the entity which the tab displays.
613
+ * The url to point at if a user opts to view in a browser.
610
614
  */
611
- entityId: string;
615
+ websiteUrl?: string;
612
616
  /**
613
- * The display name of the tab.
617
+ * The url to direct a user's search queries.
614
618
  */
615
- name?: string;
619
+ searchUrl?: string;
616
620
  /**
617
621
  * Specifies whether the tab offers an experience in the context of a channel in a team, or
618
622
  * an experience scoped to an individual user alone. These options are non-exclusive.
@@ -620,13 +624,9 @@ export interface StaticTab {
620
624
  */
621
625
  scopes: CommandListScope[];
622
626
  /**
623
- * The url to direct a user's search queries.
624
- */
625
- searchUrl?: string;
626
- /**
627
- * The url to point at if a user opts to view in a browser.
627
+ * The set of contextItem scopes that a tab belong to
628
628
  */
629
- websiteUrl?: string;
629
+ context?: StaticTabContext[];
630
630
  }
631
631
  export type StaticTabContext = "personalTab" | "channelTab" | "privateChatTab" | "meetingChatTab" | "meetingDetailsTab" | "meetingSidePanel" | "meetingStage" | "teamLevelApp";
632
632
  /**