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