@microsoft/app-manifest 1.0.0-alpha.aa1e13280.0 → 1.0.0-alpha.e2e4e5205.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 (85) 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 +36 -36
  8. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D3.js +12 -12
  9. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D3.js.map +1 -1
  10. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D1.d.ts +91 -91
  11. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D1.js +25 -25
  12. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D1.js.map +1 -1
  13. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D2.d.ts +86 -86
  14. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D2.js +24 -24
  15. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D2.js.map +1 -1
  16. package/build/generated-types/index.js +4 -4
  17. package/build/generated-types/index.js.map +1 -1
  18. package/build/generated-types/teams/TeamsManifestV1D0.d.ts +87 -87
  19. package/build/generated-types/teams/TeamsManifestV1D0.js +27 -27
  20. package/build/generated-types/teams/TeamsManifestV1D0.js.map +1 -1
  21. package/build/generated-types/teams/TeamsManifestV1D1.d.ts +86 -86
  22. package/build/generated-types/teams/TeamsManifestV1D1.js +26 -26
  23. package/build/generated-types/teams/TeamsManifestV1D1.js.map +1 -1
  24. package/build/generated-types/teams/TeamsManifestV1D10.d.ts +185 -185
  25. package/build/generated-types/teams/TeamsManifestV1D10.js +58 -58
  26. package/build/generated-types/teams/TeamsManifestV1D10.js.map +1 -1
  27. package/build/generated-types/teams/TeamsManifestV1D11.d.ts +188 -188
  28. package/build/generated-types/teams/TeamsManifestV1D11.js +60 -60
  29. package/build/generated-types/teams/TeamsManifestV1D11.js.map +1 -1
  30. package/build/generated-types/teams/TeamsManifestV1D12.d.ts +187 -187
  31. package/build/generated-types/teams/TeamsManifestV1D12.js +60 -60
  32. package/build/generated-types/teams/TeamsManifestV1D12.js.map +1 -1
  33. package/build/generated-types/teams/TeamsManifestV1D13.d.ts +189 -189
  34. package/build/generated-types/teams/TeamsManifestV1D13.js +60 -60
  35. package/build/generated-types/teams/TeamsManifestV1D13.js.map +1 -1
  36. package/build/generated-types/teams/TeamsManifestV1D14.d.ts +192 -192
  37. package/build/generated-types/teams/TeamsManifestV1D14.js +61 -61
  38. package/build/generated-types/teams/TeamsManifestV1D14.js.map +1 -1
  39. package/build/generated-types/teams/TeamsManifestV1D15.d.ts +192 -192
  40. package/build/generated-types/teams/TeamsManifestV1D15.js +61 -61
  41. package/build/generated-types/teams/TeamsManifestV1D15.js.map +1 -1
  42. package/build/generated-types/teams/TeamsManifestV1D16.d.ts +196 -196
  43. package/build/generated-types/teams/TeamsManifestV1D16.js +62 -62
  44. package/build/generated-types/teams/TeamsManifestV1D16.js.map +1 -1
  45. package/build/generated-types/teams/TeamsManifestV1D17.d.ts +347 -347
  46. package/build/generated-types/teams/TeamsManifestV1D17.js +129 -129
  47. package/build/generated-types/teams/TeamsManifestV1D17.js.map +1 -1
  48. package/build/generated-types/teams/TeamsManifestV1D19.d.ts +356 -356
  49. package/build/generated-types/teams/TeamsManifestV1D19.js +132 -132
  50. package/build/generated-types/teams/TeamsManifestV1D19.js.map +1 -1
  51. package/build/generated-types/teams/TeamsManifestV1D2.d.ts +86 -86
  52. package/build/generated-types/teams/TeamsManifestV1D2.js +26 -26
  53. package/build/generated-types/teams/TeamsManifestV1D2.js.map +1 -1
  54. package/build/generated-types/teams/TeamsManifestV1D20.d.ts +409 -409
  55. package/build/generated-types/teams/TeamsManifestV1D20.js +150 -150
  56. package/build/generated-types/teams/TeamsManifestV1D20.js.map +1 -1
  57. package/build/generated-types/teams/TeamsManifestV1D3.d.ts +90 -90
  58. package/build/generated-types/teams/TeamsManifestV1D3.js +28 -28
  59. package/build/generated-types/teams/TeamsManifestV1D3.js.map +1 -1
  60. package/build/generated-types/teams/TeamsManifestV1D4.d.ts +99 -99
  61. package/build/generated-types/teams/TeamsManifestV1D4.js +32 -32
  62. package/build/generated-types/teams/TeamsManifestV1D4.js.map +1 -1
  63. package/build/generated-types/teams/TeamsManifestV1D5.d.ts +123 -123
  64. package/build/generated-types/teams/TeamsManifestV1D5.js +39 -39
  65. package/build/generated-types/teams/TeamsManifestV1D5.js.map +1 -1
  66. package/build/generated-types/teams/TeamsManifestV1D6.d.ts +128 -128
  67. package/build/generated-types/teams/TeamsManifestV1D6.js +41 -41
  68. package/build/generated-types/teams/TeamsManifestV1D6.js.map +1 -1
  69. package/build/generated-types/teams/TeamsManifestV1D7.d.ts +134 -134
  70. package/build/generated-types/teams/TeamsManifestV1D7.js +44 -44
  71. package/build/generated-types/teams/TeamsManifestV1D7.js.map +1 -1
  72. package/build/generated-types/teams/TeamsManifestV1D8.d.ts +151 -151
  73. package/build/generated-types/teams/TeamsManifestV1D8.js +48 -48
  74. package/build/generated-types/teams/TeamsManifestV1D8.js.map +1 -1
  75. package/build/generated-types/teams/TeamsManifestV1D9.d.ts +172 -172
  76. package/build/generated-types/teams/TeamsManifestV1D9.js +54 -54
  77. package/build/generated-types/teams/TeamsManifestV1D9.js.map +1 -1
  78. package/build/generated-types/teams/TeamsManifestVDevPreview.d.ts +581 -581
  79. package/build/generated-types/teams/TeamsManifestVDevPreview.js +200 -200
  80. package/build/generated-types/teams/TeamsManifestVDevPreview.js.map +1 -1
  81. package/build/index.d.ts +0 -14
  82. package/build/index.js +0 -97
  83. package/build/index.js.map +1 -1
  84. package/build/tsconfig.tsbuildinfo +1 -1
  85. package/package.json +2 -2
