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