@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,141 +1,141 @@
1
1
  export interface TeamsManifestV1D20 {
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?: TeamsManifestV1D20Authorization;
8
+ manifestVersion: "1.20";
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: NameClass;
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
- /**
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
49
  /**
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
- elementRelationshipSet?: ElementRelationshipSet;
64
- 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;
65
78
  /**
66
79
  * Specify the app's Graph connector configuration. If this is present then
67
80
  * webApplicationInfo.id must also be specified.
68
81
  */
69
82
  graphConnector?: GraphConnector;
70
- icons: Icons;
71
83
  /**
72
- * A unique identifier for this app. This id must be a GUID.
73
- */
74
- id: string;
75
- /**
76
- * The Intune-related properties for the app.
84
+ * A value indicating whether or not show loading indicator when app/tab is loading
77
85
  */
78
- intuneInfo?: IntuneInfo;
86
+ showLoadingIndicator?: boolean;
79
87
  /**
80
88
  * A value indicating whether a personal app is rendered without a tab header-bar
81
89
  */
82
90
  isFullScreen?: boolean;
83
- localizationInfo?: LocalizationInfo;
91
+ activities?: Activities;
84
92
  /**
85
- * The version of the schema this manifest is using. This schema version supports extending
86
- * Teams apps to other parts of the Microsoft 365 ecosystem. More info at
87
- * https://aka.ms/extendteamsapps.
93
+ * A list of tenant configured properties for an app
88
94
  */
89
- manifestVersion: "1.20";
95
+ configurableProperties?: ConfigurableProperty[];
90
96
  /**
91
- * 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.
92
99
  */
93
- meetingExtensionDefinition?: MeetingExtensionDefinition;
94
- name: NameClass;
100
+ supportedChannelTypes?: SupportedChannelType[];
95
101
  /**
96
- * Specifies the permissions the app requests from users.
102
+ * A value indicating whether an app is blocked by default until admin allows it
97
103
  */
98
- permissions?: Permission[];
104
+ defaultBlockUntilAdminAction?: boolean;
99
105
  /**
100
106
  * The url to the page that provides additional app information for the admins
101
107
  */
102
108
  publisherDocsUrl?: string;
103
109
  /**
104
- * A value indicating whether or not show loading indicator when app/tab is loading
105
- */
106
- showLoadingIndicator?: boolean;
107
- /**
108
- * A set of tabs that may be 'pinned' by default, without the user adding them manually.
109
- * Static tabs declared in personal scope are always pinned to the app's personal
110
- * experience. Static tabs do not currently support the 'teams' scope.
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
111
112
  */
112
- staticTabs?: StaticTab[];
113
+ defaultInstallScope?: DefaultInstallScope;
113
114
  /**
114
- * Subscription offer associated with this app.
115
+ * When a group install scope is selected, this will define the default capability when the
116
+ * user installs the app
115
117
  */
116
- subscriptionOffer?: SubscriptionOffer;
118
+ defaultGroupCapability?: DefaultGroupCapability;
117
119
  /**
118
- * List of 'non-standard' channel types that the app supports. Note: Channels of standard
119
- * type are supported by default if the app supports team scope.
120
+ * Specify meeting extension definition.
120
121
  */
121
- supportedChannelTypes?: SupportedChannelType[];
122
+ meetingExtensionDefinition?: MeetingExtensionDefinition;
122
123
  /**
123
- * A list of valid domains from which the tabs expect to load any content. Domain listings
124
- * can include wildcards, for example `*.example.com`. If your tab configuration or content
125
- * UI needs to navigate to any other domain besides the one use for tab configuration, that
126
- * domain must be specified here.
124
+ * Specify and consolidates authorization related information for the App.
127
125
  */
128
- validDomains?: string[];
126
+ authorization?: TeamsManifestV1D20Authorization;
127
+ extensions?: ElementExtension[];
129
128
  /**
130
- * The version of the app. Changes to your manifest should cause a version change. This
131
- * version string must follow the semver standard (http://semver.org).
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
- version: string;
132
+ dashboardCards?: DashboardCard[];
133
+ copilotAgents?: CopilotAgents;
134
134
  /**
135
- * Specify your AAD App ID and Graph information to help users seamlessly sign into your AAD
136
- * app.
135
+ * The Intune-related properties for the app.
137
136
  */
138
- webApplicationInfo?: WebApplicationInfo;
137
+ intuneInfo?: IntuneInfo;
138
+ elementRelationshipSet?: ElementRelationshipSet;
139
139
  }
140
140
  export interface Activities {
141
141
  /**
@@ -144,9 +144,9 @@ export interface Activities {
144
144
  activityTypes?: ActivityType[];
145
145
  }
146
146
  export interface ActivityType {
147
+ type: string;
147
148
  description: string;
148
149
  templateText: string;
149
- type: string;
150
150
  }
151
151
  /**
152
152
  * Specify and consolidates authorization related information for the App.
@@ -186,88 +186,88 @@ export interface Bot {
186
186
  * (https://dev.botframework.com/bots)
187
187
  */
188
188
  botId: string;
189
+ configuration?: Configuration;
189
190
  /**
190
- * The list of commands that the bot supplies, including their usage, description, and the
191
- * scope for which the commands are valid. A separate command list should be used for each
192
- * scope.
191
+ * This value describes whether or not the bot utilizes a user hint to add the bot to a
192
+ * specific channel.
193
193
  */
194
- commandLists?: CommandList[];
195
- configuration?: Configuration;
194
+ needsChannelSelector?: boolean;
196
195
  /**
197
196
  * A value indicating whether or not the bot is a one-way notification only bot, as opposed
198
197
  * to a conversational bot.
199
198
  */
200
199
  isNotificationOnly?: boolean;
201
200
  /**
202
- * This value describes whether or not the bot utilizes a user hint to add the bot to a
203
- * specific channel.
204
- */
205
- needsChannelSelector?: boolean;
206
- requirementSet?: ElementRequirementSet;
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.
201
+ * A value indicating whether the bot supports uploading/downloading of files.
211
202
  */
212
- scopes: CommandListScope[];
203
+ supportsFiles?: boolean;
213
204
  /**
214
205
  * A value indicating whether the bot supports audio calling.
215
206
  */
216
207
  supportsCalling?: boolean;
217
- /**
218
- * A value indicating whether the bot supports uploading/downloading of files.
219
- */
220
- supportsFiles?: boolean;
221
208
  /**
222
209
  * A value indicating whether the bot supports video calling.
223
210
  */
224
211
  supportsVideo?: boolean;
212
+ /**
213
+ * Specifies whether the bot offers an experience in the context of a channel in a team, in
214
+ * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
215
+ * options are non-exclusive.
216
+ */
217
+ scopes: CommandListScope[];
218
+ /**
219
+ * The list of commands that the bot supplies, including their usage, description, and the
220
+ * scope for which the commands are valid. A separate command list should be used for each
221
+ * scope.
222
+ */
223
+ commandLists?: CommandList[];
224
+ requirementSet?: ElementRequirementSet;
225
225
  }