@@ -1,136 +1,136 @@
1
1
  export interface TeamsManifestV1D19 {
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`.
6
- */
7
- accentColor: string;
8
- activities?: Activities;
9
- /**
10
- * Specify and consolidates authorization related information for the App.
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.
11
7
  */
12
- authorization?: TeamsManifestV1D19Authorization;
8
+ manifestVersion: "1.19";
13
9
  /**
14
- * The set of bots for this app. Currently only one bot per app is supported.
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).
15
12
  */
16
- bots?: Bot[];
13
+ version: string;
17
14
  /**
18
- * The set of compose extensions for this app. Currently only one compose extension per app
19
- * is supported.
15
+ * A unique identifier for this app. This id must be a GUID.
20
16
  */
21
- composeExtensions?: ComposeExtension[];
17
+ id: string;
18
+ localizationInfo?: LocalizationInfo;
19
+ developer: Developer;
20
+ name: Name;
21
+ description: Description;
22
+ icons: Icons;
22
23
  /**
23
- * A list of tenant configured properties for an app
24
+ * A color to use in conjunction with the icon. The value must be a valid HTML color code
25
+ * starting with '#', for example `#4464ee`.
24
26
  */
25
- configurableProperties?: ConfigurableProperty[];
27
+ accentColor: string;
26
28
  /**
27
29
  * These are tabs users can optionally add to their channels and 1:1 or group chats and
28
30
  * require extra configuration before they are added. Configurable tabs are not supported in
29
31
  * the personal scope. Currently only one configurable tab per app is supported.
30
32
  */
31
33
  configurableTabs?: ConfigurableTab[];
34
+ /**
35
+ * A set of tabs that may be 'pinned' by default, without the user adding them manually.
36
+ * Static tabs declared in personal scope are always pinned to the app's personal
37
+ * experience. Static tabs do not currently support the 'teams' scope.
38
+ */
39
+ staticTabs?: StaticTab[];
40
+ /**
41
+ * The set of bots for this app. Currently only one bot per app is supported.
42
+ */
43
+ bots?: Bot[];
32
44
  /**
33
45
  * The set of Office365 connectors for this app. Currently only one connector per app is
34
46
  * supported.
35
47
  */
36
48
  connectors?: Connector[];
37
- copilotAgents?: CopilotAgents;
38
49
  /**
39
- * Defines the list of cards which could be pinned to dashboards that can provide summarized
40
- * view of information relevant to user.
41
- */
42
- dashboardCards?: DashboardCard[];
43
- /**
44
- * A value indicating whether an app is blocked by default until admin allows it
50
+ * Subscription offer associated with this app.
45
51
  */
46
- defaultBlockUntilAdminAction?: boolean;
52
+ subscriptionOffer?: SubscriptionOffer;
47
53
  /**
48
- * When a group install scope is selected, this will define the default capability when the
49
- * user installs the app
54
+ * The set of compose extensions for this app. Currently only one compose extension per app
55
+ * is supported.
50
56
  */
51
- defaultGroupCapability?: DefaultGroupCapability;
57
+ composeExtensions?: ComposeExtension[];
52
58
  /**
53
- * The install scope defined for this app by default. This will be the option displayed on
54
- * the button when a user tries to add the app
59
+ * Specifies the permissions the app requests from users.
55
60
  */
56
- defaultInstallScope?: DefaultInstallScope;
57
- description: Description;
58
- developer: Developer;
61
+ permissions?: Permission[];
59
62
  /**
60
63
  * Specify the native features on a user's device that your app may request access to.
61
64
  */
62
65
  devicePermissions?: DevicePermission[];
63
- extensions?: ElementExtension[];
66
+ /**
67
+ * A list of valid domains from which the tabs expect to load any content. Domain listings
68
+ * can include wildcards, for example `*.example.com`. If your tab configuration or content
69
+ * UI needs to navigate to any other domain besides the one use for tab configuration, that
70
+ * domain must be specified here.
71
+ */
72
+ validDomains?: string[];
73
+ /**
74
+ * Specify your AAD App ID and Graph information to help users seamlessly sign into your AAD
75
+ * app.
76
+ */
77
+ webApplicationInfo?: WebApplicationInfo;
64
78
  /**
65
79
  * Specify the app's Graph connector configuration. If this is present then
66
80
  * webApplicationInfo.id must also be specified.
67
81
  */
68
82
  graphConnector?: GraphConnector;
69
- icons: Icons;
70
83
  /**
71
- * A unique identifier for this app. This id must be a GUID.
84
+ * A value indicating whether or not show loading indicator when app/tab is loading
72
85
  */
73
- id: string;
86
+ showLoadingIndicator?: boolean;
74
87
  /**
75
88
  * A value indicating whether a personal app is rendered without a tab header-bar
76
89
  */
77
90
  isFullScreen?: boolean;
78
- localizationInfo?: LocalizationInfo;
91
+ activities?: Activities;
79
92
  /**
80
- * The version of the schema this manifest is using. This schema version supports extending
81
- * Teams apps to other parts of the Microsoft 365 ecosystem. More info at
82
- * https://aka.ms/extendteamsapps.
93
+ * A list of tenant configured properties for an app
83
94
  */
84
- manifestVersion: "1.19";
95
+ configurableProperties?: ConfigurableProperty[];
85
96
  /**
86
- * Specify meeting extension definition.
97
+ * List of 'non-standard' channel types that the app supports. Note: Channels of standard
98
+ * type are supported by default if the app supports team scope.
87
99
  */
88
- meetingExtensionDefinition?: MeetingExtensionDefinition;
89
- name: Name;
100
+ supportedChannelTypes?: SupportedChannelType[];
90
101
  /**
91
- * Specifies the permissions the app requests from users.
102
+ * A value indicating whether an app is blocked by default until admin allows it
92
103
  */
93
- permissions?: Permission[];
104
+ defaultBlockUntilAdminAction?: boolean;
94
105
  /**
95
106
  * The url to the page that provides additional app information for the admins
96
107
  */
97
108
  publisherDocsUrl?: string;
98
109
  /**
99
- * A value indicating whether or not show loading indicator when app/tab is loading
100
- */
101
- showLoadingIndicator?: boolean;
102
- /**
103
- * A set of tabs that may be 'pinned' by default, without the user adding them manually.
104
- * Static tabs declared in personal scope are always pinned to the app's personal
105
- * experience. Static tabs do not currently support the 'teams' scope.
106
- */
107
- staticTabs?: StaticTab[];
108
- /**
109
- * Subscription offer associated with this app.
110
+ * The install scope defined for this app by default. This will be the option displayed on
111
+ * the button when a user tries to add the app
110
112
  */
111
- subscriptionOffer?: SubscriptionOffer;
113
+ defaultInstallScope?: DefaultInstallScope;
112
114
  /**
113
- * List of 'non-standard' channel types that the app supports. Note: Channels of standard
114
- * type are supported by default if the app supports team scope.
115
+ * When a group install scope is selected, this will define the default capability when the
116
+ * user installs the app
115
117
  */
116
- supportedChannelTypes?: SupportedChannelType[];
118
+ defaultGroupCapability?: DefaultGroupCapability;
117
119
  /**
118
- * A list of valid domains from which the tabs expect to load any content. Domain listings
119
- * can include wildcards, for example `*.example.com`. If your tab configuration or content
120
- * UI needs to navigate to any other domain besides the one use for tab configuration, that
121
- * domain must be specified here.
120
+ * Specify meeting extension definition.
122
121
  */
123
- validDomains?: string[];
122
+ meetingExtensionDefinition?: MeetingExtensionDefinition;
124
123
  /**
125
- * The version of the app. Changes to your manifest should cause a version change. This
126
- * version string must follow the semver standard (http://semver.org).
124
+ * Specify and consolidates authorization related information for the App.
127
125
  */
128
- version: string;
126
+ authorization?: TeamsManifestV1D19Authorization;
127
+ extensions?: ElementExtension[];
129
128
  /**
130
- * Specify your AAD App ID and Graph information to help users seamlessly sign into your AAD
131
- * app.
129
+ * Defines the list of cards which could be pinned to dashboards that can provide summarized
130
+ * view of information relevant to user.
132
131
  */
133
- webApplicationInfo?: WebApplicationInfo;
132
+ dashboardCards?: DashboardCard[];
133
+ copilotAgents?: CopilotAgents;
134
134
  }
135
135
  export interface Activities {
136
136
  /**
@@ -139,9 +139,9 @@ export interface Activities {
139
139
  activityTypes?: ActivityType[];
140
140
  }
141
141
  export interface ActivityType {
142
+ type: string;
142
143
  description: string;
143
144
  templateText: string;
144
- type: string;
145
145
  }
146
146
  /**
147
147
  * Specify and consolidates authorization related information for the App.
@@ -181,112 +181,112 @@ export interface Bot {
181
181
  * (https://dev.botframework.com/bots)
182
182
  */
183
183
  botId: string;
184
+ configuration?: Configuration;
184
185
  /**
185
- * The list of commands that the bot supplies, including their usage, description, and the
186
- * scope for which the commands are valid. A separate command list should be used for each
187
- * scope.
186
+ * This value describes whether or not the bot utilizes a user hint to add the bot to a
187
+ * specific channel.
188
188
  */
189
- commandLists?: CommandList[];
190
- configuration?: Configuration;
189
+ needsChannelSelector?: boolean;
191
190
  /**
192
191
  * A value indicating whether or not the bot is a one-way notification only bot, as opposed
193
192
  * to a conversational bot.
194
193
  */
195
194
  isNotificationOnly?: boolean;
196
195
  /**
197
- * This value describes whether or not the bot utilizes a user hint to add the bot to a
198
- * specific channel.
199
- */
200
- needsChannelSelector?: boolean;
201
- /**
202
- * Specifies whether the bot offers an experience in the context of a channel in a team, in
203
- * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
204
- * options are non-exclusive.
196
+ * A value indicating whether the bot supports uploading/downloading of files.
205
197
  */
206
- scopes: CommandListScope[];
198
+ supportsFiles?: boolean;
207
199
  /**
208
200
  * A value indicating whether the bot supports audio calling.
209
201
  */
210
202
  supportsCalling?: boolean;
211
- /**
212
- * A value indicating whether the bot supports uploading/downloading of files.
213
- */
214
- supportsFiles?: boolean;
215
203
  /**
216
204
  * A value indicating whether the bot supports video calling.
217
205
  */
218
206
  supportsVideo?: boolean;
207
+ /**
208
+ * Specifies whether the bot offers an experience in the context of a channel in a team, in
209
+ * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
210
+ * options are non-exclusive.
211
+ */
212
+ scopes: CommandListScope[];
213
+ /**
214
+ * The list of commands that the bot supplies, including their usage, description, and the
215
+ * scope for which the commands are valid. A separate command list should be used for each
216
+ * scope.
217
+ */
218
+ commandLists?: CommandList[];
219
219
  }
220
220
  export interface CommandList {
221
- commands: CommandListCommand[];
222
221
  /**
223
222
  * Specifies the scopes for which the command list is valid
224
223
  */
225
224
  scopes: CommandListScope[];
225
+ commands: CommandListCommand[];
226
226
  }
227
227
  export interface CommandListCommand {
228
- /**
229
- * A simple text description or an example of the command syntax and its arguments.
230
- */
231
- description: string;
232
228
  /**
233
229
  * The bot command name
234
230
  */
235
231
  title: string;
232
+ /**
233
+ * A simple text description or an example of the command syntax and its arguments.
234
+ */
235
+ description: string;
236
236
  }
237
237
  export type CommandListScope = "team" | "personal" | "groupChat";
238
238
  export interface Configuration {
239
- groupChat?: GroupChat;
240
- team?: GroupChat;
239
+ team?: Team;
240
+ groupChat?: Team;
241
241
  }