226
226
  export interface CommandList {
227
- commands: CommandListCommand[];
228
227
  /**
229
228
  * Specifies the scopes for which the command list is valid
230
229
  */
231
230
  scopes: CommandListScope[];
231
+ commands: CommandListCommand[];
232
232
  }
233
233
  export interface CommandListCommand {
234
- /**
235
- * A simple text description or an example of the command syntax and its arguments.
236
- */
237
- description: string;
238
234
  /**
239
235
  * The bot command name
240
236
  */
241
237
  title: string;
238
+ /**
239
+ * A simple text description or an example of the command syntax and its arguments.
240
+ */
241
+ description: string;
242
242
  }
243
243
  export type CommandListScope = "team" | "personal" | "groupChat";
244
244
  export interface Configuration {
245
- groupChat?: GroupChat;
246
- team?: GroupChat;
245
+ team?: Team;
246
+ groupChat?: Team;
247
247
  }
248
- export interface GroupChat {
248
+ export interface Team {
249
249
  fetchTask?: boolean;
250
250
  taskInfo?: TaskInfo;
251
251
  }
252
252
  export interface TaskInfo {
253
- /**
254
- * Dialog height - either a number in pixels or default layout such as 'large', 'medium', or
255
- * 'small'
256
- */
257
- height?: string;
258
253
  /**
259
254
  * Initial dialog title
260
255
  */
261
256
  title?: string;
262
- /**
263
- * Initial webview URL
264
- */
265
- url?: string;
266
257
  /**
267
258
  * Dialog width - either a number in pixels or default layout such as 'large', 'medium', or
268
259
  * 'small'
269
260
  */
270
261
  width?: string;
262
+ /**
263
+ * Dialog height - either a number in pixels or default layout such as 'large', 'medium', or
264
+ * 'small'
265
+ */
266
+ height?: string;
267
+ /**
268
+ * Initial webview URL
269
+ */
270
+ url?: string;
271
271
  }
272
272
  /**
273
273
  * An object representing a set of requirements that the host must support for the element.
@@ -290,32 +290,32 @@ export interface HostFunctionality {
290
290
  export type HostMustSupportFunctionalityName = "dialogUrl" | "dialogUrlBot" | "dialogAdaptiveCard" | "dialogAdaptiveCardBot";
291
291
  export interface ComposeExtension {
292
292
  /**
293
- * A relative file path to the api specification file in the manifest package.
293
+ * A unique identifier for the compose extension.
294
294
  */
295
- apiSpecificationFile?: string;
295
+ id?: string;
296
+ /**
297
+ * The Microsoft App ID specified for the bot powering the compose extension in the Bot
298
+ * Framework portal (https://dev.botframework.com/bots)
299
+ */
300
+ botId?: string;
301
+ /**
302
+ * Type of the compose extension.
303
+ */
304
+ composeExtensionType?: ComposeExtensionType;
296
305
  /**
297
306
  * Object capturing authorization information.
298
307
  */
299
308
  authorization?: ComposeExtensionAuthorization;
300
309
  /**
301
- * The Microsoft App ID specified for the bot powering the compose extension in the Bot
302
- * Framework portal (https://dev.botframework.com/bots)
310
+ * A relative file path to the api specification file in the manifest package.
303
311
  */
304
- botId?: string;
312
+ apiSpecificationFile?: string;
305
313
  /**
306
314
  * A value indicating whether the configuration of a compose extension can be updated by the
307
315
  * user.
308
316
  */
309
317
  canUpdateConfiguration?: boolean | null;
310
318
  commands?: ComposeExtensionCommand[];
311
- /**
312
- * Type of the compose extension.
313
- */
314
- composeExtensionType?: ComposeExtensionType;
315
- /**
316
- * A unique identifier for the compose extension.
317
- */
318
- id?: string;
319
319
  /**
320
320
  * A list of handlers that allow apps to be invoked when certain conditions are met
321
321
  */
@@ -326,11 +326,6 @@ export interface ComposeExtension {
326
326
  * Object capturing authorization information.
327
327
  */
328
328
  export interface ComposeExtensionAuthorization {
329
- /**
330
- * Object capturing details needed to do service auth. It will be only present when auth
331
- * type is apiSecretServiceAuth.
332
- */
333
- apiSecretServiceAuthConfiguration?: APISecretServiceAuthConfiguration;
334
329
  /**
335
330
  * Enum of possible authentication types.
336
331
  */
@@ -340,6 +335,11 @@ export interface ComposeExtensionAuthorization {
340
335
  * auth type is entraId.
341
336
  */
342
337
  microsoftEntraConfiguration?: MicrosoftEntraConfiguration;
338
+ /**
339
+ * Object capturing details needed to do service auth. It will be only present when auth
340
+ * type is apiSecretServiceAuth.
341
+ */
342
+ apiSecretServiceAuthConfiguration?: APISecretServiceAuthConfiguration;
343
343
  }
344
344
  /**
345
345
  * Object capturing details needed to do service auth. It will be only present when auth
@@ -366,6 +366,15 @@ export interface MicrosoftEntraConfiguration {
366
366
  supportsSingleSignOn?: boolean;
367
367
  }
368
368
  export interface ComposeExtensionCommand {
369
+ /**
370
+ * Id of the command.
371
+ */
372
+ id: string;
373
+ /**
374
+ * Type of the command
375
+ */
376
+ type?: CommandType;
377
+ samplePrompts?: SamplePrompt[];
369
378
  /**
370
379
  * A relative file path for api response rendering template file.
371
380
  */
@@ -375,72 +384,63 @@ export interface ComposeExtensionCommand {
375
384
  */
376
385
  context?: CommandContext[];
377
386
  /**
378
- * Description of the command.
379
- */
380
- description?: string;
381
- /**
382
- * A boolean value that indicates if it should fetch task module dynamically
387
+ * Title of the command.
383
388
  */
384
- fetchTask?: boolean;
389
+ title: string;
385
390
  /**
386
- * Id of the command.
391
+ * Description of the command.
387
392
  */
388
- id: string;
393
+ description?: string;
389
394
  /**
390
395
  * A boolean value that indicates if the command should be run once initially with no
391
396
  * parameter.
392
397
  */
393
398
  initialRun?: boolean;
394
- parameters?: Parameter[];
395
- samplePrompts?: SamplePrompt[];
399
+ /**
400
+ * A boolean value that indicates if it should fetch task module dynamically
401
+ */
402
+ fetchTask?: boolean;
396
403
  /**
397
404
  * Semantic description for the command.
398
405
  */
399
406
  semanticDescription?: string;
407
+ parameters?: Parameter[];
400
408
  taskInfo?: TaskInfo;
409
+ }
410
+ export type CommandContext = "compose" | "commandBox" | "message";
411
+ export interface Parameter {
401
412
  /**
402
- * Title of the command.
413
+ * Name of the parameter.
403
414
  */
404
- title: string;
415
+ name: string;
405
416
  /**
406
- * Type of the command
417
+ * Type of the parameter
407
418
  */
408
- type?: CommandType;
409
- }
410
- export type CommandContext = "compose" | "commandBox" | "message";
411
- export interface Parameter {
419
+ inputType?: InputType;
412
420
  /**
413
- * The choice options for the parameter
421
+ * Title of the parameter.
414
422
  */
415
- choices?: Choice[];
423
+ title: string;
416
424
  /**
417
425
  * Description of the parameter.
418
426
  */
419
427
  description?: string;
420
428
  /**
421
- * Type of the parameter
429
+ * Initial value for the parameter
422
430
  */
423
- inputType?: InputType;
431
+ value?: string;
424
432
  /**
425
433
  * The value indicates if this parameter is a required field.
426
434
  */
427
435
  isRequired?: boolean;
428
- /**
429
- * Name of the parameter.
430
- */
431
- name: string;
432
436
  /**
433
437
  * Semantic description for the parameter.
434
438
  */
435
439
  semanticDescription?: string;
436
440
  /**
437
- * Title of the parameter.
438
- */
439
- title: string;
440
- /**
441
- * Initial value for the parameter
441
+ * The choice options for the parameter
442
442
  */
443
- value?: string;
443
+ choices?: Choice[];
444
444
  }
445
445
  export interface Choice {
446
446
  /**
@@ -495,33 +495,33 @@ export interface Value {
495
495
  export type ConfigurableProperty = "name" | "shortDescription" | "longDescription" | "smallImageUrl" | "largeImageUrl" | "accentColor" | "developerUrl" | "privacyUrl" | "termsOfUseUrl";
496
496
  export interface ConfigurableTab {
497
497
  /**
498
- * A value indicating whether an instance of the tab's configuration can be updated by the
499
- * user after creation.
498
+ * A unique identifier for the tab. This id must be unique within the app manifest.
500
499
  */
501
- canUpdateConfiguration?: boolean;
500
+ id?: string;
502
501
  /**
503
502
  * The url to use when configuring the tab.
504
503
  */
505
504
  configurationUrl: string;
506
505
  /**
507
- * The set of contextItem scopes that a tab belong to
506
+ * A value indicating whether an instance of the tab's configuration can be updated by the
507
+ * user after creation.
508
508
  */
509
- context?: ConfigurableTabContext[];
509
+ canUpdateConfiguration?: boolean;
510
510
  /**
511
- * A unique identifier for the tab. This id must be unique within the app manifest.
511
+ * Specifies whether the tab offers an experience in the context of a channel in a team, in
512
+ * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
513
+ * options are non-exclusive. Currently, configurable tabs are only supported in the teams
514
+ * and groupchats scopes.
512
515
  */
513
- id?: string;
516
+ scopes: ConfigurableTabScope[];
514
517
  /**
515
518
  * The set of meetingSurfaceItem scopes that a tab belong to
516
519
  */
517
520
  meetingSurfaces?: MeetingSurface[];
518
521
  /**
519
- * Specifies whether the tab offers an experience in the context of a channel in a team, in
520
- * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
521
- * options are non-exclusive. Currently, configurable tabs are only supported in the teams
522
- * and groupchats scopes.
522
+ * The set of contextItem scopes that a tab belong to
523
523
  */
524
- scopes: ConfigurableTabScope[];
524
+ context?: ConfigurableTabContext[];
525
525
  /**
526
526
  * A relative file path to a tab preview image for use in SharePoint. Size 1024x768.
527
527
  */
@@ -536,15 +536,15 @@ export type MeetingSurface = "sidePanel" | "stage";
536
536
  export type ConfigurableTabScope = "team" | "groupChat";
537
537
  export type SupportedSharePointHost = "sharePointFullPage" | "sharePointWebPart";
538
538
  export interface Connector {
539
- /**
540
- * The url to use for configuring the connector using the inline configuration experience.
541
- */
542
- configurationUrl?: string;
543
539
  /**
544
540
  * A unique identifier for the connector which matches its ID in the Connectors Developer
545
541
  * Portal.
546
542
  */
547
543
  connectorId: string;
544
+ /**
545
+ * The url to use for configuring the connector using the inline configuration experience.
546
+ */
547
+ configurationUrl?: string;
548
548
  /**
549
549
  * Specifies whether the connector offers an experience in the context of a channel in a
550
550
  * team, or an experience scoped to an individual user alone. Currently, only the team scope
@@ -553,16 +553,16 @@ export interface Connector {
553
553
  scopes: "team"[];
554
554
  }
555
555
  export interface CopilotAgents {
556
- /**
557
- * An array of Custom Engine Agents. Currently only one Custom Engine Agent per application
558
- * is supported. Support is currently in public preview.
559
- */
560
- customEngineAgents?: CustomEngineAgent[];
561
556
  /**
562
557
  * An array of declarative agent elements references. Currently, only one declarative agent
563
558
  * per application is supported.
564
559
  */
565
560
  declarativeAgents?: DeclarativeAgentRef[];
561
+ /**
562
+ * An array of Custom Engine Agents. Currently only one Custom Engine Agent per application
563
+ * is supported. Support is currently in public preview.
564
+ */
565
+ customEngineAgents?: CustomEngineAgent[];
566
566
  }
567
567
  export interface CustomEngineAgent {
568
568
  /**
@@ -586,55 +586,55 @@ export interface CustomEngineAgent {
586
586
  * file.
587
587
  */
588
588
  export interface DeclarativeAgentRef {
589
- /**
590
- * Relative file path to this declarative agent element file in the application package.
591
- */
592
- file: string;
593
589
  /**
594
590
  * A unique identifier for this declarative agent element.
595
591
  */
596
592
  id: string;
593
+ /**
594
+ * Relative file path to this declarative agent element file in the application package.
595
+ */
596
+ file: string;
597
597
  }
598
598
  /**
599
599
  * Cards wich could be pinned to dashboard providing summarized view of information relevant
600
600
  * to user.
601
601
  */
602
602
  export interface DashboardCard {
603
- contentSource: DashboardCardContentSource;
604
- /**
605
- * Rendering Size for dashboard card.
606
- */
607
- defaultSize: DefaultSize;
608
603
  /**
609
- * Description of the card.Maximum length is 255 characters.
604
+ * Unique Id for the card. Must be unique inside the app.
610
605
  */
611
- description: string;
606
+ id: string;
612
607
  /**
613
608
  * Represents the name of the card. Maximum length is 255 characters.
614
609
  */
615
610
  displayName: string;
616
- icon?: DashboardCardIcon;
617
611
  /**
618
- * Unique Id for the card. Must be unique inside the app.
612
+ * Description of the card.Maximum length is 255 characters.
619
613
  */
620
- id: string;
614
+ description: string;
621
615
  /**
622
616
  * Id of the group in the card picker. This must be guid.
623
617
  */
624
618
  pickerGroupId: string;
619
+ icon?: DashboardCardIcon;
620
+ contentSource: DashboardCardContentSource;
621
+ /**
622
+ * Rendering Size for dashboard card.
623
+ */
624
+ defaultSize: DefaultSize;
625
625
  }
626
626
  /**
627
627
  * Represents a configuration for the source of the card’s content.
628
628
  */
629
629
  export interface DashboardCardContentSource {
630
- /**
631
- * The configuration for the bot source. Required if sourceType is set to bot.
632
- */
633
- botConfiguration?: BotConfiguration;
634
630
  /**
635
631
  * The content of the dashboard card is sourced from a bot.
636
632
  */
637
633
  sourceType?: "bot";
634
+ /**
635
+ * The configuration for the bot source. Required if sourceType is set to bot.
636
+ */
637
+ botConfiguration?: BotConfiguration;
638
638
  }
639
639
  /**
640
640
  * The configuration for the bot source. Required if sourceType is set to bot.
@@ -668,6 +668,11 @@ export interface DashboardCardIcon {
668
668
  * user installs the app
669
669
  */
670
670
  export interface DefaultGroupCapability {
671
+ /**
672
+ * When the install scope selected is Team, this field specifies the default capability
673
+ * available
674
+ */
675
+ team?: Groupchat;
671
676
  /**
672
677
  * When the install scope selected is GroupChat, this field specifies the default capability
673
678
  * available
@@ -678,11 +683,6 @@ export interface DefaultGroupCapability {
678
683
  * available
679
684
  */
680
685
  meetings?: Groupchat;
681
- /**
682
- * When the install scope selected is Team, this field specifies the default capability
683
- * available
684
- */
685
- team?: Groupchat;
686
686
  }
687
687
  /**
688
688
  * When the install scope selected is GroupChat, this field specifies the default capability
@@ -701,17 +701,21 @@ export type Groupchat = "tab" | "bot" | "connector";
701
701
  */
702
702
  export type DefaultInstallScope = "personal" | "team" | "groupChat" | "meetings";
703
703
  export interface Description {
704
- /**
705
- * The full description of the app. Maximum length is 4000 characters.
706
- */
707
- full: string;
708
704
  /**
709
705
  * A short description of the app used when space is limited. Maximum length is 80
710
706
  * characters.
711
707
  */
712
708
  short: string;
709
+ /**
710
+ * The full description of the app. Maximum length is 4000 characters.
711
+ */
712
+ full: string;
713
713
  }
714
714
  export interface Developer {
715
+ /**
716
+ * The display name for the developer.
717
+ */
718
+ name: string;
715
719
  /**
716
720
  * The Microsoft Partner Network ID that identifies the partner organization building the
717
721
  * app. This field is not required, and should only be used if you are already part of the
@@ -719,9 +723,9 @@ export interface Developer {
719
723
  */
720
724
  mpnId?: string;
721
725
  /**
722
- * The display name for the developer.
726
+ * The url to the page that provides support information for the app.
723
727
  */
724
- name: string;
728
+ websiteUrl: string;
725
729
  /**
726
730
  * The url to the page that provides privacy information for the app.
727
731
  */
@@ -730,32 +734,28 @@ export interface Developer {
730
734
  * The url to the page that provides the terms of use for the app.
731
735
  */
732
736
  termsOfUseUrl: string;
733
- /**
734
- * The url to the page that provides support information for the app.
735
- */
736
- websiteUrl: string;
737
737
  }
738
738
  export type DevicePermission = "geolocation" | "media" | "notifications" | "midi" | "openExternal";
739
739
  export interface ElementRelationshipSet {
740
- /**
741
- * An array containing multiple instances of mutual dependency relationships between
742
- * elements (each represented by a mutualDependency object).
743
- */
744
- mutualDependencies?: Array<ElementReference[]>;
745
740
  /**
746
741
  * An array containing multiple instances of unidirectional dependency relationships (each
747
742
  * represented by a oneWayDependency object).
748
743
  */
749
744
  oneWayDependencies?: OneWayDependency[];
745
+ /**
746
+ * An array containing multiple instances of mutual dependency relationships between
747
+ * elements (each represented by a mutualDependency object).
748
+ */
749
+ mutualDependencies?: Array<ElementReference[]>;
750
750
  }
751
751
  /**
752
752
  * A specific instance of mutual dependency between two or more elements, indicating that
753
753
  * each element depends on the others in a bidirectional manner.
754
754
  */
755
755
  export interface ElementReference {
756
- commandIds?: string[];
757
- id: string;
758
756
  name: MutualDependencyName;
757
+ id: string;
758
+ commandIds?: string[];
759
759
  }
760
760
  export type MutualDependencyName = "bots" | "staticTabs" | "composeExtensions" | "configurableTabs";
761
761
  /**
@@ -764,32 +764,32 @@ export type MutualDependencyName = "bots" | "staticTabs" | "composeExtensions" |
764
764
  * as the `dependsOn`) in a single direction.
765
765
  */
766
766
  export interface OneWayDependency {
767
- dependsOn: ElementReference[];
768
767
  element: ElementReference;
768
+ dependsOn: ElementReference[];
769
769
  }
770
770
  /**
771
771
  * The set of extensions for this app. Currently only one extensions per app is supported.
772
772
  */
773
773
  export interface ElementExtension {
774
+ requirements?: RequirementsExtensionElement;
775
+ runtimes?: ExtensionRuntimesArray[];
776
+ ribbons?: ExtensionRibbonsArray[];
777
+ autoRunEvents?: ExtensionAutoRunEventsArray[];
774
778
  alternates?: ExtensionAlternateVersionsArray[];
775
779
  /**
776
780
  * The url for your extension, used to validate Exchange user identity tokens.
777
781
  */
778
782
  audienceClaimUrl?: string;
779
- autoRunEvents?: ExtensionAutoRunEventsArray[];
780
- requirements?: RequirementsExtensionElement;
781
- ribbons?: ExtensionRibbonsArray[];
782
- runtimes?: ExtensionRuntimesArray[];
783
783
  }
784
784
  export interface ExtensionAlternateVersionsArray {
785
- alternateIcons?: AlternateIcons;
786
- hide?: Hide;
787
- prefer?: Prefer;
788
785
  requirements?: RequirementsExtensionElement;
786
+ prefer?: Prefer;
787
+ hide?: Hide;
788
+ alternateIcons?: AlternateIcons;
789
789
  }
790
790
  export interface AlternateIcons {
791
- highResolutionIcon: ExtensionCommonIcon;
792
791
  icon: ExtensionCommonIcon;
792
+ highResolutionIcon: ExtensionCommonIcon;
793
793
  }
794
794
  export interface ExtensionCommonIcon {
795
795
  /**
@@ -802,8 +802,8 @@ export interface ExtensionCommonIcon {
802
802
  url: string;
803
803
  }
804
804
  export interface Hide {
805
- customOfficeAddin?: CustomOfficeAddin;
806
805
  storeOfficeAddin?: StoreOfficeAddin;
806
+ customOfficeAddin?: CustomOfficeAddin;
807
807
  [property: string]: any;
808
808
  }
809
809
  export interface CustomOfficeAddin {
@@ -813,14 +813,14 @@ export interface CustomOfficeAddin {
813
813
  officeAddinId: string;
814
814
  }
815
815
  export interface StoreOfficeAddin {
816
- /**
817
- * Asset ID of the in-market add-in to hide. Maximum length is 64 characters.
818
- */
819
- assetId: string;
820
816
  /**
821
817
  * Solution ID of an in-market add-in to hide. Maximum length is 64 characters.
822
818
  */
823
819
  officeAddinId: string;
820
+ /**
821
+ * Asset ID of the in-market add-in to hide. Maximum length is 64 characters.
822
+ */
823
+ assetId: string;
824
824
  }
825
825
  export interface Prefer {
826
826
  comAddin?: COMAddin;
@@ -834,40 +834,41 @@ export interface COMAddin {
834
834
  }
835
835
  export interface RequirementsExtensionElement {
836
836
  capabilities?: Capability[];
837
- /**
838
- * Identifies the form factors that support the add-in. Supported values: mobile, desktop.
839
- */
840
- formFactors?: FormFactor[];
841
837
  /**
842
838
  * Identifies the scopes in which the add-in can run.
843
839
  */
844
840
  scopes?: RequirementsScope[];
841
+ /**
842
+ * Identifies the form factors that support the add-in. Supported values: mobile, desktop.
843
+ */
844
+ formFactors?: FormFactor[];
845
845
  }
846
846
  export interface Capability {
847
847
  /**
848
- * Identifies the maximum version for the requirement sets that the add-in needs to run.
848
+ * Identifies the name of the requirement sets that the add-in needs to run.
849
849
  */
850
- maxVersion?: string;
850
+ name: string;
851
851
  /**
852
852
  * Identifies the minimum version for the requirement sets that the add-in needs to run.
853
853
  */
854
854
  minVersion?: string;
855
855
  /**
856
- * Identifies the name of the requirement sets that the add-in needs to run.
856
+ * Identifies the maximum version for the requirement sets that the add-in needs to run.
857
857
  */
858
- name: string;
858
+ maxVersion?: string;
859
859
  }
860
860
  export type FormFactor = "desktop" | "mobile";
861
861
  export type RequirementsScope = "mail" | "workbook" | "document" | "presentation";
862
862
  export interface ExtensionAutoRunEventsArray {
863
+ requirements?: RequirementsExtensionElement;
863
864
  /**
864
865
  * Specifies the type of event. For supported types, please see:
865
866
  * https://review.learn.microsoft.com/en-us/office/dev/add-ins/outlook/autolaunch?tabs=xmlmanifest#supported-events.
866
867
  */
867
868
  events: Event[];
868
- requirements?: RequirementsExtensionElement;
869
869
  }
870
870
  export interface Event {
871
+ type: string;
871
872
  /**
872
873
  * The ID of an action defined in runtimes. Maximum length is 64 characters.
873
874
  */
@@ -876,7 +877,6 @@ export interface Event {
876
877
  * Configures how Outlook responds to the event.
877
878
  */
878
879
  options?: Options;
879
- type: string;
880
880
  }
881
881
  /**
882
882
  * Configures how Outlook responds to the event.
@@ -886,11 +886,11 @@ export interface Options {
886
886
  }
887
887
  export type SendMode = "promptUser" | "softBlock" | "block";
888
888
  export interface ExtensionRibbonsArray {
889
+ requirements?: RequirementsExtensionElement;
889
890
  contexts?: ExtensionContext[];
891
+ tabs: ExtensionRibbonsArrayTabsItem[];
890
892
  fixedControls?: ExtensionRibbonsArrayFixedControlItem[];
891
- requirements?: RequirementsExtensionElement;
892
893
  spamPreProcessingDialog?: ExtensionRibbonsSpamPreProcessingDialog;
893
- tabs: ExtensionRibbonsArrayTabsItem[];
894
894
  }
895
895
  /**
896
896
  * Specifies the Office application windows in which the ribbon customization is available
@@ -900,48 +900,58 @@ export interface ExtensionRibbonsArray {
900
900
  */
901
901
  export type ExtensionContext = "mailRead" | "mailCompose" | "meetingDetailsOrganizer" | "meetingDetailsAttendee" | "onlineMeetingDetailsOrganizer" | "logEventMeetingDetailsAttendee" | "default" | "spamReportingOverride";
902
902
  export interface ExtensionRibbonsArrayFixedControlItem {
903
- /**
904
- * The ID of an execution-type action that handles this key combination. Maximum length is
905
- * 64 characters.
906
- */
907
- actionId: string;
908
- /**
909
- * Whether the control is initially enabled.
910
- */
911
- enabled: boolean;
912
- icons: ExtensionCommonIcon[];
913
903
  /**
914
904
  * A unique identifier for this control within the app. Maximum length is 64 characters.
915
905
  */
916
906
  id: string;
907
+ /**
908
+ * Defines the type of control.
909
+ */
910
+ type: "button";
917
911
  /**
918
912
  * Displayed text for the control. Maximum length is 64 characters.
919
913
  */
920
914
  label: string;
915
+ icons: ExtensionCommonIcon[];
921
916
  supertip: ExtensionCommonSuperToolTip;
922
917
  /**
923
- * Defines the type of control.
918
+ * The ID of an execution-type action that handles this key combination. Maximum length is
919
+ * 64 characters.
924
920
  */
925
- type: "button";
926
- }
927
- export interface ExtensionCommonSuperToolTip {
921
+ actionId: string;
928
922
  /**
929
- * Description of the super tip. Maximum length is 250 characters.
923
+ * Whether the control is initially enabled.
930
924
  */
931
- description: string;
925
+ enabled: boolean;
926
+ }
927
+ export interface ExtensionCommonSuperToolTip {
932
928
  /**
933
929
  * Title text of the super tip. Maximum length is 64 characters.
934
930
  */
935
931
  title: string;
932
+ /**
933
+ * Description of the super tip. Maximum length is 250 characters.
934
+ */
935
+ description: string;
936
936
  }
937
937
  /**
938
938
  * Defines the type of control.
939
939
  */
940
940
  export interface ExtensionRibbonsSpamPreProcessingDialog {
941
+ /**
942
+ * Specifies the custom title of the preprocessing dialog.
943
+ */
944
+ title: string;
941
945
  /**
942
946
  * Specifies the custom text that appears in the preprocessing dialog.
943
947
  */
944
948
  description: string;
949
+ /**
950
+ * Specifies whether the bot offers an experience in the context of a channel in a team, in
951
+ * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
952
+ * options are non-exclusive.
953
+ */
954
+ spamReportingOptions?: SpamReportingOptions;
945
955
  /**
946
956
  * A text box to the preprocessing dialog to allow users to provide additional information
947
957
  * on the message they're reporting. This value is the title of that text box.
@@ -951,16 +961,6 @@ export interface ExtensionRibbonsSpamPreProcessingDialog {
951
961
  * Specifies the custom text and URL to provide informational resources to the users.
952
962
  */
953
963
  spamMoreInfo?: SpamMoreInfo;
954
- /**
955
- * Specifies whether the bot offers an experience in the context of a channel in a team, in
956
- * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
957
- * options are non-exclusive.
958
- */
959
- spamReportingOptions?: SpamReportingOptions;
960
- /**
961
- * Specifies the custom title of the preprocessing dialog.
962
- */
963
- title: string;
964
964
  }
965
965
  /**
966
966
  * Specifies the custom text and URL to provide informational resources to the users.
@@ -984,30 +984,18 @@ export interface SpamMoreInfo {
984
984
  * options are non-exclusive.
985
985
  */
986
986
  export interface SpamReportingOptions {
987
- /**
988
- * Specifies the custom options that a user can select from the preprocessing dialog to
989
- * provide a reason for reporting a message.
990
- */
991
- options: string[];
992
987
  /**
993
988
  * Specifies the title listed before the reporting options list.
994
989
  */
995
990
  title: string;
996
- [property: string]: any;
997
- }
998
- export interface ExtensionRibbonsArrayTabsItem {
999
- /**
1000
- * Id of the existing office Tab. Maximum length is 64 characters.
1001
- */
1002
- builtInTabId?: string;
1003
- /**
1004
- * Defines mobile group item.
1005
- */
1006
- customMobileRibbonGroups?: ExtensionRibbonsCustomMobileGroupItem[];
1007
991
  /**
1008
- * Defines tab groups.
992
+ * Specifies the custom options that a user can select from the preprocessing dialog to
993
+ * provide a reason for reporting a message.
1009
994
  */
1010
- groups?: ExtensionRibbonsCustomTabGroupsItem[];
995
+ options: string[];
996
+ [property: string]: any;
997
+ }
998
+ export interface ExtensionRibbonsArrayTabsItem {
1011
999
  /**
1012
1000
  * A unique identifier for this tab within the app. Maximum length is 64 characters.
1013
1001
  */
@@ -1017,9 +1005,20 @@ export interface ExtensionRibbonsArrayTabsItem {
1017
1005
  */
1018
1006
  label?: string;
1019
1007
  position?: Position;
1008
+ /**
1009
+ * Id of the existing office Tab. Maximum length is 64 characters.
1010
+ */
1011
+ builtInTabId?: string;
1012
+ /**
1013
+ * Defines tab groups.
1014
+ */
1015
+ groups?: ExtensionRibbonsCustomTabGroupsItem[];
1016
+ /**
1017
+ * Defines mobile group item.
1018
+ */
1019
+ customMobileRibbonGroups?: ExtensionRibbonsCustomMobileGroupItem[];
1020
1020
  }
1021
1021
  export interface ExtensionRibbonsCustomMobileGroupItem {
1022
- controls: ExtensionRibbonsCustomMobileControlButtonItem[];
1023
1022
  /**
1024
1023
  * Specify the Id of the group. Used for mobileMessageRead ext point.
1025
1024
  */
@@ -1028,31 +1027,27 @@ export interface ExtensionRibbonsCustomMobileGroupItem {
1028
1027
  * Short label of the control. Maximum length is 32 characters.
1029
1028
  */
1030
1029
  label: string;
1030
+ controls: ExtensionRibbonsCustomMobileControlButtonItem[];
1031
1031
  [property: string]: any;
1032
1032
  }
1033
1033
  export interface ExtensionRibbonsCustomMobileControlButtonItem {
1034
- /**
1035
- * The ID of an action defined in runtimes. Maximum length is 64 characters.
1036
- */
1037
- actionId: string;
1038
- icons: ExtensionCustomMobileIcon[];
1039
1034
  /**
1040
1035
  * Specify the Id of the button like msgReadFunctionButton.
1041
1036
  */
1042
1037
  id: string;
1038
+ type: "mobileButton";
1043
1039
  /**
1044
1040
  * Short label of the control. Maximum length is 32 characters.
1045
1041
  */
1046
1042
  label: string;
1047
- type: "mobileButton";
1043
+ icons: ExtensionCustomMobileIcon[];
1044
+ /**
1045
+ * The ID of an action defined in runtimes. Maximum length is 64 characters.
1046
+ */
1047
+ actionId: string;
1048
1048
  [property: string]: any;
1049
1049
  }
1050
1050
  export interface ExtensionCustomMobileIcon {
1051
- /**
1052
- * How to scale - 1,2,3 for each image. This attribute specifies the UIScreen.scale property
1053
- * for iOS devices.
1054
- */
1055
- scale: number;
1056
1051
  /**
1057
1052
  * Size in pixels of the icon. Three image sizes are required (25, 32, and 48 pixels).
1058
1053
  */
@@ -1061,14 +1056,13 @@ export interface ExtensionCustomMobileIcon {
1061
1056
  * Url to the icon.
1062
1057
  */
1063
1058
  url: string;
1064
- }
1065
- export interface ExtensionRibbonsCustomTabGroupsItem {
1066
1059
  /**
1067
- * Id of a built-in Group. Maximum length is 64 characters.
1060
+ * How to scale - 1,2,3 for each image. This attribute specifies the UIScreen.scale property
1061
+ * for iOS devices.
1068
1062
  */
1069
- builtInGroupId?: string;
1070
- controls?: ExtensionCommonCustomGroupControlsItem[];
1071
- icons?: ExtensionCommonIcon[];
1063
+ scale: number;
1064
+ }
1065
+ export interface ExtensionRibbonsCustomTabGroupsItem {
1072
1066
  /**
1073
1067
  * A unique identifier for this group within the app. Maximum length is 64 characters.
1074
1068
  */
@@ -1077,70 +1071,76 @@ export interface ExtensionRibbonsCustomTabGroupsItem {
1077
1071
  * Displayed text for the group. Maximum length is 64 characters.
1078
1072
  */
1079
1073
  label?: string;
1074
+ icons?: ExtensionCommonIcon[];
1075
+ controls?: ExtensionCommonCustomGroupControlsItem[];
1076
+ /**
1077
+ * Id of a built-in Group. Maximum length is 64 characters.
1078
+ */
1079
+ builtInGroupId?: string;
1080
1080
  }
1081
1081
  export interface ExtensionCommonCustomGroupControlsItem {
1082
1082
  /**
1083
- * The ID of an execution-type action that handles this key combination. Maximum length is
1084
- * 64 characters.
1083
+ * A unique identifier for this control within the app. Maximum length is 64 characters.
1085
1084
  */
1086
- actionId?: string;
1085
+ id: string;
1086
+ /**
1087
+ * Defines the type of control whether button or menu.
1088
+ */
1089
+ type: FluffyType;
1087
1090
  /**
1088
1091
  * Id of the existing office control. Maximum length is 64 characters.
1089
1092
  */
1090
1093
  builtInControlId?: string;
1091
1094
  /**
1092
- * Whether the control is initially enabled.
1095
+ * Displayed text for the control. Maximum length is 64 characters.
1093
1096
  */
1094
- enabled?: boolean;
1097
+ label: string;
1095
1098
  icons: ExtensionCommonIcon[];
1099
+ supertip: ExtensionCommonSuperToolTip;
1096
1100
  /**
1097
- * A unique identifier for this control within the app. Maximum length is 64 characters.
1098
- */
1099
- id: string;
1100
- /**
1101
- * Configures the items for a menu control.
1102
- */
1103
- items?: ExtensionCommonCustomControlMenuItem[];
1104
- /**
1105
- * Displayed text for the control. Maximum length is 64 characters.
1101
+ * The ID of an execution-type action that handles this key combination. Maximum length is
1102
+ * 64 characters.
1106
1103
  */
1107
- label: string;
1104
+ actionId?: string;
1108
1105
  /**
1109
1106
  * Specifies whether a group, button, menu, or menu item will be hidden on application and
1110
1107
  * platform combinations that support the API (Office.ribbon.requestCreateControls) that
1111
1108
  * installs custom contextual tabs on the ribbon. Default is false.
1112
1109
  */
1113
1110
  overriddenByRibbonApi?: boolean;
1114
- supertip: ExtensionCommonSuperToolTip;
1115
- /**
1116
- * Defines the type of control whether button or menu.
1117
- */
1118
- type: FluffyType;
1119
- }
1120
- export interface ExtensionCommonCustomControlMenuItem {
1121
- /**
1122
- * The ID of an action defined in runtimes. Maximum length is 64 characters.
1123
- */
1124
- actionId: string;
1125
1111
  /**
1126
1112
  * Whether the control is initially enabled.
1127
1113
  */
1128
1114
  enabled?: boolean;
1129
- icons?: ExtensionCommonIcon[];
1115
+ /**
1116
+ * Configures the items for a menu control.
1117
+ */
1118
+ items?: ExtensionCommonCustomControlMenuItem[];
1119
+ }
1120
+ export interface ExtensionCommonCustomControlMenuItem {
1130
1121
  /**
1131
1122
  * A unique identifier for this control within the app. Maximum length is 64 characters.
1132
1123
  */
1133
1124
  id: string;
1125
+ /**
1126
+ * Supported values: menuItem.
1127
+ */
1128
+ type: "menuItem";
1134
1129
  /**
1135
1130
  * Displayed text for the control. Maximum length is 64 characters.
1136
1131
  */
1137
1132
  label: string;
1138
- overriddenByRibbonApi?: boolean;
1133
+ icons?: ExtensionCommonIcon[];
1139
1134
  supertip: ExtensionCommonSuperToolTip;
1140
1135
  /**
1141
- * Supported values: menuItem.
1136
+ * The ID of an action defined in runtimes. Maximum length is 64 characters.
1142
1137
  */
1143
- type: "menuItem";
1138
+ actionId: string;
1139
+ /**
1140
+ * Whether the control is initially enabled.
1141
+ */
1142
+ enabled?: boolean;
1143
+ overriddenByRibbonApi?: boolean;
1144
1144
  }
1145
1145
  /**
1146
1146
  * Supported values: menuItem.
@@ -1150,14 +1150,14 @@ export interface ExtensionCommonCustomControlMenuItem {
1150
1150
  */
1151
1151
  export type FluffyType = "button" | "menu";
1152
1152
  export interface Position {
1153
- /**
1154
- * Define alignment of this custom tab relative to the specified built-in tab.
1155
- */
1156
- align: Align;
1157
1153
  /**
1158
1154
  * The id of the built-in tab. Maximum length is 64 characters.
1159
1155
  */
1160
1156
  builtInTabId: string;
1157
+ /**
1158
+ * Define alignment of this custom tab relative to the specified built-in tab.
1159
+ */
1160
+ align: Align;
1161
1161
  }
1162
1162
  /**
1163
1163
  * Define alignment of this custom tab relative to the specified built-in tab.
@@ -1167,60 +1167,60 @@ export type Align = "after" | "before";
1167
1167
  * A runtime environment for a page or script
1168
1168
  */
1169
1169
  export interface ExtensionRuntimesArray {
1170
- actions?: ExtensionRuntimesActionsItem[];
1171
- code: ExtensionRuntimeCode;
1170
+ requirements?: RequirementsExtensionElement;
1172
1171
  /**
1173
1172
  * A unique identifier for this runtime within the app. Maximum length is 64 characters.
1174
1173
  */
1175
1174
  id: string;
1175
+ /**
1176
+ * Supports running functions and launching pages.
1177
+ */
1178
+ type?: "general";
1179
+ code: ExtensionRuntimeCode;
1176
1180
  /**
1177
1181
  * Runtimes with a short lifetime do not preserve state across executions. Runtimes with a
1178
1182
  * long lifetime do.
1179
1183
  */
1180
1184
  lifetime?: Lifetime;
1181
- requirements?: RequirementsExtensionElement;
1182
- /**
1183
- * Supports running functions and launching pages.
1184
- */
1185
- type?: "general";
1185
+ actions?: ExtensionRuntimesActionsItem[];
1186
1186
  }
1187
1187
  /**
1188
1188
  * Specifies the set of actions supported by this runtime. An action is either running a
1189
1189
  * JavaScript function or opening a view such as a task pane.
1190
1190
  */
1191
1191
  export interface ExtensionRuntimesActionsItem {
1192
- /**
1193
- * Display name of the action. Maximum length is 64 characters.
1194
- */
1195
- displayName?: string;
1196
1192
  /**
1197
1193
  * Identifier for this action. Maximum length is 64 characters. This value is passed to the
1198
1194
  * code file.
1199
1195
  */
1200
1196
  id: string;
1201
1197
  /**
1202
- * Whether allows the action to have multiple selection.
1198
+ * executeFunction: Run a script function without waiting for it to finish. openPate: Open a
1199
+ * page in a view.
1203
1200
  */
1204
- multiselect?: boolean;
1201
+ type: ActionType;
1202
+ /**
1203
+ * Display name of the action. Maximum length is 64 characters.
1204
+ */
1205
+ displayName?: string;
1205
1206
  /**
1206
1207
  * Specifies that a task pane supports pinning, which keeps the task pane open when the user
1207
1208
  * changes the selection.
1208
1209
  */
1209
1210
  pinnable?: boolean;
1210
1211
  /**
1211
- * Whether allows task pane add-ins to activate without the Reading Pane enabled or a
1212
- * message selected.
1212
+ * View where the page should be opened. Maximum length is 64 characters.
1213
1213
  */
1214
- supportsNoItemContext?: boolean;
1214
+ view?: string;
1215
1215
  /**
1216
- * executeFunction: Run a script function without waiting for it to finish. openPate: Open a
1217
- * page in a view.
1216
+ * Whether allows the action to have multiple selection.
1218
1217
  */
1219
- type: ActionType;
1218
+ multiselect?: boolean;
1220
1219
  /**
1221
- * View where the page should be opened. Maximum length is 64 characters.
1220
+ * Whether allows task pane add-ins to activate without the Reading Pane enabled or a
1221
+ * message selected.
1222
1222
  */
1223
- view?: string;
1223
+ supportsNoItemContext?: boolean;
1224
1224
  }
1225
1225
  /**
1226
1226
  * executeFunction: Run a script function without waiting for it to finish. openPate: Open a
@@ -1256,15 +1256,15 @@ export interface GraphConnector {
1256
1256
  notificationUrl: string;
1257
1257
  }
1258
1258
  export interface Icons {
1259
- /**
1260
- * A relative file path to a full color PNG icon. Size 192x192.
1261
- */
1262
- color: string;
1263
1259
  /**
1264
1260
  * A relative file path to a transparent PNG outline icon. The border color needs to be
1265
1261
  * white. Size 32x32.
1266
1262
  */
1267
1263
  outline: string;
1264
+ /**
1265
+ * A relative file path to a full color PNG icon. Size 192x192.
1266
+ */
1267
+ color: string;
1268
1268
  }
1269
1269
  /**
1270
1270
  * The Intune-related properties for the app.
@@ -1276,25 +1276,25 @@ export interface IntuneInfo {
1276
1276
  supportedMobileAppManagementVersion?: string;
1277
1277
  }
1278
1278
  export interface LocalizationInfo {
1279
- additionalLanguages?: AdditionalLanguage[];
1280
- /**
1281
- * A relative file path to a the .json file containing strings in the default language.
1282
- */
1283
- defaultLanguageFile?: string;
1284
1279
  /**
1285
1280
  * The language tag of the strings in this top level manifest file.
1286
1281
  */
1287
1282
  defaultLanguageTag: string;
1288
- }
1289
- export interface AdditionalLanguage {
1290
1283
  /**
1291
- * A relative file path to a the .json file containing the translated strings.
1284
+ * A relative file path to a the .json file containing strings in the default language.
1292
1285
  */
1293
- file: string;
1286
+ defaultLanguageFile?: string;
1287
+ additionalLanguages?: AdditionalLanguage[];
1288
+ }
1289
+ export interface AdditionalLanguage {
1294
1290
  /**
1295
1291
  * The language tag of the strings in the provided file.
1296
1292
  */
1297
1293
  languageTag: string;
1294
+ /**
1295
+ * A relative file path to a the .json file containing the translated strings.
1296
+ */
1297
+ file: string;
1298
1298
  }
1299
1299
  /**
1300
1300
  * Specify meeting extension definition.
@@ -1304,76 +1304,79 @@ export interface MeetingExtensionDefinition {
1304
1304
  * Meeting supported scenes.
1305
1305
  */
1306
1306
  scenes?: Scene[];
1307
- /**
1308
- * A boolean value indicating whether this app allows management by anonymous users.
1309
- */
1310
- supportsAnonymousGuestUsers?: boolean;
1311
1307
  /**
1312
1308
  * A boolean value indicating whether this app can stream the meeting's audio video content
1313
1309
  * to an RTMP endpoint.
1314
1310
  */
1315
1311
  supportsStreaming?: boolean;
1316
- }
1317
- export interface Scene {
1318
1312
  /**
1319
- * A relative file path to a scene metadata json file.
1313
+ * A boolean value indicating whether this app allows management by anonymous users.
1320
1314
  */
1321
- file: string;
1315
+ supportsAnonymousGuestUsers?: boolean;
1316
+ }
1317
+ export interface Scene {
1322
1318
  /**
1323
1319
  * A unique identifier for this scene. This id must be a GUID.
1324
1320
  */
1325
1321
  id: string;
1326
- /**
1327
- * Maximum audiences supported in scene.
1328
- */
1329
- maxAudience: number;
1330
1322
  /**
1331
1323
  * Scene name.
1332
1324
  */
1333
1325
  name: string;
1326
+ /**
1327
+ * A relative file path to a scene metadata json file.
1328
+ */
1329
+ file: string;
1334
1330
  /**
1335
1331
  * A relative file path to a scene PNG preview icon.
1336
1332
  */
1337
1333
  preview: string;
1334
+ /**
1335
+ * Maximum audiences supported in scene.
1336
+ */
1337
+ maxAudience: number;
1338
1338
  /**
1339
1339
  * Number of seats reserved for organizers or presenters.
1340
1340
  */
1341
1341
  seatsReservedForOrganizersOrPresenters: number;
1342
1342
  }
1343
1343
  export interface NameClass {
1344
- /**
1345
- * The full name of the app, used if the full app name exceeds 30 characters.
1346
- */
1347
- full?: string;
1348
1344
  /**
1349
1345
  * A short display name for the app.
1350
1346
  */
1351
1347
  short: string;
1348
+ /**
1349
+ * The full name of the app, used if the full app name exceeds 30 characters.
1350
+ */
1351
+ full?: string;
1352
1352
  }
1353
1353
  export type Permission = "identity" | "messageTeamMembers";
1354
1354
  export interface StaticTab {
1355
1355
  /**
1356
- * The Microsoft App ID specified for the bot in the Bot Framework portal
1357
- * (https://dev.botframework.com/bots)
1356
+ * A unique identifier for the entity which the tab displays.
1358
1357
  */
1359
- contentBotId?: string;
1358
+ entityId: string;
1359
+ /**
1360
+ * The display name of the tab.
1361
+ */
1362
+ name?: string;
1360
1363
  /**
1361
1364
  * The url which points to the entity UI to be displayed in the canvas.
1362
1365
  */
1363
1366
  contentUrl?: string;
1364
1367
  /**
1365
- * The set of contextItem scopes that a tab belong to
1368
+ * The Microsoft App ID specified for the bot in the Bot Framework portal
1369
+ * (https://dev.botframework.com/bots)
1366
1370
  */
1367
- context?: StaticTabContext[];
1371
+ contentBotId?: string;
1368
1372
  /**
1369
- * A unique identifier for the entity which the tab displays.
1373
+ * The url to point at if a user opts to view in a browser.
1370
1374
  */
1371
- entityId: string;
1375
+ websiteUrl?: string;
1372
1376
  /**
1373
- * The display name of the tab.
1377
+ * The url to direct a user's search queries.
1374
1378
  */
1375
- name?: string;
1376
- requirementSet?: ElementRequirementSet;
1379
+ searchUrl?: string;
1377
1380
  /**
1378
1381
  * Specifies whether the tab offers an experience in the context of a channel in a team, or
1379
1382
  * an experience scoped to an individual user alone or group chat. These options are
@@ -1381,13 +1384,10 @@ export interface StaticTab {
1381
1384
  */
1382
1385
  scopes: CommandListScope[];
1383
1386
  /**
1384
- * The url to direct a user's search queries.
1385
- */
1386
- searchUrl?: string;
1387
- /**
1388
- * The url to point at if a user opts to view in a browser.
1387
+ * The set of contextItem scopes that a tab belong to
1389
1388
  */
1390
- websiteUrl?: string;
1389
+ context?: StaticTabContext[];
1390
+ requirementSet?: ElementRequirementSet;
1391
1391
  }
1392
1392
  export type StaticTabContext = "personalTab" | "channelTab" | "privateChatTab" | "meetingChatTab" | "meetingDetailsTab" | "meetingSidePanel" | "meetingStage" | "teamLevelApp";
1393
1393
  /**