242
- export interface GroupChat {
242
+ export interface Team {
243
243
  fetchTask?: boolean;
244
244
  taskInfo?: TaskInfo;
245
245
  }
246
246
  export interface TaskInfo {
247
- /**
248
- * Dialog height - either a number in pixels or default layout such as 'large', 'medium', or
249
- * 'small'
250
- */
251
- height?: string;
252
247
  /**
253
248
  * Initial dialog title
254
249
  */
255
250
  title?: string;
256
- /**
257
- * Initial webview URL
258
- */
259
- url?: string;
260
251
  /**
261
252
  * Dialog width - either a number in pixels or default layout such as 'large', 'medium', or
262
253
  * 'small'
263
254
  */
264
255
  width?: string;
256
+ /**
257
+ * Dialog height - either a number in pixels or default layout such as 'large', 'medium', or
258
+ * 'small'
259
+ */
260
+ height?: string;
261
+ /**
262
+ * Initial webview URL
263
+ */
264
+ url?: string;
265
265
  }
266
266
  export interface ComposeExtension {
267
267
  /**
268
- * A relative file path to the api specification file in the manifest package.
268
+ * The Microsoft App ID specified for the bot powering the compose extension in the Bot
269
+ * Framework portal (https://dev.botframework.com/bots)
269
270
  */
270
- apiSpecificationFile?: string;
271
+ botId?: string;
272
+ /**
273
+ * Type of the compose extension.
274
+ */
275
+ composeExtensionType?: ComposeExtensionType;
271
276
  /**
272
277
  * Object capturing authorization information.
273
278
  */
274
279
  authorization?: ComposeExtensionAuthorization;
275
280
  /**
276
- * The Microsoft App ID specified for the bot powering the compose extension in the Bot
277
- * Framework portal (https://dev.botframework.com/bots)
281
+ * A relative file path to the api specification file in the manifest package.
278
282
  */
279
- botId?: string;
283
+ apiSpecificationFile?: string;
280
284
  /**
281
285
  * A value indicating whether the configuration of a compose extension can be updated by the
282
286
  * user.
283
287
  */
284
288
  canUpdateConfiguration?: boolean | null;
285
289
  commands?: ComposeExtensionCommand[];
286
- /**
287
- * Type of the compose extension.
288
- */
289
- composeExtensionType?: ComposeExtensionType;
290
290
  /**
291
291
  * A list of handlers that allow apps to be invoked when certain conditions are met
292
292
  */
@@ -296,11 +296,6 @@ export interface ComposeExtension {
296
296
  * Object capturing authorization information.
297
297
  */
298
298
  export interface ComposeExtensionAuthorization {
299
- /**
300
- * Object capturing details needed to do service auth. It will be only present when auth
301
- * type is apiSecretServiceAuth.
302
- */
303
- apiSecretServiceAuthConfiguration?: APISecretServiceAuthConfiguration;
304
299
  /**
305
300
  * Enum of possible authentication types.
306
301
  */
@@ -310,6 +305,11 @@ export interface ComposeExtensionAuthorization {
310
305
  * auth type is entraId.
311
306
  */
312
307
  microsoftEntraConfiguration?: MicrosoftEntraConfiguration;
308
+ /**
309
+ * Object capturing details needed to do service auth. It will be only present when auth
310
+ * type is apiSecretServiceAuth.
311
+ */
312
+ apiSecretServiceAuthConfiguration?: APISecretServiceAuthConfiguration;
313
313
  }
314
314
  /**
315
315
  * Object capturing details needed to do service auth. It will be only present when auth
@@ -336,6 +336,15 @@ export interface MicrosoftEntraConfiguration {
336
336
  supportsSingleSignOn?: boolean;
337
337
  }
338
338
  export interface ComposeExtensionCommand {
339
+ /**
340
+ * Id of the command.
341
+ */
342
+ id: string;
343
+ /**
344
+ * Type of the command
345
+ */
346
+ type?: CommandType;
347
+ samplePrompts?: SamplePrompt[];
339
348
  /**
340
349
  * A relative file path for api response rendering template file.
341
350
  */
@@ -345,72 +354,63 @@ export interface ComposeExtensionCommand {
345
354
  */
346
355
  context?: CommandContext[];
347
356
  /**
348
- * Description of the command.
349
- */
350
- description?: string;
351
- /**
352
- * A boolean value that indicates if it should fetch task module dynamically
357
+ * Title of the command.
353
358
  */
354
- fetchTask?: boolean;
359
+ title: string;
355
360
  /**
356
- * Id of the command.
361
+ * Description of the command.
357
362
  */
358
- id: string;
363
+ description?: string;
359
364
  /**
360
365
  * A boolean value that indicates if the command should be run once initially with no
361
366
  * parameter.
362
367
  */
363
368
  initialRun?: boolean;
364
- parameters?: Parameter[];
365
- samplePrompts?: SamplePrompt[];
369
+ /**
370
+ * A boolean value that indicates if it should fetch task module dynamically
371
+ */
372
+ fetchTask?: boolean;
366
373
  /**
367
374
  * Semantic description for the command.
368
375
  */
369
376
  semanticDescription?: string;
377
+ parameters?: Parameter[];
370
378
  taskInfo?: TaskInfo;
379
+ }
380
+ export type CommandContext = "compose" | "commandBox" | "message";
381
+ export interface Parameter {
371
382
  /**
372
- * Title of the command.
383
+ * Name of the parameter.
373
384
  */
374
- title: string;
385
+ name: string;
375
386
  /**
376
- * Type of the command
387
+ * Type of the parameter
377
388
  */
378
- type?: CommandType;
379
- }
380
- export type CommandContext = "compose" | "commandBox" | "message";
381
- export interface Parameter {
389
+ inputType?: InputType;
382
390
  /**
383
- * The choice options for the parameter
391
+ * Title of the parameter.
384
392
  */
385
- choices?: Choice[];
393
+ title: string;
386
394
  /**
387
395
  * Description of the parameter.
388
396
  */
389
397
  description?: string;
390
398
  /**
391
- * Type of the parameter
399
+ * Initial value for the parameter
392
400
  */
393
- inputType?: InputType;
401
+ value?: string;
394
402
  /**
395
403
  * The value indicates if this parameter is a required field.
396
404
  */
397
405
  isRequired?: boolean;
398
- /**
399
- * Name of the parameter.
400
- */
401
- name: string;
402
406
  /**
403
407
  * Semantic description for the parameter.
404
408
  */
405
409
  semanticDescription?: string;
406
410
  /**
407
- * Title of the parameter.
408
- */
409
- title: string;
410
- /**
411
- * Initial value for the parameter
411
+ * The choice options for the parameter
412
412
  */
413
- value?: string;
413
+ choices?: Choice[];
414
414
  }
415
415
  export interface Choice {
416
416
  /**
@@ -465,23 +465,15 @@ export interface Value {
465
465
  }
466
466
  export type ConfigurableProperty = "name" | "shortDescription" | "longDescription" | "smallImageUrl" | "largeImageUrl" | "accentColor" | "developerUrl" | "privacyUrl" | "termsOfUseUrl";
467
467
  export interface ConfigurableTab {
468
- /**
469
- * A value indicating whether an instance of the tab's configuration can be updated by the
470
- * user after creation.
471
- */
472
- canUpdateConfiguration?: boolean;
473
468
  /**
474
469
  * The url to use when configuring the tab.
475
470
  */
476
471
  configurationUrl: string;
477
472
  /**
478
- * The set of contextItem scopes that a tab belong to
479
- */
480
- context?: ConfigurableTabContext[];
481
- /**
482
- * The set of meetingSurfaceItem scopes that a tab belong to
473
+ * A value indicating whether an instance of the tab's configuration can be updated by the
474
+ * user after creation.
483
475
  */
484
- meetingSurfaces?: MeetingSurface[];
476
+ canUpdateConfiguration?: boolean;
485
477
  /**
486
478
  * Specifies whether the tab offers an experience in the context of a channel in a team, in
487
479
  * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
@@ -489,6 +481,14 @@ export interface ConfigurableTab {
489
481
  * and groupchats scopes.
490
482
  */
491
483
  scopes: ConfigurableTabScope[];
484
+ /**
485
+ * The set of meetingSurfaceItem scopes that a tab belong to
486
+ */
487
+ meetingSurfaces?: MeetingSurface[];
488
+ /**
489
+ * The set of contextItem scopes that a tab belong to
490
+ */
491
+ context?: ConfigurableTabContext[];
492
492
  /**
493
493
  * A relative file path to a tab preview image for use in SharePoint. Size 1024x768.
494
494
  */
@@ -503,15 +503,15 @@ export type MeetingSurface = "sidePanel" | "stage";
503
503
  export type ConfigurableTabScope = "team" | "groupChat";
504
504
  export type SupportedSharePointHost = "sharePointFullPage" | "sharePointWebPart";
505
505
  export interface Connector {
506
- /**
507
- * The url to use for configuring the connector using the inline configuration experience.
508
- */
509
- configurationUrl?: string;
510
506
  /**
511
507
  * A unique identifier for the connector which matches its ID in the Connectors Developer
512
508
  * Portal.
513
509
  */
514
510
  connectorId: string;
511
+ /**
512
+ * The url to use for configuring the connector using the inline configuration experience.
513
+ */
514
+ configurationUrl?: string;
515
515
  /**
516
516
  * Specifies whether the connector offers an experience in the context of a channel in a
517
517
  * team, or an experience scoped to an individual user alone. Currently, only the team scope
@@ -531,55 +531,55 @@ export interface CopilotAgents {
531
531
  * file.
532
532
  */
533
533
  export interface DeclarativeAgentRef {
534
- /**
535
- * Relative file path to this declarative agent element file in the application package.
536
- */
537
- file: string;
538
534
  /**
539
535
  * A unique identifier for this declarative agent element.
540
536
  */
541
537
  id: string;
538
+ /**
539
+ * Relative file path to this declarative agent element file in the application package.
540
+ */
541
+ file: string;
542
542
  }
543
543
  /**
544
544
  * Cards wich could be pinned to dashboard providing summarized view of information relevant
545
545
  * to user.
546
546
  */
547
547
  export interface DashboardCard {
548
- contentSource: DashboardCardContentSource;
549
548
  /**
550
- * Rendering Size for dashboard card.
551
- */
552
- defaultSize: DefaultSize;
553
- /**
554
- * Description of the card.Maximum length is 255 characters.
549
+ * Unique Id for the card. Must be unique inside the app.
555
550
  */
556
- description: string;
551
+ id: string;
557
552
  /**
558
553
  * Represents the name of the card. Maximum length is 255 characters.
559
554
  */
560
555
  displayName: string;
561
- icon?: DashboardCardIcon;
562
556
  /**
563
- * Unique Id for the card. Must be unique inside the app.
557
+ * Description of the card.Maximum length is 255 characters.
564
558
  */
565
- id: string;
559
+ description: string;
566
560
  /**
567
561
  * Id of the group in the card picker. This must be guid.
568
562
  */
569
563
  pickerGroupId: string;
564
+ icon?: DashboardCardIcon;
565
+ contentSource: DashboardCardContentSource;
566
+ /**
567
+ * Rendering Size for dashboard card.
568
+ */
569
+ defaultSize: DefaultSize;
570
570
  }
571
571
  /**
572
572
  * Represents a configuration for the source of the card’s content.
573
573
  */
574
574
  export interface DashboardCardContentSource {
575
- /**
576
- * The configuration for the bot source. Required if sourceType is set to bot.
577
- */
578
- botConfiguration?: BotConfiguration;
579
575
  /**
580
576
  * The content of the dashboard card is sourced from a bot.
581
577
  */
582
578
  sourceType?: "bot";
579
+ /**
580
+ * The configuration for the bot source. Required if sourceType is set to bot.
581
+ */
582
+ botConfiguration?: BotConfiguration;
583
583
  }
584
584
  /**
585
585
  * The configuration for the bot source. Required if sourceType is set to bot.
@@ -616,6 +616,11 @@ export interface DashboardCardIcon {
616
616
  * user installs the app
617
617
  */
618
618
  export interface DefaultGroupCapability {
619
+ /**
620
+ * When the install scope selected is Team, this field specifies the default capability
621
+ * available
622
+ */
623
+ team?: Groupchat;
619
624
  /**
620
625
  * When the install scope selected is GroupChat, this field specifies the default capability
621
626
  * available
@@ -626,11 +631,6 @@ export interface DefaultGroupCapability {
626
631
  * available
627
632
  */
628
633
  meetings?: Groupchat;
629
- /**
630
- * When the install scope selected is Team, this field specifies the default capability
631
- * available
632
- */
633
- team?: Groupchat;
634
634
  }
635
635
  /**
636
636
  * When the install scope selected is GroupChat, this field specifies the default capability
@@ -649,17 +649,21 @@ export type Groupchat = "tab" | "bot" | "connector";
649
649
  */
650
650
  export type DefaultInstallScope = "personal" | "team" | "groupChat" | "meetings";
651
651
  export interface Description {
652
- /**
653
- * The full description of the app. Maximum length is 4000 characters.
654
- */
655
- full: string;
656
652
  /**
657
653
  * A short description of the app used when space is limited. Maximum length is 80
658
654
  * characters.
659
655
  */
660
656
  short: string;
657
+ /**
658
+ * The full description of the app. Maximum length is 4000 characters.
659
+ */
660
+ full: string;
661
661
  }
662
662
  export interface Developer {
663
+ /**
664
+ * The display name for the developer.
665
+ */
666
+ name: string;
663
667
  /**
664
668
  * The Microsoft Partner Network ID that identifies the partner organization building the
665
669
  * app. This field is not required, and should only be used if you are already part of the
@@ -667,9 +671,9 @@ export interface Developer {
667
671
  */
668
672
  mpnId?: string;
669
673
  /**
670
- * The display name for the developer.
674
+ * The url to the page that provides support information for the app.
671
675
  */
672
- name: string;
676
+ websiteUrl: string;
673
677
  /**
674
678
  * The url to the page that provides privacy information for the app.
675
679
  */
@@ -678,35 +682,31 @@ export interface Developer {
678
682
  * The url to the page that provides the terms of use for the app.
679
683
  */
680
684
  termsOfUseUrl: string;
681
- /**
682
- * The url to the page that provides support information for the app.
683
- */
684
- websiteUrl: string;
685
685
  }
686
686
  export type DevicePermission = "geolocation" | "media" | "notifications" | "midi" | "openExternal";
687
687
  /**
688
688
  * The set of extensions for this app. Currently only one extensions per app is supported.
689
689
  */
690
690
  export interface ElementExtension {
691
+ requirements?: RequirementsExtensionElement;
692
+ runtimes?: ExtensionRuntimesArray[];
693
+ ribbons?: ExtensionRibbonsArray[];
694
+ autoRunEvents?: ExtensionAutoRunEventsArray[];
691
695
  alternates?: ExtensionAlternateVersionsArray[];
692
696
  /**
693
697
  * The url for your extension, used to validate Exchange user identity tokens.
694
698
  */
695
699
  audienceClaimUrl?: string;
696
- autoRunEvents?: ExtensionAutoRunEventsArray[];
697
- requirements?: RequirementsExtensionElement;
698
- ribbons?: ExtensionRibbonsArray[];
699
- runtimes?: ExtensionRuntimesArray[];
700
700
  }
701
701
  export interface ExtensionAlternateVersionsArray {
702
- alternateIcons?: AlternateIcons;
703
- hide?: Hide;
704
- prefer?: Prefer;
705
702
  requirements?: RequirementsExtensionElement;
703
+ prefer?: Prefer;
704
+ hide?: Hide;
705
+ alternateIcons?: AlternateIcons;
706
706
  }
707
707
  export interface AlternateIcons {
708
- highResolutionIcon: ExtensionCommonIcon;
709
708
  icon: ExtensionCommonIcon;
709
+ highResolutionIcon: ExtensionCommonIcon;
710
710
  }
711
711
  export interface ExtensionCommonIcon {
712
712
  /**
@@ -719,8 +719,8 @@ export interface ExtensionCommonIcon {
719
719
  url: string;
720
720
  }
721
721
  export interface Hide {
722
- customOfficeAddin?: CustomOfficeAddin;
723
722
  storeOfficeAddin?: StoreOfficeAddin;
723
+ customOfficeAddin?: CustomOfficeAddin;
724
724
  [property: string]: any;
725
725
  }
726
726
  export interface CustomOfficeAddin {
@@ -730,14 +730,14 @@ export interface CustomOfficeAddin {
730
730
  officeAddinId: string;
731
731
  }
732
732
  export interface StoreOfficeAddin {
733
- /**
734
- * Asset ID of the in-market add-in to hide. Maximum length is 64 characters.
735
- */
736
- assetId: string;
737
733
  /**
738
734
  * Solution ID of an in-market add-in to hide. Maximum length is 64 characters.
739
735
  */
740
736
  officeAddinId: string;
737
+ /**
738
+ * Asset ID of the in-market add-in to hide. Maximum length is 64 characters.
739
+ */
740
+ assetId: string;
741
741
  }
742
742
  export interface Prefer {
743
743
  comAddin?: COMAddin;
@@ -751,40 +751,41 @@ export interface COMAddin {
751
751
  }
752
752
  export interface RequirementsExtensionElement {
753
753
  capabilities?: Capability[];
754
- /**
755
- * Identifies the form factors that support the add-in. Supported values: mobile, desktop.
756
- */
757
- formFactors?: FormFactor[];
758
754
  /**
759
755
  * Identifies the scopes in which the add-in can run.
760
756
  */
761
757
  scopes?: RequirementsScope[];
758
+ /**
759
+ * Identifies the form factors that support the add-in. Supported values: mobile, desktop.
760
+ */
761
+ formFactors?: FormFactor[];
762
762
  }
763
763
  export interface Capability {
764
764
  /**
765
- * Identifies the maximum version for the requirement sets that the add-in needs to run.
765
+ * Identifies the name of the requirement sets that the add-in needs to run.
766
766
  */
767
- maxVersion?: string;
767
+ name: string;
768
768
  /**
769
769
  * Identifies the minimum version for the requirement sets that the add-in needs to run.
770
770
  */
771
771
  minVersion?: string;
772
772
  /**
773
- * Identifies the name of the requirement sets that the add-in needs to run.
773
+ * Identifies the maximum version for the requirement sets that the add-in needs to run.
774
774
  */
775
- name: string;
775
+ maxVersion?: string;
776
776
  }
777
777
  export type FormFactor = "desktop" | "mobile";
778
778
  export type RequirementsScope = "mail" | "workbook" | "document" | "presentation";
779
779
  export interface ExtensionAutoRunEventsArray {
780
+ requirements?: RequirementsExtensionElement;
780
781
  /**
781
782
  * Specifies the type of event. For supported types, please see:
782
783
  * https://review.learn.microsoft.com/en-us/office/dev/add-ins/outlook/autolaunch?tabs=xmlmanifest#supported-events.
783
784
  */
784
785
  events: Event[];
785
- requirements?: RequirementsExtensionElement;
786
786
  }
787
787
  export interface Event {
788
+ type: string;
788
789
  /**
789
790
  * The ID of an action defined in runtimes. Maximum length is 64 characters.
790
791
  */
@@ -793,7 +794,6 @@ export interface Event {
793
794
  * Configures how Outlook responds to the event.
794
795
  */
795
796
  options?: Options;
796
- type: string;
797
797
  }
798
798
  /**
799
799
  * Configures how Outlook responds to the event.
@@ -803,8 +803,8 @@ export interface Options {
803
803
  }
804
804
  export type SendMode = "promptUser" | "softBlock" | "block";
805
805
  export interface ExtensionRibbonsArray {
806
- contexts?: ExtensionContext[];
807
806
  requirements?: RequirementsExtensionElement;
807
+ contexts?: ExtensionContext[];
808
808
  tabs: ExtensionRibbonsArrayTabsItem[];
809
809
  }
810
810
  /**
@@ -814,30 +814,29 @@ export interface ExtensionRibbonsArray {
814
814
  */
815
815
  export type ExtensionContext = "mailRead" | "mailCompose" | "meetingDetailsOrganizer" | "meetingDetailsAttendee" | "onlineMeetingDetailsOrganizer" | "logEventMeetingDetailsAttendee" | "default";
816
816
  export interface ExtensionRibbonsArrayTabsItem {
817
+ /**
818
+ * A unique identifier for this tab within the app. Maximum length is 64 characters.
819
+ */
820
+ id?: string;
821
+ /**
822
+ * Displayed text for the tab. Maximum length is 64 characters.
823
+ */
824
+ label?: string;
825
+ position?: Position;
817
826
  /**
818
827
  * Id of the existing office Tab. Maximum length is 64 characters.
819
828
  */
820
829
  builtInTabId?: string;
821
- /**
822
- * Defines mobile group item.
823
- */
824
- customMobileRibbonGroups?: ExtensionRibbonsCustomMobileGroupItem[];
825
830
  /**
826
831
  * Defines tab groups.
827
832
  */
828
833
  groups?: ExtensionRibbonsCustomTabGroupsItem[];
829
834
  /**
830
- * A unique identifier for this tab within the app. Maximum length is 64 characters.
831
- */
832
- id?: string;
833
- /**
834
- * Displayed text for the tab. Maximum length is 64 characters.
835
+ * Defines mobile group item.
835
836
  */
836
- label?: string;
837
- position?: Position;
837
+ customMobileRibbonGroups?: ExtensionRibbonsCustomMobileGroupItem[];
838
838
  }
839
839
  export interface ExtensionRibbonsCustomMobileGroupItem {
840
- controls: ExtensionRibbonsCustomMobileControlButtonItem[];
841
840
  /**
842
841
  * Specify the Id of the group. Used for mobileMessageRead ext point.
843
842
  */
@@ -846,31 +845,27 @@ export interface ExtensionRibbonsCustomMobileGroupItem {
846
845
  * Short label of the control. Maximum length is 32 characters.
847
846
  */
848
847
  label: string;
848
+ controls: ExtensionRibbonsCustomMobileControlButtonItem[];
849
849
  [property: string]: any;
850
850
  }
851
851
  export interface ExtensionRibbonsCustomMobileControlButtonItem {
852
- /**
853
- * The ID of an action defined in runtimes. Maximum length is 64 characters.
854
- */
855
- actionId: string;
856
- icons: ExtensionCustomMobileIcon[];
857
852
  /**
858
853
  * Specify the Id of the button like msgReadFunctionButton.
859
854
  */
860
855
  id: string;
856
+ type: "mobileButton";
861
857
  /**
862
858
  * Short label of the control. Maximum length is 32 characters.
863
859
  */
864
860
  label: string;
865
- type: "mobileButton";
861
+ icons: ExtensionCustomMobileIcon[];
862
+ /**
863
+ * The ID of an action defined in runtimes. Maximum length is 64 characters.
864
+ */
865
+ actionId: string;
866
866
  [property: string]: any;
867
867
  }
868
868
  export interface ExtensionCustomMobileIcon {
869
- /**
870
- * How to scale - 1,2,3 for each image. This attribute specifies the UIScreen.scale property
871
- * for iOS devices.
872
- */
873
- scale: number;
874
869
  /**
875
870
  * Size in pixels of the icon. Three image sizes are required (25, 32, and 48 pixels).
876
871
  */
@@ -879,14 +874,13 @@ export interface ExtensionCustomMobileIcon {
879
874
  * Url to the icon.
880
875
  */
881
876
  url: string;
882
- }
883
- export interface ExtensionRibbonsCustomTabGroupsItem {
884
877
  /**
885
- * Id of a built-in Group. Maximum length is 64 characters.
878
+ * How to scale - 1,2,3 for each image. This attribute specifies the UIScreen.scale property
879
+ * for iOS devices.
886
880
  */
887
- builtInGroupId?: string;
888
- controls?: ExtensionCommonCustomGroupControlsItem[];
889
- icons?: ExtensionCommonIcon[];
881
+ scale: number;
882
+ }
883
+ export interface ExtensionRibbonsCustomTabGroupsItem {
890
884
  /**
891
885
  * A unique identifier for this group within the app. Maximum length is 64 characters.
892
886
  */
@@ -895,80 +889,86 @@ export interface ExtensionRibbonsCustomTabGroupsItem {
895
889
  * Displayed text for the group. Maximum length is 64 characters.
896
890
  */
897
891
  label?: string;
892
+ icons?: ExtensionCommonIcon[];
893
+ controls?: ExtensionCommonCustomGroupControlsItem[];
894
+ /**
895
+ * Id of a built-in Group. Maximum length is 64 characters.
896
+ */
897
+ builtInGroupId?: string;
898
898
  }
899
899
  export interface ExtensionCommonCustomGroupControlsItem {
900
900
  /**
901
- * The ID of an execution-type action that handles this key combination. Maximum length is
902
- * 64 characters.
901
+ * A unique identifier for this control within the app. Maximum length is 64 characters.
903
902
  */
904
- actionId: string;
903
+ id: string;
904
+ /**
905
+ * Defines the type of control whether button or menu.
906
+ */
907
+ type: FluffyType;
905
908
  /**
906
909
  * Id of the existing office control. Maximum length is 64 characters.
907
910
  */
908
911
  builtInControlId?: string;
909
912
  /**
910
- * Whether the control is initially enabled.
913
+ * Displayed text for the control. Maximum length is 64 characters.
911
914
  */
912
- enabled?: boolean;
915
+ label: string;
913
916
  icons: ExtensionCommonIcon[];
917
+ supertip: ExtensionCommonSuperToolTip;
914
918
  /**
915
- * A unique identifier for this control within the app. Maximum length is 64 characters.
916
- */
917
- id: string;
918
- /**
919
- * Configures the items for a menu control.
920
- */
921
- items?: ExtensionCommonCustomControlMenuItem[];
922
- /**
923
- * Displayed text for the control. Maximum length is 64 characters.
919
+ * The ID of an execution-type action that handles this key combination. Maximum length is
920
+ * 64 characters.
924
921
  */
925
- label: string;
922
+ actionId: string;
926
923
  /**
927
924
  * Specifies whether a group, button, menu, or menu item will be hidden on application and
928
925
  * platform combinations that support the API (Office.ribbon.requestCreateControls) that
929
926
  * installs custom contextual tabs on the ribbon. Default is false.
930
927
  */
931
928
  overriddenByRibbonApi?: boolean;
932
- supertip: ExtensionCommonSuperToolTip;
933
- /**
934
- * Defines the type of control whether button or menu.
935
- */
936
- type: FluffyType;
937
- }
938
- export interface ExtensionCommonCustomControlMenuItem {
939
- /**
940
- * The ID of an action defined in runtimes. Maximum length is 64 characters.
941
- */
942
- actionId: string;
943
929
  /**
944
930
  * Whether the control is initially enabled.
945
931
  */
946
932
  enabled?: boolean;
947
- icons?: ExtensionCommonIcon[];
933
+ /**
934
+ * Configures the items for a menu control.
935
+ */
936
+ items?: ExtensionCommonCustomControlMenuItem[];
937
+ }
938
+ export interface ExtensionCommonCustomControlMenuItem {
948
939
  /**
949
940
  * A unique identifier for this control within the app. Maximum length is 64 characters.
950
941
  */
951
942
  id: string;
943
+ /**
944
+ * Supported values: menuItem.
945
+ */
946
+ type: "menuItem";
952
947
  /**
953
948
  * Displayed text for the control. Maximum length is 64 characters.
954
949
  */
955
950
  label: string;
956
- overriddenByRibbonApi?: boolean;
951
+ icons?: ExtensionCommonIcon[];
957
952
  supertip: ExtensionCommonSuperToolTip;
958
953
  /**
959
- * Supported values: menuItem.
954
+ * The ID of an action defined in runtimes. Maximum length is 64 characters.
960
955
  */
961
- type: "menuItem";
962
- }
963
- export interface ExtensionCommonSuperToolTip {
956
+ actionId: string;
964
957
  /**
965
- * Description of the super tip. Maximum length is 250 characters.
958
+ * Whether the control is initially enabled.
966
959
  */
967
- description: string;
960
+ enabled?: boolean;
961
+ overriddenByRibbonApi?: boolean;
962
+ }
963
+ export interface ExtensionCommonSuperToolTip {
968
964
  /**
969
965
  * Title text of the super tip. Maximum length is 64 characters.
970
966
  */
971
967
  title: string;
968
+ /**
969
+ * Description of the super tip. Maximum length is 250 characters.
970
+ */
971
+ description: string;
972
972
  }
973
973
  /**
974
974
  * Supported values: menuItem.
@@ -978,14 +978,14 @@ export interface ExtensionCommonSuperToolTip {
978
978
  */
979
979
  export type FluffyType = "button" | "menu";
980
980
  export interface Position {
981
- /**
982
- * Define alignment of this custom tab relative to the specified built-in tab.
983
- */
984
- align: Align;
985
981
  /**
986
982
  * The id of the built-in tab. Maximum length is 64 characters.
987
983
  */
988
984
  builtInTabId: string;
985
+ /**
986
+ * Define alignment of this custom tab relative to the specified built-in tab.
987
+ */
988
+ align: Align;
989
989
  }
990
990
  /**
991
991
  * Define alignment of this custom tab relative to the specified built-in tab.
@@ -995,60 +995,60 @@ export type Align = "after" | "before";
995
995
  * A runtime environment for a page or script
996
996
  */
997
997
  export interface ExtensionRuntimesArray {
998
- actions?: ExtensionRuntimesActionsItem[];
999
- code: ExtensionRuntimeCode;
998
+ requirements?: RequirementsExtensionElement;
1000
999
  /**
1001
1000
  * A unique identifier for this runtime within the app. Maximum length is 64 characters.
1002
1001
  */
1003
1002
  id: string;
1003
+ /**
1004
+ * Supports running functions and launching pages.
1005
+ */
1006
+ type?: "general";
1007
+ code: ExtensionRuntimeCode;
1004
1008
  /**
1005
1009
  * Runtimes with a short lifetime do not preserve state across executions. Runtimes with a
1006
1010
  * long lifetime do.
1007
1011
  */
1008
1012
  lifetime?: Lifetime;
1009
- requirements?: RequirementsExtensionElement;
1010
- /**
1011
- * Supports running functions and launching pages.
1012
- */
1013
- type?: "general";
1013
+ actions?: ExtensionRuntimesActionsItem[];
1014
1014
  }
1015
1015
  /**
1016
1016
  * Specifies the set of actions supported by this runtime. An action is either running a
1017
1017
  * JavaScript function or opening a view such as a task pane.
1018
1018
  */
1019
1019
  export interface ExtensionRuntimesActionsItem {
1020
- /**
1021
- * Display name of the action. Maximum length is 64 characters.
1022
- */
1023
- displayName?: string;
1024
1020
  /**
1025
1021
  * Identifier for this action. Maximum length is 64 characters. This value is passed to the
1026
1022
  * code file.
1027
1023
  */
1028
1024
  id: string;
1029
1025
  /**
1030
- * Whether allows the action to have multiple selection.
1026
+ * executeFunction: Run a script function without waiting for it to finish. openPate: Open a
1027
+ * page in a view.
1031
1028
  */
1032
- multiselect?: boolean;
1029
+ type: ActionType;
1030
+ /**
1031
+ * Display name of the action. Maximum length is 64 characters.
1032
+ */
1033
+ displayName?: string;
1033
1034
  /**
1034
1035
  * Specifies that a task pane supports pinning, which keeps the task pane open when the user
1035
1036
  * changes the selection.
1036
1037
  */
1037
1038
  pinnable?: boolean;
1038
1039
  /**
1039
- * Whether allows task pane add-ins to activate without the Reading Pane enabled or a
1040
- * message selected.
1040
+ * View where the page should be opened. Maximum length is 64 characters.
1041
1041
  */
1042
- supportsNoItemContext?: boolean;
1042
+ view?: string;
1043
1043
  /**
1044
- * executeFunction: Run a script function without waiting for it to finish. openPate: Open a
1045
- * page in a view.
1044
+ * Whether allows the action to have multiple selection.
1046
1045
  */
1047
- type: ActionType;
1046
+ multiselect?: boolean;
1048
1047
  /**
1049
- * View where the page should be opened. Maximum length is 64 characters.
1048
+ * Whether allows task pane add-ins to activate without the Reading Pane enabled or a
1049
+ * message selected.
1050
1050
  */
1051
- view?: string;
1051
+ supportsNoItemContext?: boolean;
1052
1052
  }
1053
1053
  /**
1054
1054
  * executeFunction: Run a script function without waiting for it to finish. openPate: Open a
@@ -1084,36 +1084,36 @@ export interface GraphConnector {
1084
1084
  notificationUrl: string;
1085
1085
  }
1086
1086
  export interface Icons {
1087
- /**
1088
- * A relative file path to a full color PNG icon. Size 192x192.
1089
- */
1090
- color: string;
1091
1087
  /**
1092
1088
  * A relative file path to a transparent PNG outline icon. The border color needs to be
1093
1089
  * white. Size 32x32.
1094
1090
  */
1095
1091
  outline: string;
1096
- }
1097
- export interface LocalizationInfo {
1098
- additionalLanguages?: AdditionalLanguage[];
1099
1092
  /**
1100
- * A relative file path to a the .json file containing strings in the default language.
1093
+ * A relative file path to a full color PNG icon. Size 192x192.
1101
1094
  */
1102
- defaultLanguageFile?: string;
1095
+ color: string;
1096
+ }
1097
+ export interface LocalizationInfo {
1103
1098
  /**
1104
1099
  * The language tag of the strings in this top level manifest file.
1105
1100
  */
1106
1101
  defaultLanguageTag: string;
1107
- }
1108
- export interface AdditionalLanguage {
1109
1102
  /**
1110
- * A relative file path to a the .json file containing the translated strings.
1103
+ * A relative file path to a the .json file containing strings in the default language.
1111
1104
  */
1112
- file: string;
1105
+ defaultLanguageFile?: string;
1106
+ additionalLanguages?: AdditionalLanguage[];
1107
+ }
1108
+ export interface AdditionalLanguage {
1113
1109
  /**
1114
1110
  * The language tag of the strings in the provided file.
1115
1111
  */
1116
1112
  languageTag: string;
1113
+ /**
1114
+ * A relative file path to a the .json file containing the translated strings.
1115
+ */
1116
+ file: string;
1117
1117
  }
1118
1118
  /**
1119
1119
  * Specify meeting extension definition.
@@ -1123,75 +1123,79 @@ export interface MeetingExtensionDefinition {
1123
1123
  * Meeting supported scenes.
1124
1124
  */
1125
1125
  scenes?: Scene[];
1126
- /**
1127
- * A boolean value indicating whether this app allows management by anonymous users.
1128
- */
1129
- supportsAnonymousGuestUsers?: boolean;
1130
1126
  /**
1131
1127
  * A boolean value indicating whether this app can stream the meeting's audio video content
1132
1128
  * to an RTMP endpoint.
1133
1129
  */
1134
1130
  supportsStreaming?: boolean;
1135
- }
1136
- export interface Scene {
1137
1131
  /**
1138
- * A relative file path to a scene metadata json file.
1132
+ * A boolean value indicating whether this app allows management by anonymous users.
1139
1133
  */
1140
- file: string;
1134
+ supportsAnonymousGuestUsers?: boolean;
1135
+ }
1136
+ export interface Scene {
1141
1137
  /**
1142
1138
  * A unique identifier for this scene. This id must be a GUID.
1143
1139
  */
1144
1140
  id: string;
1145
- /**
1146
- * Maximum audiences supported in scene.
1147
- */
1148
- maxAudience: number;
1149
1141
  /**
1150
1142
  * Scene name.
1151
1143
  */
1152
1144
  name: string;
1145
+ /**
1146
+ * A relative file path to a scene metadata json file.
1147
+ */
1148
+ file: string;
1153
1149
  /**
1154
1150
  * A relative file path to a scene PNG preview icon.
1155
1151
  */
1156
1152
  preview: string;
1153
+ /**
1154
+ * Maximum audiences supported in scene.
1155
+ */
1156
+ maxAudience: number;
1157
1157
  /**
1158
1158
  * Number of seats reserved for organizers or presenters.
1159
1159
  */
1160
1160
  seatsReservedForOrganizersOrPresenters: number;
1161
1161
  }
1162
1162
  export interface Name {
1163
- /**
1164
- * The full name of the app, used if the full app name exceeds 30 characters.
1165
- */
1166
- full: string;
1167
1163
  /**
1168
1164
  * A short display name for the app.
1169
1165
  */
1170
1166
  short: string;
1167
+ /**
1168
+ * The full name of the app, used if the full app name exceeds 30 characters.
1169
+ */
1170
+ full: string;
1171
1171
  }
1172
1172
  export type Permission = "identity" | "messageTeamMembers";
1173
1173
  export interface StaticTab {
1174
1174
  /**
1175
- * The Microsoft App ID specified for the bot in the Bot Framework portal
1176
- * (https://dev.botframework.com/bots)
1175
+ * A unique identifier for the entity which the tab displays.
1177
1176
  */
1178
- contentBotId?: string;
1177
+ entityId: string;
1178
+ /**
1179
+ * The display name of the tab.
1180
+ */
1181
+ name?: string;
1179
1182
  /**
1180
1183
  * The url which points to the entity UI to be displayed in the canvas.
1181
1184
  */
1182
1185
  contentUrl?: string;
1183
1186
  /**
1184
- * The set of contextItem scopes that a tab belong to
1187
+ * The Microsoft App ID specified for the bot in the Bot Framework portal
1188
+ * (https://dev.botframework.com/bots)
1185
1189
  */
1186
- context?: StaticTabContext[];
1190
+ contentBotId?: string;
1187
1191
  /**
1188
- * A unique identifier for the entity which the tab displays.
1192
+ * The url to point at if a user opts to view in a browser.
1189
1193
  */
1190
- entityId: string;
1194
+ websiteUrl?: string;
1191
1195
  /**
1192
- * The display name of the tab.
1196
+ * The url to direct a user's search queries.
1193
1197
  */
1194
- name?: string;
1198
+ searchUrl?: string;
1195
1199
  /**
1196
1200
  * Specifies whether the tab offers an experience in the context of a channel in a team, or
1197
1201
  * an experience scoped to an individual user alone or group chat. These options are
@@ -1199,13 +1203,9 @@ export interface StaticTab {
1199
1203
  */
1200
1204
  scopes: CommandListScope[];
1201
1205
  /**
1202
- * The url to direct a user's search queries.
1203
- */
1204
- searchUrl?: string;
1205
- /**
1206
- * The url to point at if a user opts to view in a browser.
1206
+ * The set of contextItem scopes that a tab belong to
1207
1207
  */
1208
- websiteUrl?: string;
1208
+ context?: StaticTabContext[];
1209
1209
  }
1210
1210
  export type StaticTabContext = "personalTab" | "channelTab" | "privateChatTab" | "meetingChatTab" | "meetingDetailsTab" | "meetingSidePanel" | "meetingStage" | "teamLevelApp";
1211
1211
  /**