@microsoft/app-manifest 1.0.0-alpha.a5e832db3.0 → 1.0.0-alpha.be4d6d1ce.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/README.md +19 -21
  2. package/build/declarativeCopilotManifest.d.ts +0 -1
  3. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D0.d.ts +30 -30
  4. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D0.js +10 -10
  5. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D0.js.map +1 -1
  6. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D2.d.ts +29 -29
  7. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D2.js +10 -10
  8. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D2.js.map +1 -1
  9. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D3.d.ts +30 -43
  10. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D3.js +11 -16
  11. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D3.js.map +1 -1
  12. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D4.d.ts +292 -0
  13. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D4.js +259 -0
  14. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D4.js.map +1 -0
  15. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D1.d.ts +91 -91
  16. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D1.js +25 -25
  17. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D1.js.map +1 -1
  18. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D2.d.ts +86 -86
  19. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D2.js +24 -24
  20. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D2.js.map +1 -1
  21. package/build/generated-types/index.d.ts +29 -25
  22. package/build/generated-types/index.js +27 -13
  23. package/build/generated-types/index.js.map +1 -1
  24. package/build/generated-types/teams/TeamsManifestV1D0.d.ts +87 -87
  25. package/build/generated-types/teams/TeamsManifestV1D0.js +27 -27
  26. package/build/generated-types/teams/TeamsManifestV1D0.js.map +1 -1
  27. package/build/generated-types/teams/TeamsManifestV1D1.d.ts +86 -86
  28. package/build/generated-types/teams/TeamsManifestV1D1.js +26 -26
  29. package/build/generated-types/teams/TeamsManifestV1D1.js.map +1 -1
  30. package/build/generated-types/teams/TeamsManifestV1D10.d.ts +185 -185
  31. package/build/generated-types/teams/TeamsManifestV1D10.js +58 -58
  32. package/build/generated-types/teams/TeamsManifestV1D10.js.map +1 -1
  33. package/build/generated-types/teams/TeamsManifestV1D11.d.ts +188 -188
  34. package/build/generated-types/teams/TeamsManifestV1D11.js +60 -60
  35. package/build/generated-types/teams/TeamsManifestV1D11.js.map +1 -1
  36. package/build/generated-types/teams/TeamsManifestV1D12.d.ts +187 -187
  37. package/build/generated-types/teams/TeamsManifestV1D12.js +60 -60
  38. package/build/generated-types/teams/TeamsManifestV1D12.js.map +1 -1
  39. package/build/generated-types/teams/TeamsManifestV1D13.d.ts +189 -189
  40. package/build/generated-types/teams/TeamsManifestV1D13.js +60 -60
  41. package/build/generated-types/teams/TeamsManifestV1D13.js.map +1 -1
  42. package/build/generated-types/teams/TeamsManifestV1D14.d.ts +192 -192
  43. package/build/generated-types/teams/TeamsManifestV1D14.js +61 -61
  44. package/build/generated-types/teams/TeamsManifestV1D14.js.map +1 -1
  45. package/build/generated-types/teams/TeamsManifestV1D15.d.ts +192 -192
  46. package/build/generated-types/teams/TeamsManifestV1D15.js +61 -61
  47. package/build/generated-types/teams/TeamsManifestV1D15.js.map +1 -1
  48. package/build/generated-types/teams/TeamsManifestV1D16.d.ts +196 -196
  49. package/build/generated-types/teams/TeamsManifestV1D16.js +62 -62
  50. package/build/generated-types/teams/TeamsManifestV1D16.js.map +1 -1
  51. package/build/generated-types/teams/TeamsManifestV1D17.d.ts +347 -347
  52. package/build/generated-types/teams/TeamsManifestV1D17.js +129 -129
  53. package/build/generated-types/teams/TeamsManifestV1D17.js.map +1 -1
  54. package/build/generated-types/teams/TeamsManifestV1D19.d.ts +356 -356
  55. package/build/generated-types/teams/TeamsManifestV1D19.js +132 -132
  56. package/build/generated-types/teams/TeamsManifestV1D19.js.map +1 -1
  57. package/build/generated-types/teams/TeamsManifestV1D2.d.ts +86 -86
  58. package/build/generated-types/teams/TeamsManifestV1D2.js +26 -26
  59. package/build/generated-types/teams/TeamsManifestV1D2.js.map +1 -1
  60. package/build/generated-types/teams/TeamsManifestV1D20.d.ts +409 -409
  61. package/build/generated-types/teams/TeamsManifestV1D20.js +150 -150
  62. package/build/generated-types/teams/TeamsManifestV1D20.js.map +1 -1
  63. package/build/generated-types/teams/TeamsManifestV1D21.d.ts +1458 -0
  64. package/build/generated-types/teams/TeamsManifestV1D21.js +834 -0
  65. package/build/generated-types/teams/TeamsManifestV1D21.js.map +1 -0
  66. package/build/generated-types/teams/TeamsManifestV1D3.d.ts +90 -90
  67. package/build/generated-types/teams/TeamsManifestV1D3.js +28 -28
  68. package/build/generated-types/teams/TeamsManifestV1D3.js.map +1 -1
  69. package/build/generated-types/teams/TeamsManifestV1D4.d.ts +99 -99
  70. package/build/generated-types/teams/TeamsManifestV1D4.js +32 -32
  71. package/build/generated-types/teams/TeamsManifestV1D4.js.map +1 -1
  72. package/build/generated-types/teams/TeamsManifestV1D5.d.ts +123 -123
  73. package/build/generated-types/teams/TeamsManifestV1D5.js +39 -39
  74. package/build/generated-types/teams/TeamsManifestV1D5.js.map +1 -1
  75. package/build/generated-types/teams/TeamsManifestV1D6.d.ts +128 -128
  76. package/build/generated-types/teams/TeamsManifestV1D6.js +41 -41
  77. package/build/generated-types/teams/TeamsManifestV1D6.js.map +1 -1
  78. package/build/generated-types/teams/TeamsManifestV1D7.d.ts +134 -134
  79. package/build/generated-types/teams/TeamsManifestV1D7.js +44 -44
  80. package/build/generated-types/teams/TeamsManifestV1D7.js.map +1 -1
  81. package/build/generated-types/teams/TeamsManifestV1D8.d.ts +151 -151
  82. package/build/generated-types/teams/TeamsManifestV1D8.js +48 -48
  83. package/build/generated-types/teams/TeamsManifestV1D8.js.map +1 -1
  84. package/build/generated-types/teams/TeamsManifestV1D9.d.ts +172 -172
  85. package/build/generated-types/teams/TeamsManifestV1D9.js +54 -54
  86. package/build/generated-types/teams/TeamsManifestV1D9.js.map +1 -1
  87. package/build/generated-types/teams/TeamsManifestVDevPreview.d.ts +600 -582
  88. package/build/generated-types/teams/TeamsManifestVDevPreview.js +205 -200
  89. package/build/generated-types/teams/TeamsManifestVDevPreview.js.map +1 -1
  90. package/build/index.d.ts +0 -14
  91. package/build/index.js +0 -97
  92. package/build/index.js.map +1 -1
  93. package/build/tsconfig.tsbuildinfo +1 -1
  94. package/package.json +6 -5
@@ -1,203 +1,203 @@
1
1
  export interface TeamsManifestVDevPreview {
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
- actions?: ElementAction[];
9
- activities?: Activities;
10
- /**
11
- * Specify and consolidates authorization related information for the App.
4
+ * The version of the schema this manifest is using.
12
5
  */
13
- authorization?: TeamsManifestVDevPreviewAuthorization;
6
+ manifestVersion: ManifestVersion;
14
7
  /**
15
- * Optional property containing background loading configuration. By opting into this
16
- * performance enhancement, your app is eligible to be loaded in the background in any
17
- * Microsoft 365 application host that supports this feature. Note that setting this
18
- * property gives the host client permission to load the app in the background but does not
19
- * guarantee the app will be preloaded at runtime. Whether an app is preloaded in the
20
- * background will be dynamically determined based on usage and other criteria.
8
+ * The version of the app. Changes to your manifest should cause a version change. This
9
+ * version string must follow the semver standard (http://semver.org).
21
10
  */
22
- backgroundLoadConfiguration?: BackgroundLoadConfiguration;
11
+ version: string;
23
12
  /**
24
- * The set of bots for this app. Currently only one bot per app is supported.
13
+ * A unique identifier for this app. This id must be a GUID.
25
14
  */
26
- bots?: Bot[];
15
+ id: string;
27
16
  /**
28
- * The set of compose extensions for this app. Currently only one compose extension per app
29
- * is supported.
17
+ * A unique identifier for this app in reverse domain notation. E.g: com.example.myapp
30
18
  */
31
- composeExtensions?: ComposeExtension[];
19
+ packageName?: string;
20
+ localizationInfo?: LocalizationInfo;
21
+ developer: Developer;
22
+ name: NameClass;
23
+ description: Description;
24
+ icons: Icons;
32
25
  /**
33
- * A list of tenant configured properties for an app
26
+ * A color to use in conjunction with the icon. The value must be a valid HTML color code
27
+ * starting with '#', for example `#4464ee`.
34
28
  */
35
- configurableProperties?: ConfigurableProperty[];
29
+ accentColor: string;
36
30
  /**
37
31
  * These are tabs users can optionally add to their channels and 1:1 or group chats and
38
32
  * require extra configuration before they are added. Configurable tabs are not supported in
39
33
  * the personal scope. Currently only one configurable tab per app is supported.
40
34
  */
41
35
  configurableTabs?: ConfigurableTab[];
36
+ /**
37
+ * A set of tabs that may be 'pinned' by default, without the user adding them manually.
38
+ * Static tabs declared in personal scope are always pinned to the app's personal
39
+ * experience. Static tabs do not currently support the 'teams' scope.
40
+ */
41
+ staticTabs?: StaticTab[];
42
+ /**
43
+ * The set of bots for this app. Currently only one bot per app is supported.
44
+ */
45
+ bots?: Bot[];
42
46
  /**
43
47
  * The set of Office365 connectors for this app. Currently only one connector per app is
44
48
  * supported.
45
49
  */
46
50
  connectors?: Connector[];
47
- copilotAgents?: CopilotAgents;
48
51
  /**
49
- * Defines the list of cards which could be pinned to dashboards that can provide summarized
50
- * view of information relevant to user.
51
- */
52
- dashboardCards?: DashboardCard[];
53
- /**
54
- * A value indicating whether an app is blocked by default until admin allows it
52
+ * Subscription offer associated with this app.
55
53
  */
56
- defaultBlockUntilAdminAction?: boolean;
54
+ subscriptionOffer?: SubscriptionOffer;
57
55
  /**
58
- * When a group install scope is selected, this will define the default capability when the
59
- * user installs the app
56
+ * The set of compose extensions for this app. Currently only one compose extension per app
57
+ * is supported.
60
58
  */
61
- defaultGroupCapability?: DefaultGroupCapability;
59
+ composeExtensions?: ComposeExtension[];
60
+ scopeConstraints?: ScopeConstraints;
62
61
  /**
63
- * The install scope defined for this app by default. This will be the option displayed on
64
- * the button when a user tries to add the app
62
+ * Specifies the permissions the app requests from users.
65
63
  */
66
- defaultInstallScope?: DefaultInstallScope;
67
- description: Description;
68
- developer: Developer;
64
+ permissions?: Permission[];
69
65
  /**
70
66
  * Specify the native features on a user's device that your app may request access to.
71
67
  */
72
68
  devicePermissions?: DevicePermission[];
73
- elementRelationshipSet?: ElementRelationshipSet;
74
- extensions?: ElementExtension[];
69
+ /**
70
+ * A list of valid domains from which the tabs expect to load any content. Domain listings
71
+ * can include wildcards, for example `*.example.com`. If your tab configuration or content
72
+ * UI needs to navigate to any other domain besides the one use for tab configuration, that
73
+ * domain must be specified here.
74
+ */
75
+ validDomains?: string[];
76
+ /**
77
+ * Specify your AAD App ID and Graph information to help users seamlessly sign into your AAD
78
+ * app.
79
+ */
80
+ webApplicationInfo?: WebApplicationInfo;
75
81
  /**
76
82
  * Specify the app's Graph connector configuration. If this is present then
77
83
  * webApplicationInfo.id must also be specified.
78
84
  */
79
85
  graphConnector?: GraphConnector;
80
- icons: Icons;
81
- /**
82
- * A unique identifier for this app. This id must be a GUID.
83
- */
84
- id: string;
85
86
  /**
86
- * The Intune-related properties for the app.
87
+ * A value indicating whether or not show loading indicator when app/tab is loading
87
88
  */
88
- intuneInfo?: IntuneInfo;
89
+ showLoadingIndicator?: boolean;
89
90
  /**
90
91
  * A value indicating whether a personal app is rendered without a tab header-bar
91
92
  */
92
93
  isFullScreen?: boolean;
93
- localizationInfo?: LocalizationInfo;
94
- /**
95
- * The version of the schema this manifest is using.
96
- */
97
- manifestVersion: ManifestVersion;
94
+ activities?: Activities;
98
95
  /**
99
- * Specify meeting extension definition.
96
+ * The set of supported channel type that an app belongs to
100
97
  */
101
- meetingExtensionDefinition?: MeetingExtensionDefinition;
102
- name: NameClass;
98
+ supportedChannelTypes?: SupportedChannelType[];
103
99
  /**
104
- * A unique identifier for this app in reverse domain notation. E.g: com.example.myapp
100
+ * A list of tenant configured properties for an app
105
101
  */
106
- packageName?: string;
102
+ configurableProperties?: ConfigurableProperty[];
107
103
  /**
108
- * Specifies the permissions the app requests from users.
104
+ * A value indicating whether an app is blocked by default until admin allows it
109
105
  */
110
- permissions?: Permission[];
106
+ defaultBlockUntilAdminAction?: boolean;
111
107
  /**
112
108
  * The url to the page that provides additional app information for the admins
113
109
  */
114
110
  publisherDocsUrl?: string;
115
- scopeConstraints?: ScopeConstraints;
116
111
  /**
117
- * A value indicating whether or not show loading indicator when app/tab is loading
112
+ * The install scope defined for this app by default. This will be the option displayed on
113
+ * the button when a user tries to add the app
118
114
  */
119
- showLoadingIndicator?: boolean;
115
+ defaultInstallScope?: DefaultInstallScope;
120
116
  /**
121
- * A set of tabs that may be 'pinned' by default, without the user adding them manually.
122
- * Static tabs declared in personal scope are always pinned to the app's personal
123
- * experience. Static tabs do not currently support the 'teams' scope.
117
+ * When a group install scope is selected, this will define the default capability when the
118
+ * user installs the app
124
119
  */
125
- staticTabs?: StaticTab[];
120
+ defaultGroupCapability?: DefaultGroupCapability;
126
121
  /**
127
- * Subscription offer associated with this app.
122
+ * Specify meeting extension definition.
128
123
  */
129
- subscriptionOffer?: SubscriptionOffer;
124
+ meetingExtensionDefinition?: MeetingExtensionDefinition;
130
125
  /**
131
- * The set of supported channel type that an app belongs to
126
+ * Specify and consolidates authorization related information for the App.
132
127
  */
133
- supportedChannelTypes?: SupportedChannelType[];
128
+ authorization?: TeamsManifestVDevPreviewAuthorization;
129
+ extensions?: ElementExtension[];
130
+ actions?: ElementAction[];
134
131
  /**
135
- * A list of valid domains from which the tabs expect to load any content. Domain listings
136
- * can include wildcards, for example `*.example.com`. If your tab configuration or content
137
- * UI needs to navigate to any other domain besides the one use for tab configuration, that
138
- * domain must be specified here.
132
+ * Defines the list of cards which could be pinned to dashboards that can provide summarized
133
+ * view of information relevant to user.
139
134
  */
140
- validDomains?: string[];
135
+ dashboardCards?: DashboardCard[];
141
136
  /**
142
- * The version of the app. Changes to your manifest should cause a version change. This
143
- * version string must follow the semver standard (http://semver.org).
137
+ * The Intune-related properties for the app.
144
138
  */
145
- version: string;
139
+ intuneInfo?: IntuneInfo;
140
+ copilotAgents?: CopilotAgents;
141
+ elementRelationshipSet?: ElementRelationshipSet;
146
142
  /**
147
- * Specify your AAD App ID and Graph information to help users seamlessly sign into your AAD
148
- * app.
143
+ * Optional property containing background loading configuration. By opting into this
144
+ * performance enhancement, your app is eligible to be loaded in the background in any
145
+ * Microsoft 365 application host that supports this feature. Note that setting this
146
+ * property gives the host client permission to load the app in the background but does not
147
+ * guarantee the app will be preloaded at runtime. Whether an app is preloaded in the
148
+ * background will be dynamically determined based on usage and other criteria.
149
149
  */
150
- webApplicationInfo?: WebApplicationInfo;
150
+ backgroundLoadConfiguration?: BackgroundLoadConfiguration;
151
151
  }
152
152
  /**
153
153
  * Actions node contains an array of actions object.
154
154
  */
155
155
  export interface ElementAction {
156
156
  /**
157
- * A display string in the default locale to represent the action.
157
+ * A unique identifier string in the default locale that is used to catalog actions.
158
158
  */
159
- description: string;
159
+ id: string;
160
+ /**
161
+ * An enum string that describes the intent of the action.
162
+ */
163
+ intent: Intent;
160
164
  /**
161
165
  * A display name for the action.
162
166
  */
163
167
  displayName: string;
164
168
  /**
165
- * Defining how actions can be handled. If an app has more than 1 handler, only one
166
- * experience will show up at one entry point. The hub will decide which action to show up
167
- * based on which experience is supported.
169
+ * A display string in the default locale to represent the action.
168
170
  */
169
- handlers: Handler[];
171
+ description: string;
170
172
  /**
171
173
  * Object containing URLs to icon images for this action intent.
172
174
  */
173
175
  icons?: Icon[];
174
176
  /**
175
- * A unique identifier string in the default locale that is used to catalog actions.
176
- */
177
- id: string;
178
- /**
179
- * An enum string that describes the intent of the action.
177
+ * Defining how actions can be handled. If an app has more than 1 handler, only one
178
+ * experience will show up at one entry point. The hub will decide which action to show up
179
+ * based on which experience is supported.
180
180
  */
181
- intent: Intent;
181
+ handlers: Handler[];
182
182
  }
183
183
  export interface Handler {
184
- botInfo?: BotInfo;
185
- dialogInfo?: DialogInfo;
186
- pageInfo?: PageInfo;
184
+ /**
185
+ * Required both for File Handlers and Content Actions.
186
+ */
187
+ type: HandlerType;
187
188
  supportedObjects?: SupportedObjects;
188
189
  /**
189
190
  * If true, multiple files can be selected and the action will still be displayed. If false
190
191
  * or missing, the action is only displayed when a single item is selected.
191
192
  */
192
193
  supportsMultiSelect?: boolean;
193
- /**
194
- * Required both for File Handlers and Content Actions.
195
- */
196
- type: HandlerType;
194
+ pageInfo?: PageInfo;
195
+ dialogInfo?: DialogInfo;
197
196
  /**
198
197
  * Url for handler type openURL, invokeAPI, openTaskpane, and others.
199
198
  */
200
199
  url?: string;
200
+ botInfo?: BotInfo;
201
201
  [property: string]: any;
202
202
  }
203
203
  export interface BotInfo {
@@ -216,6 +216,15 @@ export interface DialogInfo {
216
216
  * Dialog type, defines how the developer build the dialog.
217
217
  */
218
218
  dialogType: DialogType;
219
+ /**
220
+ * Required for html based dialog.
221
+ */
222
+ url?: string;
223
+ /**
224
+ * Dialog width - either a number in pixels or default layout such as 'large', 'medium', or
225
+ * 'small'.
226
+ */
227
+ width: string;
219
228
  /**
220
229
  * Dialog height - either a number in pixels or default layout such as 'large', 'medium', or
221
230
  * 'small'.
@@ -229,15 +238,6 @@ export interface DialogInfo {
229
238
  * Dialog title.
230
239
  */
231
240
  title?: string;
232
- /**
233
- * Required for html based dialog.
234
- */
235
- url?: string;
236
- /**
237
- * Dialog width - either a number in pixels or default layout such as 'large', 'medium', or
238
- * 'small'.
239
- */
240
- width: string;
241
241
  [property: string]: any;
242
242
  }
243
243
  /**
@@ -245,14 +245,6 @@ export interface DialogInfo {
245
245
  */
246
246
  export type DialogType = "url" | "adaptiveCard";
247
247
  export interface ParameterObject {
248
- /**
249
- * Parameter description.
250
- */
251
- description: string;
252
- /**
253
- * Parameter input type.
254
- */
255
- inputType: string;
256
248
  /**
257
249
  * Parameter name.
258
250
  */
@@ -261,6 +253,14 @@ export interface ParameterObject {
261
253
  * Parameter title.
262
254
  */
263
255
  title: string;
256
+ /**
257
+ * Parameter description.
258
+ */
259
+ description: string;
260
+ /**
261
+ * Parameter input type.
262
+ */
263
+ inputType: string;
264
264
  [property: string]: any;
265
265
  }
266
266
  export interface PageInfo {
@@ -308,33 +308,33 @@ export interface Icon {
308
308
  */
309
309
  export type Intent = "create" | "addTo" | "open" | "preview" | "share" | "sign" | "custom";
310
310
  export interface Activities {
311
- /**
312
- * Specify the customized icons that your app can post to a users activity feed
313
- */
314
- activityIcons?: ActivityIcon[];
315
311
  /**
316
312
  * Specify the types of activites that your app can post to a users activity feed
317
313
  */
318
314
  activityTypes?: ActivityType[];
319
- }
320
- export interface ActivityIcon {
321
315
  /**
322
- * Represents the relative path to the icon image. Image should be size 32x32.
316
+ * Specify the customized icons that your app can post to a users activity feed
323
317
  */
324
- iconFile: string;
318
+ activityIcons?: ActivityIcon[];
319
+ }
320
+ export interface ActivityIcon {
325
321
  /**
326
322
  * Represents the unique icon ID.
327
323
  */
328
324
  id: string;
325
+ /**
326
+ * Represents the relative path to the icon image. Image should be size 32x32.
327
+ */
328
+ iconFile: string;
329
329
  }
330
330
  export interface ActivityType {
331
+ type: string;
332
+ description: string;
333
+ templateText: string;
331
334
  /**
332
335
  * An array containing valid icon IDs per activity type.
333
336
  */
334
337
  allowedIconIds?: string[];
335
- description: string;
336
- templateText: string;
337
- type: string;
338
338
  }
339
339
  /**
340
340
  * Specify and consolidates authorization related information for the App.
@@ -397,42 +397,38 @@ export interface TabConfiguration {
397
397
  contentUrl: string;
398
398
  }
399
399
  export interface Bot {
400
- /**
401
- * Optional Boolean property that enables users to delete messages sent by bot when set to
402
- * true. The default value is false, ensuring bot messages cannot be deleted by users unless
403
- * explicitly opted in.
404
- */
405
- allowBotMessageDeleteByUser?: boolean;
406
400
  /**
407
401
  * The Microsoft App ID specified for the bot in the Bot Framework portal
408
402
  * (https://dev.botframework.com/bots)
409
403
  */
410
404
  botId: string;
405
+ configuration?: Configuration;
411
406
  /**
412
- * The list of commands that the bot supplies, including their usage, description, and the
413
- * scope for which the commands are valid. A separate command list should be used for each
414
- * scope.
407
+ * This value describes whether or not the bot utilizes a user hint to add the bot to a
408
+ * specific channel.
415
409
  */
416
- commandLists?: CommandList[];
417
- configuration?: Configuration;
410
+ needsChannelSelector?: boolean;
418
411
  /**
419
412
  * A value indicating whether or not the bot is a one-way notification only bot, as opposed
420
413
  * to a conversational bot.
421
414
  */
422
415
  isNotificationOnly?: boolean;
423
416
  /**
424
- * This value describes whether or not the bot utilizes a user hint to add the bot to a
425
- * specific channel.
417
+ * A value indicating whether the team's Office group needs to be security enabled.
426
418
  */
427
- needsChannelSelector?: boolean;
419
+ requiresSecurityEnabledGroup?: boolean;
428
420
  /**
429
- * The set of requirements for the bot.
421
+ * A value indicating whether the bot supports uploading/downloading of files.
430
422
  */
431
- requirementSet?: ElementRequirementSet;
423
+ supportsFiles?: boolean;
432
424
  /**
433
- * A value indicating whether the team's Office group needs to be security enabled.
425
+ * A value indicating whether the bot supports audio calling.
434
426
  */
435
- requiresSecurityEnabledGroup?: boolean;
427
+ supportsCalling?: boolean;
428
+ /**
429
+ * A value indicating whether the bot supports video calling.
430
+ */
431
+ supportsVideo?: boolean;
436
432
  /**
437
433
  * Specifies whether the bot offers an experience in the context of a channel in a team, in
438
434
  * a group chat (groupChat), an experience scoped to an individual user alone (personal) OR
@@ -440,41 +436,39 @@ export interface Bot {
440
436
  */
441
437
  scopes: CommandListScope[];
442
438
  /**
443
- * A value indicating whether the bot supports audio calling.
444
- */
445
- supportsCalling?: boolean;
446
- /**
447
- * A value indicating whether the bot supports uploading/downloading of files.
439
+ * The list of commands that the bot supplies, including their usage, description, and the
440
+ * scope for which the commands are valid. A separate command list should be used for each
441
+ * scope.
448
442
  */
449
- supportsFiles?: boolean;
443
+ commandLists?: CommandList[];
450
444
  /**
451
- * A value indicating whether the bot supports video calling.
445
+ * The set of requirements for the bot.
452
446
  */
453
- supportsVideo?: boolean;
447
+ requirementSet?: ElementRequirementSet;
454
448
  }
455
449
  export interface CommandList {
456
- commands: CommandListCommand[];
457
450
  /**
458
451
  * Specifies whether the bot offers an experience in the context of a channel in a team, in
459
452
  * a group chat (groupChat), an experience scoped to an individual user alone (personal) OR
460
453
  * within Copilot surfaces. These options are non-exclusive.
461
454
  */
462
455
  scopes: CommandListScope[];
456
+ commands: CommandListCommand[];
463
457
  }
464
458
  export interface CommandListCommand {
465
- /**
466
- * A simple text description or an example of the command syntax and its arguments.
467
- */
468
- description: string;
469
459
  /**
470
460
  * The bot command name
471
461
  */
472
462
  title: string;
463
+ /**
464
+ * A simple text description or an example of the command syntax and its arguments.
465
+ */
466
+ description: string;
473
467
  }
474
468
  export type CommandListScope = "team" | "personal" | "groupChat" | "copilot";
475
469
  export interface Configuration {
476
- groupChat?: ConfigurationGroupChat;
477
470
  team?: ConfigurationTeam;
471
+ groupChat?: ConfigurationGroupChat;
478
472
  }
479
473
  export interface ConfigurationGroupChat {
480
474
  /**
@@ -490,24 +484,24 @@ export interface ConfigurationGroupChat {
490
484
  * Task module to be launched when fetch task set to false.
491
485
  */
492
486
  export interface TaskInfo {
493
- /**
494
- * Dialog height - either a number in pixels or default layout such as 'large', 'medium', or
495
- * 'small'.
496
- */
497
- height?: string;
498
487
  /**
499
488
  * Initial dialog title.
500
489
  */
501
490
  title?: string;
502
- /**
503
- * Initial webview URL.
504
- */
505
- url?: string;
506
491
  /**
507
492
  * Dialog width - either a number in pixels or default layout such as 'large', 'medium', or
508
493
  * 'small'.
509
494
  */
510
495
  width?: string;
496
+ /**
497
+ * Dialog height - either a number in pixels or default layout such as 'large', 'medium', or
498
+ * 'small'.
499
+ */
500
+ height?: string;
501
+ /**
502
+ * Initial webview URL.
503
+ */
504
+ url?: string;
511
505
  }
512
506
  export interface ConfigurationTeam {
513
507
  /**
@@ -520,13 +514,13 @@ export interface ConfigurationTeam {
520
514
  taskInfo?: TaskInfo;
521
515
  }
522
516
  /**
523
- * The set of requirements for the bot.
517
+ * The set of requirements for the tab.
524
518
  *
525
519
  * An object representing a set of requirements that the host must support for the element.
526
520
  *
527
- * The set of requirements for the compose extension.
521
+ * The set of requirements for the bot.
528
522
  *
529
- * The set of requirements for the tab.
523
+ * The set of requirements for the compose extension.
530
524
  */
531
525
  export interface ElementRequirementSet {
532
526
  hostMustSupportFunctionalities: HostFunctionality[];
@@ -546,32 +540,32 @@ export interface HostFunctionality {
546
540
  export type HostMustSupportFunctionalityName = "dialogUrl" | "dialogUrlBot" | "dialogAdaptiveCard" | "dialogAdaptiveCardBot";
547
541
  export interface ComposeExtension {
548
542
  /**
549
- * A relative file path to the api specification file in the manifest package.
543
+ * A unique identifier for the compose extension.
550
544
  */
551
- apiSpecificationFile?: string;
545
+ id?: string;
546
+ /**
547
+ * The Microsoft App ID specified for the bot powering the compose extension in the Bot
548
+ * Framework portal (https://dev.botframework.com/bots)
549
+ */
550
+ botId?: string;
551
+ /**
552
+ * Type of the compose extension.
553
+ */
554
+ composeExtensionType?: ComposeExtensionType;
552
555
  /**
553
556
  * Object capturing authorization information.
554
557
  */
555
558
  authorization?: ComposeExtensionAuthorization;
556
559
  /**
557
- * The Microsoft App ID specified for the bot powering the compose extension in the Bot
558
- * Framework portal (https://dev.botframework.com/bots)
560
+ * A relative file path to the api specification file in the manifest package.
559
561
  */
560
- botId?: string;
562
+ apiSpecificationFile?: string;
561
563
  /**
562
564
  * A value indicating whether the configuration of a compose extension can be updated by the
563
565
  * user.
564
566
  */
565
567
  canUpdateConfiguration?: boolean | null;
566
568
  commands?: ComposeExtensionCommand[];
567
- /**
568
- * Type of the compose extension.
569
- */
570
- composeExtensionType?: ComposeExtensionType;
571
- /**
572
- * A unique identifier for the compose extension.
573
- */
574
- id?: string;
575
569
  /**
576
570
  * A list of handlers that allow apps to be invoked when certain conditions are met
577
571
  */
@@ -585,11 +579,6 @@ export interface ComposeExtension {
585
579
  * Object capturing authorization information.
586
580
  */
587
581
  export interface ComposeExtensionAuthorization {
588
- /**
589
- * Object capturing details needed to do service auth. It will be only present when auth
590
- * type is apiSecretServiceAuth.
591
- */
592
- apiSecretServiceAuthConfiguration?: APISecretServiceAuthConfiguration;
593
582
  /**
594
583
  * Enum of possible authorization types.
595
584
  */
@@ -599,6 +588,11 @@ export interface ComposeExtensionAuthorization {
599
588
  * when auth type is microsoftEntra.
600
589
  */
601
590
  microsoftEntraConfiguration?: MicrosoftEntraConfiguration;
591
+ /**
592
+ * Object capturing details needed to do service auth. It will be only present when auth
593
+ * type is apiSecretServiceAuth.
594
+ */
595
+ apiSecretServiceAuthConfiguration?: APISecretServiceAuthConfiguration;
602
596
  /**
603
597
  * Object capturing details needed to match the application's OAuth configuration for the
604
598
  * app. This should be and must be populated only when authType is set to oAuth2.0r
@@ -641,6 +635,15 @@ export interface OAuthConfiguration {
641
635
  oAuthConfigurationId?: string;
642
636
  }
643
637
  export interface ComposeExtensionCommand {
638
+ /**
639
+ * Id of the command.
640
+ */
641
+ id: string;
642
+ /**
643
+ * Type of the command
644
+ */
645
+ type?: CommandType;
646
+ samplePrompts?: SamplePrompt[];
644
647
  /**
645
648
  * A relative file path for api response rendering template file. The schema of the file can
646
649
  * be referred to in this
@@ -652,52 +655,39 @@ export interface ComposeExtensionCommand {
652
655
  */
653
656
  context?: CommandContext[];
654
657
  /**
655
- * Description of the command.
656
- */
657
- description?: string;
658
- /**
659
- * A boolean value that indicates if it should fetch task module dynamically
658
+ * Title of the command.
660
659
  */
661
- fetchTask?: boolean;
660
+ title: string;
662
661
  /**
663
- * Id of the command.
662
+ * Description of the command.
664
663
  */
665
- id: string;
664
+ description?: string;
666
665
  /**
667
666
  * A boolean value that indicates if the command should be run once initially with no
668
667
  * parameter.
669
668
  */
670
669
  initialRun?: boolean;
671
- parameters?: ParameterClass[];
672
- samplePrompts?: SamplePrompt[];
673
670
  /**
674
- * semantic description of the command. This is typically meant for consumption by the large
675
- * language model.
671
+ * A boolean value that indicates if it should fetch task module dynamically
676
672
  */
677
- semanticDescription?: string;
673
+ fetchTask?: boolean;
674
+ parameters?: ParameterClass[];
678
675
  /**
679
676
  * Task module to be launched when fetch task set to false.
680
677
  */
681
678
  taskInfo?: TaskInfo;
682
679
  /**
683
- * Title of the command.
684
- */
685
- title: string;
686
- /**
687
- * Type of the command
680
+ * semantic description of the command. This is typically meant for consumption by the large
681
+ * language model.
688
682
  */
689
- type?: CommandType;
683
+ semanticDescription?: string;
690
684
  }
691
685
  export type CommandContext = "compose" | "commandBox" | "message";
692
686
  export interface ParameterClass {
693
687
  /**
694
- * The choice options for the parameter
695
- */
696
- choices?: Choice[];
697
- /**
698
- * Description of the parameter.
688
+ * Name of the parameter.
699
689
  */
700
- description?: string;
690
+ name: string;
701
691
  /**
702
692
  * Type of the parameter
703
693
  */
@@ -706,23 +696,27 @@ export interface ParameterClass {
706
696
  * Indicates whether this parameter is required or not. By default, it is not.
707
697
  */
708
698
  isRequired?: boolean;
709
- /**
710
- * Name of the parameter.
711
- */
712
- name: string;
713
- /**
714
- * semantic description of the parameter. This is typically meant for consumption by the
715
- * large language model.
716
- */
717
- semanticDescription?: string;
718
699
  /**
719
700
  * Title of the parameter.
720
701
  */
721
702
  title: string;
703
+ /**
704
+ * Description of the parameter.
705
+ */
706
+ description?: string;
722
707
  /**
723
708
  * Initial value for the parameter
724
709
  */
725
710
  value?: string;
711
+ /**
712
+ * The choice options for the parameter
713
+ */
714
+ choices?: Choice[];
715
+ /**
716
+ * semantic description of the parameter. This is typically meant for consumption by the
717
+ * large language model.
718
+ */
719
+ semanticDescription?: string;
726
720
  }
727
721
  export interface Choice {
728
722
  /**
@@ -768,42 +762,34 @@ export interface Value {
768
762
  * matched the app will be invoked
769
763
  */
770
764
  domains?: string[];
771
- /**
772
- * A boolean value that indicates whether the app's link message handler supports anonymous
773
- * invoke flow.
774
- */
775
- supportsAnonymizedPayloads?: boolean;
776
765
  /**
777
766
  * A boolean value that indicates whether the app's link message handler supports anonymous
778
767
  * invoke flow. [Deprecated]. This property has been superceded by
779
768
  * 'supportsAnonymizedPayloads'.
780
769
  */
781
770
  supportsAnonymousAccess?: boolean;
771
+ /**
772
+ * A boolean value that indicates whether the app's link message handler supports anonymous
773
+ * invoke flow.
774
+ */
775
+ supportsAnonymizedPayloads?: boolean;
782
776
  [property: string]: any;
783
777
  }
784
778
  export type ConfigurableProperty = "name" | "shortDescription" | "longDescription" | "smallImageUrl" | "largeImageUrl" | "accentColor" | "developerUrl" | "privacyUrl" | "termsOfUseUrl";
785
779
  export interface ConfigurableTab {
786
780
  /**
787
- * A value indicating whether an instance of the tab's configuration can be updated by the
788
- * user after creation.
781
+ * A unique identifier for the tab. This id must be unique within the app manifest.
789
782
  */
790
- canUpdateConfiguration?: boolean;
783
+ id?: string;
791
784
  /**
792
785
  * The url to use when configuring the tab.
793
786
  */
794
787
  configurationUrl: string;
795
788
  /**
796
- * The set of contextItem scopes that a tab belong to
797
- */
798
- context?: ConfigurableTabContext[];
799
- /**
800
- * A unique identifier for the tab. This id must be unique within the app manifest.
801
- */
802
- id?: string;
803
- /**
804
- * The set of meetingSurfaceItem scopes that a tab belong to
789
+ * A value indicating whether an instance of the tab's configuration can be updated by the
790
+ * user after creation.
805
791
  */
806
- meetingSurfaces?: MeetingSurface[];
792
+ canUpdateConfiguration?: boolean;
807
793
  /**
808
794
  * Specifies whether the tab offers an experience in the context of a channel in a team, in
809
795
  * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
@@ -812,13 +798,21 @@ export interface ConfigurableTab {
812
798
  */
813
799
  scopes: ConfigurableTabScope[];
814
800
  /**
815
- * A relative file path to a tab preview image for use in SharePoint. Size 1024x768.
801
+ * The set of meetingSurfaceItem scopes that a tab belong to
816
802
  */
817
- sharePointPreviewImage?: string;
803
+ meetingSurfaces?: MeetingSurface[];
804
+ /**
805
+ * The set of contextItem scopes that a tab belong to
806
+ */
807
+ context?: ConfigurableTabContext[];
818
808
  /**
819
809
  * The set of supportedPlatform scopes that a tab belong to
820
810
  */
821
811
  supportedPlatform?: SupportedPlatform[];
812
+ /**
813
+ * A relative file path to a tab preview image for use in SharePoint. Size 1024x768.
814
+ */
815
+ sharePointPreviewImage?: string;
822
816
  /**
823
817
  * Defines how your tab will be made available in SharePoint.
824
818
  */
@@ -830,15 +824,15 @@ export type ConfigurableTabScope = "team" | "groupChat";
830
824
  export type SupportedPlatform = "desktop" | "mobile" | "teamsMeetingDevices";
831
825
  export type SupportedSharePointHost = "sharePointFullPage" | "sharePointWebPart";
832
826
  export interface Connector {
833
- /**
834
- * The url to use for configuring the connector using the inline configuration experience.
835
- */
836
- configurationUrl?: string;
837
827
  /**
838
828
  * A unique identifier for the connector which matches its ID in the Connectors Developer
839
829
  * Portal.
840
830
  */
841
831
  connectorId: string;
832
+ /**
833
+ * The url to use for configuring the connector using the inline configuration experience.
834
+ */
835
+ configurationUrl?: string;
842
836
  /**
843
837
  * Specifies whether the connector offers an experience in the context of a channel in a
844
838
  * team, or an experience scoped to an individual user alone. Currently, only the team scope
@@ -847,16 +841,16 @@ export interface Connector {
847
841
  scopes: "team"[];
848
842
  }
849
843
  export interface CopilotAgents {
850
- /**
851
- * An array of Custom Engine Agents. Currently only one Custom Engine Agent per application
852
- * is supported.
853
- */
854
- customEngineAgents?: CustomEngineAgent[];
855
844
  /**
856
845
  * An array of declarative agent elements references. Currently, only one declarative agent
857
846
  * per application is supported.
858
847
  */
859
848
  declarativeAgents?: DeclarativeAgentRef[];
849
+ /**
850
+ * An array of Custom Engine Agents. Currently only one Custom Engine Agent per application
851
+ * is supported.
852
+ */
853
+ customEngineAgents?: CustomEngineAgent[];
860
854
  }
861
855
  export interface CustomEngineAgent {
862
856
  /**
@@ -880,55 +874,55 @@ export interface CustomEngineAgent {
880
874
  * file.
881
875
  */
882
876
  export interface DeclarativeAgentRef {
883
- /**
884
- * Relative file path to this declarative agent element file in the application package.
885
- */
886
- file: string;
887
877
  /**
888
878
  * A unique identifier for this declarative agent element.
889
879
  */
890
880
  id: string;
881
+ /**
882
+ * Relative file path to this declarative agent element file in the application package.
883
+ */
884
+ file: string;
891
885
  }
892
886
  /**
893
887
  * Cards wich could be pinned to dashboard providing summarized view of information relevant
894
888
  * to user.
895
889
  */
896
890
  export interface DashboardCard {
897
- contentSource: DashboardCardContentSource;
898
891
  /**
899
- * Rendering Size for dashboard card.
900
- */
901
- defaultSize: DefaultSize;
902
- /**
903
- * Description of the card.Maximum length is 255 characters.
892
+ * Unique Id for the card. Must be unique inside the app.
904
893
  */
905
- description: string;
894
+ id: string;
906
895
  /**
907
896
  * Represents the name of the card. Maximum length is 255 characters.
908
897
  */
909
898
  displayName: string;
910
- icon?: DashboardCardIcon;
911
899
  /**
912
- * Unique Id for the card. Must be unique inside the app.
900
+ * Description of the card.Maximum length is 255 characters.
913
901
  */
914
- id: string;
902
+ description: string;
915
903
  /**
916
904
  * Id of the group in the card picker. This must be guid.
917
905
  */
918
906
  pickerGroupId: string;
907
+ icon?: DashboardCardIcon;
908
+ contentSource: DashboardCardContentSource;
909
+ /**
910
+ * Rendering Size for dashboard card.
911
+ */
912
+ defaultSize: DefaultSize;
919
913
  }
920
914
  /**
921
915
  * Represents a configuration for the source of the card’s content.
922
916
  */
923
917
  export interface DashboardCardContentSource {
924
- /**
925
- * The configuration for the bot source. Required if sourceType is set to bot.
926
- */
927
- botConfiguration?: BotConfiguration;
928
918
  /**
929
919
  * The content of the dashboard card is sourced from a bot.
930
920
  */
931
921
  sourceType?: "bot";
922
+ /**
923
+ * The configuration for the bot source. Required if sourceType is set to bot.
924
+ */
925
+ botConfiguration?: BotConfiguration;
932
926
  }
933
927
  /**
934
928
  * The configuration for the bot source. Required if sourceType is set to bot.
@@ -962,6 +956,11 @@ export interface DashboardCardIcon {
962
956
  * user installs the app
963
957
  */
964
958
  export interface DefaultGroupCapability {
959
+ /**
960
+ * When the install scope selected is Team, this field specifies the default capability
961
+ * available
962
+ */
963
+ team?: Groupchat;
965
964
  /**
966
965
  * When the install scope selected is GroupChat, this field specifies the default capability
967
966
  * available
@@ -972,11 +971,6 @@ export interface DefaultGroupCapability {
972
971
  * available
973
972
  */
974
973
  meetings?: Groupchat;
975
- /**
976
- * When the install scope selected is Team, this field specifies the default capability
977
- * available
978
- */
979
- team?: Groupchat;
980
974
  }
981
975
  /**
982
976
  * When the install scope selected is GroupChat, this field specifies the default capability
@@ -995,21 +989,21 @@ export type Groupchat = "tab" | "bot" | "connector";
995
989
  */
996
990
  export type DefaultInstallScope = "personal" | "team" | "groupChat" | "meetings" | "copilot";
997
991
  export interface Description {
998
- /**
999
- * The full description of the app. Maximum length is 4000 characters.
1000
- */
1001
- full: string;
1002
992
  /**
1003
993
  * A short description of the app used when space is limited. Maximum length is 80
1004
994
  * characters.
1005
995
  */
1006
996
  short: string;
997
+ /**
998
+ * The full description of the app. Maximum length is 4000 characters.
999
+ */
1000
+ full: string;
1007
1001
  }
1008
1002
  export interface Developer {
1009
1003
  /**
1010
- * App developer contact information.
1004
+ * The display name for the developer.
1011
1005
  */
1012
- contactInfo?: ContactInfo;
1006
+ name: string;
1013
1007
  /**
1014
1008
  * The Microsoft Partner Network ID that identifies the partner organization building the
1015
1009
  * app. This field is not required, and should only be used if you are already part of the
@@ -1017,9 +1011,9 @@ export interface Developer {
1017
1011
  */
1018
1012
  mpnId?: string;
1019
1013
  /**
1020
- * The display name for the developer.
1014
+ * The url to the page that provides support information for the app.
1021
1015
  */
1022
- name: string;
1016
+ websiteUrl: string;
1023
1017
  /**
1024
1018
  * The url to the page that provides privacy information for the app.
1025
1019
  */
@@ -1029,9 +1023,9 @@ export interface Developer {
1029
1023
  */
1030
1024
  termsOfUseUrl: string;
1031
1025
  /**
1032
- * The url to the page that provides support information for the app.
1026
+ * App developer contact information.
1033
1027
  */
1034
- websiteUrl: string;
1028
+ contactInfo?: ContactInfo;
1035
1029
  }
1036
1030
  /**
1037
1031
  * App developer contact information.
@@ -1047,37 +1041,37 @@ export interface ContactInfo {
1047
1041
  * Support configuration.
1048
1042
  */
1049
1043
  export interface DefaultSupport {
1050
- /**
1051
- * Email address for email support.
1052
- */
1053
- emailsForEmailSupport: string[];
1054
1044
  /**
1055
1045
  * User email for chat support contacts.
1056
1046
  */
1057
1047
  userEmailsForChatSupport: string[];
1048
+ /**
1049
+ * Email address for email support.
1050
+ */
1051
+ emailsForEmailSupport: string[];
1058
1052
  [property: string]: any;
1059
1053
  }
1060
1054
  export type DevicePermission = "geolocation" | "media" | "notifications" | "midi" | "openExternal";
1061
1055
  export interface ElementRelationshipSet {
1062
- /**
1063
- * An array containing multiple instances of mutual dependency relationships between
1064
- * elements (each represented by a mutualDependency object).
1065
- */
1066
- mutualDependencies?: Array<ElementReference[]>;
1067
1056
  /**
1068
1057
  * An array containing multiple instances of unidirectional dependency relationships (each
1069
1058
  * represented by a oneWayDependency object).
1070
1059
  */
1071
1060
  oneWayDependencies?: OneWayDependency[];
1061
+ /**
1062
+ * An array containing multiple instances of mutual dependency relationships between
1063
+ * elements (each represented by a mutualDependency object).
1064
+ */
1065
+ mutualDependencies?: Array<ElementReference[]>;
1072
1066
  }
1073
1067
  /**
1074
1068
  * A specific instance of mutual dependency between two or more elements, indicating that
1075
1069
  * each element depends on the others in a bidirectional manner.
1076
1070
  */
1077
1071
  export interface ElementReference {
1078
- commandIds?: string[];
1079
- id: string;
1080
1072
  name: MutualDependencyName;
1073
+ id: string;
1074
+ commandIds?: string[];
1081
1075
  }
1082
1076
  export type MutualDependencyName = "bots" | "staticTabs" | "composeExtensions" | "configurableTabs";
1083
1077
  /**
@@ -1086,51 +1080,51 @@ export type MutualDependencyName = "bots" | "staticTabs" | "composeExtensions" |
1086
1080
  * as the `dependsOn`) in a single direction.
1087
1081
  */
1088
1082
  export interface OneWayDependency {
1089
- dependsOn: ElementReference[];
1090
1083
  element: ElementReference;
1084
+ dependsOn: ElementReference[];
1091
1085
  }
1092
1086
  /**
1093
1087
  * The set of extensions for this app. Currently only one extensions per app is supported.
1094
1088
  */
1095
1089
  export interface ElementExtension {
1090
+ requirements?: RequirementsExtensionElement;
1091
+ /**
1092
+ * General runtime for "MailApp" or "TaskpaneApp". Configures the set of runtimes and
1093
+ * actions that can be used by each extension point. Min size 1.
1094
+ */
1095
+ runtimes?: ExtensionRuntimesArray[];
1096
+ ribbons?: ExtensionRibbonsArray[];
1097
+ autoRunEvents?: ExtensionAutoRunEventsArray[];
1096
1098
  alternates?: ExtensionAlternateVersionsArray[];
1097
- appDeeplinks?: ExtensionAppDeeplinksArray[];
1098
1099
  /**
1099
1100
  * The url for your extension, used to validate Exchange user identity tokens.
1100
1101
  */
1101
1102
  audienceClaimUrl?: string;
1102
- autoRunEvents?: ExtensionAutoRunEventsArray[];
1103
+ appDeeplinks?: ExtensionAppDeeplinksArray[];
1103
1104
  contentRuntimes?: ExtensionContentRuntimeArray[];
1105
+ getStartedMessages?: ExtensionGetStartedMessageArray[];
1104
1106
  /**
1105
1107
  * Specifies the context menus for your extension. A context menu is a shortcut menu that
1106
1108
  * appears when a user right-clicks (selects and holds) in the Office UI. Min size 1.
1107
1109
  */
1108
1110
  contextMenus?: ExtensionContextMenuArray[];
1109
- getStartedMessages?: ExtensionGetStartedMessageArray[];
1110
1111
  /**
1111
1112
  * Keyboard shortcuts, also known as key combinations, enable your add-in's users to work
1112
1113
  * more efficiently. Keyboard shortcuts also improve the add-in's accessibility for users
1113
1114
  * with disabilities by providing an alternative to the mouse.
1114
1115
  */
1115
1116
  keyboardShortcuts?: ExtensionKeyboardShortcut[];
1116
- requirements?: RequirementsExtensionElement;
1117
- ribbons?: ExtensionRibbonsArray[];
1118
- /**
1119
- * General runtime for "MailApp" or "TaskpaneApp". Configures the set of runtimes and
1120
- * actions that can be used by each extension point. Min size 1.
1121
- */
1122
- runtimes?: ExtensionRuntimesArray[];
1123
1117
  }
1124
1118
  export interface ExtensionAlternateVersionsArray {
1125
- alternateIcons: AlternateIcons;
1126
- hide?: Hide;
1127
- prefer?: Prefer;
1128
1119
  requirements?: RequirementsExtensionElement;
1120
+ prefer?: Prefer;
1121
+ hide?: Hide;
1122
+ alternateIcons: AlternateIcons;
1129
1123
  xllCustomFunctions?: ExtensionXllCustomFunctions;
1130
1124
  }
1131
1125
  export interface AlternateIcons {
1132
- highResolutionIcon: ExtensionCommonIcon;
1133
1126
  icon: ExtensionCommonIcon;
1127
+ highResolutionIcon: ExtensionCommonIcon;
1134
1128
  }
1135
1129
  export interface ExtensionCommonIcon {
1136
1130
  /**
@@ -1143,8 +1137,8 @@ export interface ExtensionCommonIcon {
1143
1137
  url: string;
1144
1138
  }
1145
1139
  export interface Hide {
1146
- customOfficeAddin?: CustomOfficeAddin;
1147
1140
  storeOfficeAddin?: StoreOfficeAddin;
1141
+ customOfficeAddin?: CustomOfficeAddin;
1148
1142
  [property: string]: any;
1149
1143
  }
1150
1144
  export interface CustomOfficeAddin {
@@ -1154,14 +1148,14 @@ export interface CustomOfficeAddin {
1154
1148
  officeAddinId: string;
1155
1149
  }
1156
1150
  export interface StoreOfficeAddin {
1157
- /**
1158
- * Asset ID of the in-market add-in to hide. Maximum length is 64 characters.
1159
- */
1160
- assetId: string;
1161
1151
  /**
1162
1152
  * Solution ID of an in-market add-in to hide. Maximum length is 64 characters.
1163
1153
  */
1164
1154
  officeAddinId: string;
1155
+ /**
1156
+ * Asset ID of the in-market add-in to hide. Maximum length is 64 characters.
1157
+ */
1158
+ assetId: string;
1165
1159
  }
1166
1160
  export interface Prefer {
1167
1161
  comAddin?: COMAddin;
@@ -1182,28 +1176,28 @@ export interface COMAddin {
1182
1176
  */
1183
1177
  export interface RequirementsExtensionElement {
1184
1178
  capabilities?: Capability[];
1185
- /**
1186
- * Identifies the form factors that support the add-in. Supported values: mobile, desktop.
1187
- */
1188
- formFactors?: FormFactor[];
1189
1179
  /**
1190
1180
  * Identifies the scopes in which the add-in can run. For example, mail means Outlook.
1191
1181
  */
1192
1182
  scopes?: RequirementsScope[];
1183
+ /**
1184
+ * Identifies the form factors that support the add-in. Supported values: mobile, desktop.
1185
+ */
1186
+ formFactors?: FormFactor[];
1193
1187
  }
1194
1188
  export interface Capability {
1195
1189
  /**
1196
- * Identifies the maximum version for the requirement sets that the add-in needs to run.
1190
+ * Identifies the name of the requirement sets that the add-in needs to run.
1197
1191
  */
1198
- maxVersion?: string;
1192
+ name: string;
1199
1193
  /**
1200
1194
  * Identifies the minimum version for the requirement sets that the add-in needs to run.
1201
1195
  */
1202
1196
  minVersion?: string;
1203
1197
  /**
1204
- * Identifies the name of the requirement sets that the add-in needs to run.
1198
+ * Identifies the maximum version for the requirement sets that the add-in needs to run.
1205
1199
  */
1206
- name: string;
1200
+ maxVersion?: string;
1207
1201
  }
1208
1202
  export type FormFactor = "desktop" | "mobile";
1209
1203
  export type RequirementsScope = "mail" | "workbook" | "document" | "presentation";
@@ -1215,17 +1209,17 @@ export interface ExtensionXllCustomFunctions {
1215
1209
  * Represents the copilot extension point
1216
1210
  */
1217
1211
  export interface ExtensionAppDeeplinksArray {
1212
+ requirements?: AppDeeplinkRequirements;
1213
+ contexts: ExtensionContext[];
1218
1214
  /**
1219
1215
  * The ID of an action defined in runtimes. Manifest should be invalidated if no action with
1220
1216
  * an id matching actionId is present in runtimes.
1221
1217
  */
1222
1218
  actionId: string;
1223
- contexts: ExtensionContext[];
1224
1219
  /**
1225
1220
  * the text that will be shown on the app as a clickable item.
1226
1221
  */
1227
1222
  label: string;
1228
- requirements?: AppDeeplinkRequirements;
1229
1223
  /**
1230
1224
  * the text metadata, for recommendation engine.
1231
1225
  */
@@ -1248,23 +1242,24 @@ export type ExtensionContext = "mailRead" | "mailCompose" | "meetingDetailsOrgan
1248
1242
  export interface AppDeeplinkRequirements {
1249
1243
  capabilities?: Capability[];
1250
1244
  /**
1251
- * Identifies the form factors that support the add-in. Supported values: mobile, desktop.
1245
+ * Identifies the scopes in which the add-in can run. For example, mail means Outlook.
1252
1246
  */
1253
- formFactors?: FormFactor[];
1247
+ scopes?: RequirementsScope[];
1254
1248
  /**
1255
- * Identifies the scopes in which the add-in can run. For example, mail means Outlook.
1249
+ * Identifies the form factors that support the add-in. Supported values: mobile, desktop.
1256
1250
  */
1257
- scopes?: RequirementsScope[];
1251
+ formFactors?: FormFactor[];
1258
1252
  }
1259
1253
  export interface ExtensionAutoRunEventsArray {
1254
+ requirements?: RequirementsExtensionElement;
1260
1255
  /**
1261
1256
  * Specifies the type of event. For supported types, please see:
1262
1257
  * https://learn.microsoft.com/en-us/office/dev/add-ins/outlook/autolaunch?tabs=xmlmanifest#supported-events.
1263
1258
  */
1264
1259
  events: Event[];
1265
- requirements?: RequirementsExtensionElement;
1266
1260
  }
1267
1261
  export interface Event {
1262
+ type: string;
1268
1263
  /**
1269
1264
  * The ID of an action defined in runtimes. Maximum length is 64 characters.
1270
1265
  */
@@ -1273,7 +1268,6 @@ export interface Event {
1273
1268
  * Configures how Outlook responds to the event.
1274
1269
  */
1275
1270
  options?: Options;
1276
- type: string;
1277
1271
  }
1278
1272
  /**
1279
1273
  * Configures how Outlook responds to the event.
@@ -1287,16 +1281,12 @@ export type SendMode = "promptUser" | "softBlock" | "block";
1287
1281
  * PowerPoint documents.
1288
1282
  */
1289
1283
  export interface ExtensionContentRuntimeArray {
1290
- code: ExtensionRuntimeCode;
1291
- /**
1292
- * Specifies whether a snapshot image of your content add-in is saved with the host
1293
- * document. Default value is false. Set true to disable.
1294
- */
1295
- disableSnapshot?: boolean;
1284
+ requirements?: ContentRuntimeRequirements;
1296
1285
  /**
1297
1286
  * A unique identifier for this runtime within the app. This is developer specified.
1298
1287
  */
1299
1288
  id: string;
1289
+ code: ExtensionRuntimeCode;
1300
1290
  /**
1301
1291
  * The desired height in pixels for the initial content placeholder. This value MUST be
1302
1292
  * between 32 and 1000 pixels. Default value will be determined by host.
@@ -1307,7 +1297,11 @@ export interface ExtensionContentRuntimeArray {
1307
1297
  * between 32 and 1000 pixels. Default value will be determined by host.
1308
1298
  */
1309
1299
  requestedWidth?: number;
1310
- requirements?: ContentRuntimeRequirements;
1300
+ /**
1301
+ * Specifies whether a snapshot image of your content add-in is saved with the host
1302
+ * document. Default value is false. Set true to disable.
1303
+ */
1304
+ disableSnapshot?: boolean;
1311
1305
  }
1312
1306
  export interface ExtensionRuntimeCode {
1313
1307
  /**
@@ -1328,25 +1322,25 @@ export interface ExtensionRuntimeCode {
1328
1322
  */
1329
1323
  export interface ContentRuntimeRequirements {
1330
1324
  capabilities?: Capability[];
1331
- /**
1332
- * Identifies the form factors that support the add-in. Supported values: mobile, desktop.
1333
- */
1334
- formFactors?: FormFactor[];
1335
1325
  /**
1336
1326
  * Identifies the scopes in which the add-in can run. For example, mail means Outlook.
1337
1327
  */
1338
1328
  scopes?: RequirementsScope[];
1329
+ /**
1330
+ * Identifies the form factors that support the add-in. Supported values: mobile, desktop.
1331
+ */
1332
+ formFactors?: FormFactor[];
1339
1333
  }
1340
1334
  /**
1341
1335
  * Specifies the context menus for your extension. A context menu is a shortcut menu that
1342
1336
  * appears when a user right-clicks (selects and holds) in the Office UI. Min size 1.
1343
1337
  */
1344
1338
  export interface ExtensionContextMenuArray {
1339
+ requirements?: ContextMenuRequirements;
1345
1340
  /**
1346
1341
  * Configures the context menus. Minimum size is 1.
1347
1342
  */
1348
1343
  menus: ExtensionMenuItem[];
1349
- requirements?: ContextMenuRequirements;
1350
1344
  }
1351
1345
  /**
1352
1346
  * Configures the context menus. Minimum size is 1.
@@ -1354,7 +1348,6 @@ export interface ExtensionContextMenuArray {
1354
1348
  * The title used for the top of the callout.
1355
1349
  */
1356
1350
  export interface ExtensionMenuItem {
1357
- controls: ExtensionCommonCustomGroupControlsItem[];
1358
1351
  /**
1359
1352
  * Use 'text' or 'cell' here for Office context menu. Use text if the context menu should
1360
1353
  * open when a user right-clicks (selects and holds) on the selected text. Use cell if the
@@ -1362,83 +1355,84 @@ export interface ExtensionMenuItem {
1362
1355
  * Excel spreadsheet.
1363
1356
  */
1364
1357
  entryPoint: EntryPoint;
1358
+ controls: ExtensionCommonCustomGroupControlsItem[];
1365
1359
  }
1366
1360
  export interface ExtensionCommonCustomGroupControlsItem {
1367
1361
  /**
1368
- * The ID of an execution-type action that handles this key combination. Maximum length is
1369
- * 64 characters.
1362
+ * A unique identifier for this control within the app. Maximum length is 64 characters.
1370
1363
  */
1371
- actionId?: string;
1364
+ id: string;
1365
+ /**
1366
+ * Defines the type of control whether button or menu.
1367
+ */
1368
+ type: PurpleType;
1372
1369
  /**
1373
1370
  * Id of an existing office control. Maximum length is 64 characters.
1374
1371
  */
1375
1372
  builtInControlId?: string;
1376
1373
  /**
1377
- * Whether the control is initially enabled.
1374
+ * Displayed text for the control. Maximum length is 64 characters.
1378
1375
  */
1379
- enabled?: boolean;
1376
+ label: string;
1380
1377
  /**
1381
1378
  * Configures the icons for the custom control.
1382
1379
  */
1383
1380
  icons: ExtensionCommonIcon[];
1381
+ supertip: ExtensionCommonSuperToolTip;
1384
1382
  /**
1385
- * A unique identifier for this control within the app. Maximum length is 64 characters.
1386
- */
1387
- id: string;
1388
- /**
1389
- * Configures the items for a menu control.
1390
- */
1391
- items?: ExtensionCommonCustomControlMenuItem[];
1392
- /**
1393
- * Displayed text for the control. Maximum length is 64 characters.
1383
+ * The ID of an execution-type action that handles this key combination. Maximum length is
1384
+ * 64 characters.
1394
1385
  */
1395
- label: string;
1386
+ actionId?: string;
1396
1387
  /**
1397
1388
  * Specifies whether a group, button, menu, or menu item will be hidden on application and
1398
1389
  * platform combinations that support the API (Office.ribbon.requestCreateControls) that
1399
1390
  * installs custom contextual tabs on the ribbon. Default is false.
1400
1391
  */
1401
1392
  overriddenByRibbonApi?: boolean;
1402
- supertip: ExtensionCommonSuperToolTip;
1403
- /**
1404
- * Defines the type of control whether button or menu.
1405
- */
1406
- type: PurpleType;
1407
- }
1408
- export interface ExtensionCommonCustomControlMenuItem {
1409
- /**
1410
- * The ID of an action defined in runtimes. Maximum length is 64 characters.
1411
- */
1412
- actionId: string;
1413
1393
  /**
1414
1394
  * Whether the control is initially enabled.
1415
1395
  */
1416
1396
  enabled?: boolean;
1417
- icons?: ExtensionCommonIcon[];
1397
+ /**
1398
+ * Configures the items for a menu control.
1399
+ */
1400
+ items?: ExtensionCommonCustomControlMenuItem[];
1401
+ }
1402
+ export interface ExtensionCommonCustomControlMenuItem {
1418
1403
  /**
1419
1404
  * A unique identifier for this control within the app. Maximum length is 64 characters.
1420
1405
  */
1421
1406
  id: string;
1407
+ /**
1408
+ * Supported values: menuItem.
1409
+ */
1410
+ type: "menuItem";
1422
1411
  /**
1423
1412
  * Displayed text for the control. Maximum length is 64 characters.
1424
1413
  */
1425
1414
  label: string;
1426
- overriddenByRibbonApi?: boolean;
1415
+ icons?: ExtensionCommonIcon[];
1427
1416
  supertip: ExtensionCommonSuperToolTip;
1428
1417
  /**
1429
- * Supported values: menuItem.
1418
+ * The ID of an action defined in runtimes. Maximum length is 64 characters.
1430
1419
  */
1431
- type: "menuItem";
1432
- }
1433
- export interface ExtensionCommonSuperToolTip {
1420
+ actionId: string;
1434
1421
  /**
1435
- * Description of the super tip. Maximum length is 250 characters.
1422
+ * Whether the control is initially enabled.
1436
1423
  */
1437
- description: string;
1424
+ enabled?: boolean;
1425
+ overriddenByRibbonApi?: boolean;
1426
+ }
1427
+ export interface ExtensionCommonSuperToolTip {
1438
1428
  /**
1439
1429
  * Title text of the super tip. Maximum length is 64 characters.
1440
1430
  */
1441
1431
  title: string;
1432
+ /**
1433
+ * Description of the super tip. Maximum length is 250 characters.
1434
+ */
1435
+ description: string;
1442
1436
  }
1443
1437
  /**
1444
1438
  * Supported values: menuItem.
@@ -1463,19 +1457,24 @@ export type EntryPoint = "text" | "cell";
1463
1457
  */
1464
1458
  export interface ContextMenuRequirements {
1465
1459
  capabilities?: Capability[];
1466
- /**
1467
- * Identifies the form factors that support the add-in. Supported values: mobile, desktop.
1468
- */
1469
- formFactors?: FormFactor[];
1470
1460
  /**
1471
1461
  * Identifies the scopes in which the add-in can run. For example, mail means Outlook.
1472
1462
  */
1473
1463
  scopes?: RequirementsScope[];
1464
+ /**
1465
+ * Identifies the form factors that support the add-in. Supported values: mobile, desktop.
1466
+ */
1467
+ formFactors?: FormFactor[];
1474
1468
  }
1475
1469
  /**
1476
1470
  * Provides information used by the callout that appears when the add-in is installed.
1477
1471
  */
1478
1472
  export interface ExtensionGetStartedMessageArray {
1473
+ requirements?: GetStartedMessageRequirements;
1474
+ /**
1475
+ * The title used for the top of the callout.
1476
+ */
1477
+ title: string;
1479
1478
  /**
1480
1479
  * The description/body content for the callout.
1481
1480
  */
@@ -1484,11 +1483,6 @@ export interface ExtensionGetStartedMessageArray {
1484
1483
  * A URL to a page that explains the add-in in detail.
1485
1484
  */
1486
1485
  learnMoreUrl: string;
1487
- requirements?: GetStartedMessageRequirements;
1488
- /**
1489
- * The title used for the top of the callout.
1490
- */
1491
- title: string;
1492
1486
  }
1493
1487
  /**
1494
1488
  * Specifies limitations on which clients the add-in can be installed on, including
@@ -1499,14 +1493,14 @@ export interface ExtensionGetStartedMessageArray {
1499
1493
  */
1500
1494
  export interface GetStartedMessageRequirements {
1501
1495
  capabilities?: Capability[];
1502
- /**
1503
- * Identifies the form factors that support the add-in. Supported values: mobile, desktop.
1504
- */
1505
- formFactors?: FormFactor[];
1506
1496
  /**
1507
1497
  * Identifies the scopes in which the add-in can run. For example, mail means Outlook.
1508
1498
  */
1509
1499
  scopes?: RequirementsScope[];
1500
+ /**
1501
+ * Identifies the form factors that support the add-in. Supported values: mobile, desktop.
1502
+ */
1503
+ formFactors?: FormFactor[];
1510
1504
  }
1511
1505
  export interface ExtensionKeyboardShortcut {
1512
1506
  /**
@@ -1520,11 +1514,11 @@ export interface ExtensionKeyboardShortcut {
1520
1514
  [property: string]: any;
1521
1515
  }
1522
1516
  export interface ExtensionShortcut {
1517
+ key: Key;
1523
1518
  /**
1524
1519
  * The ID of an execution-type action that handles this key combination.
1525
1520
  */
1526
1521
  actionId: string;
1527
- key: Key;
1528
1522
  [property: string]: any;
1529
1523
  }
1530
1524
  /**
@@ -1550,45 +1544,55 @@ export interface Key {
1550
1544
  [property: string]: any;
1551
1545
  }
1552
1546
  export interface ExtensionRibbonsArray {
1547
+ requirements?: RequirementsExtensionElement;
1553
1548
  contexts?: ExtensionContext[];
1549
+ tabs: ExtensionRibbonsArrayTabsItem[];
1554
1550
  fixedControls?: ExtensionRibbonsArrayFixedControlItem[];
1555
- requirements?: RequirementsExtensionElement;
1556
1551
  spamPreProcessingDialog?: ExtensionRibbonsSpamPreProcessingDialog;
1557
- tabs: ExtensionRibbonsArrayTabsItem[];
1558
1552
  }
1559
1553
  export interface ExtensionRibbonsArrayFixedControlItem {
1560
- /**
1561
- * The ID of an execution-type action that handles this key combination. Maximum length is
1562
- * 64 characters.
1563
- */
1564
- actionId: string;
1565
- /**
1566
- * Whether the control is initially enabled.
1567
- */
1568
- enabled: boolean;
1569
- icons: ExtensionCommonIcon[];
1570
1554
  /**
1571
1555
  * A unique identifier for this control within the app. Maximum length is 64 characters.
1572
1556
  */
1573
1557
  id: string;
1558
+ /**
1559
+ * Defines the type of control.
1560
+ */
1561
+ type: "button";
1574
1562
  /**
1575
1563
  * Displayed text for the control. Maximum length is 64 characters.
1576
1564
  */
1577
1565
  label: string;
1566
+ icons: ExtensionCommonIcon[];
1578
1567
  supertip: ExtensionCommonSuperToolTip;
1579
1568
  /**
1580
- * Defines the type of control.
1569
+ * The ID of an execution-type action that handles this key combination. Maximum length is
1570
+ * 64 characters.
1581
1571
  */
1582
- type: "button";
1572
+ actionId: string;
1573
+ /**
1574
+ * Whether the control is initially enabled.
1575
+ */
1576
+ enabled: boolean;
1583
1577
  }
1584
1578
  /**
1585
1579
  * Defines the type of control.
1586
1580
  */
1587
1581
  export interface ExtensionRibbonsSpamPreProcessingDialog {
1582
+ /**
1583
+ * Specifies the custom title of the preprocessing dialog.
1584
+ */
1585
+ title: string;
1588
1586
  /**
1589
1587
  * Specifies the custom text that appears in the preprocessing dialog.
1590
1588
  */
1591
1589
  description: string;
1590
+ /**
1591
+ * Specifies whether the bot offers an experience in the context of a channel in a team, in
1592
+ * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
1593
+ * options are non-exclusive.
1594
+ */
1595
+ spamReportingOptions?: SpamReportingOptions;
1592
1596
  /**
1593
1597
  * A text box to the preprocessing dialog to allow users to provide additional information
1594
1598
  * on the message they're reporting. This value is the title of that text box.
@@ -1598,16 +1602,6 @@ export interface ExtensionRibbonsSpamPreProcessingDialog {
1598
1602
  * Specifies the custom text and URL to provide informational resources to the users.
1599
1603
  */
1600
1604
  spamMoreInfo?: SpamMoreInfo;
1601
- /**
1602
- * Specifies whether the bot offers an experience in the context of a channel in a team, in
1603
- * a 1:1 or group chat, or in an experience scoped to an individual user alone. These
1604
- * options are non-exclusive.
1605
- */
1606
- spamReportingOptions?: SpamReportingOptions;
1607
- /**
1608
- * Specifies the custom title of the preprocessing dialog.
1609
- */
1610
- title: string;
1611
1605
  }
1612
1606
  /**
1613
1607
  * Specifies the custom text and URL to provide informational resources to the users.
@@ -1631,42 +1625,41 @@ export interface SpamMoreInfo {
1631
1625
  * options are non-exclusive.
1632
1626
  */
1633
1627
  export interface SpamReportingOptions {
1628
+ /**
1629
+ * Specifies the title listed before the reporting options list.
1630
+ */
1631
+ title: string;
1634
1632
  /**
1635
1633
  * Specifies the custom options that a user can select from the preprocessing dialog to
1636
1634
  * provide a reason for reporting a message.
1637
1635
  */
1638
1636
  options: string[];
1639
- /**
1640
- * Specifies the title listed before the reporting options list.
1641
- */
1642
- title: string;
1643
1637
  [property: string]: any;
1644
1638
  }
1645
1639
  export interface ExtensionRibbonsArrayTabsItem {
1646
1640
  /**
1647
- * Id of the existing office Tab. Maximum length is 64 characters.
1641
+ * A unique identifier for this tab within the app. Maximum length is 64 characters.
1648
1642
  */
1649
- builtInTabId?: string;
1643
+ id?: string;
1650
1644
  /**
1651
- * Defines mobile group item.
1645
+ * Displayed text for the tab. Maximum length is 64 characters.
1652
1646
  */
1653
- customMobileRibbonGroups?: ExtensionRibbonsCustomMobileGroupItem[];
1647
+ label?: string;
1648
+ position?: Position;
1654
1649
  /**
1655
- * Defines tab groups.
1650
+ * Id of the existing office Tab. Maximum length is 64 characters.
1656
1651
  */
1657
- groups?: ExtensionRibbonsCustomTabGroupsItem[];
1652
+ builtInTabId?: string;
1658
1653
  /**
1659
- * A unique identifier for this tab within the app. Maximum length is 64 characters.
1654
+ * Defines tab groups.
1660
1655
  */
1661
- id?: string;
1656
+ groups?: ExtensionRibbonsCustomTabGroupsItem[];
1662
1657
  /**
1663
- * Displayed text for the tab. Maximum length is 64 characters.
1658
+ * Defines mobile group item.
1664
1659
  */
1665
- label?: string;
1666
- position?: Position;
1660
+ customMobileRibbonGroups?: ExtensionRibbonsCustomMobileGroupItem[];
1667
1661
  }
1668
1662
  export interface ExtensionRibbonsCustomMobileGroupItem {
1669
- controls: ExtensionRibbonsCustomMobileControlButtonItem[];
1670
1663
  /**
1671
1664
  * Specify the Id of the group. Used for mobileMessageRead ext point.
1672
1665
  */
@@ -1675,31 +1668,27 @@ export interface ExtensionRibbonsCustomMobileGroupItem {
1675
1668
  * Short label of the control. Maximum length is 32 characters.
1676
1669
  */
1677
1670
  label: string;
1671
+ controls: ExtensionRibbonsCustomMobileControlButtonItem[];
1678
1672
  [property: string]: any;
1679
1673
  }
1680
1674
  export interface ExtensionRibbonsCustomMobileControlButtonItem {
1681
- /**
1682
- * The ID of an action defined in runtimes. Maximum length is 64 characters.
1683
- */
1684
- actionId: string;
1685
- icons: ExtensionCustomMobileIcon[];
1686
1675
  /**
1687
1676
  * Specify the Id of the button like msgReadFunctionButton.
1688
1677
  */
1689
1678
  id: string;
1679
+ type: "mobileButton";
1690
1680
  /**
1691
1681
  * Short label of the control. Maximum length is 32 characters.
1692
1682
  */
1693
1683
  label: string;
1694
- type: "mobileButton";
1684
+ icons: ExtensionCustomMobileIcon[];
1685
+ /**
1686
+ * The ID of an action defined in runtimes. Maximum length is 64 characters.
1687
+ */
1688
+ actionId: string;
1695
1689
  [property: string]: any;
1696
1690
  }
1697
1691
  export interface ExtensionCustomMobileIcon {
1698
- /**
1699
- * How to scale - 1,2,3 for each image. This attribute specifies the UIScreen.scale property
1700
- * for iOS devices.
1701
- */
1702
- scale: number;
1703
1692
  /**
1704
1693
  * Size in pixels of the icon. Three image sizes are required (25, 32, and 48 pixels).
1705
1694
  */
@@ -1708,14 +1697,13 @@ export interface ExtensionCustomMobileIcon {
1708
1697
  * Url to the icon.
1709
1698
  */
1710
1699
  url: string;
1711
- }
1712
- export interface ExtensionRibbonsCustomTabGroupsItem {
1713
1700
  /**
1714
- * Id of a built-in Group. Maximum length is 64 characters.
1701
+ * How to scale - 1,2,3 for each image. This attribute specifies the UIScreen.scale property
1702
+ * for iOS devices.
1715
1703
  */
1716
- builtInGroupId?: string;
1717
- controls?: ExtensionCommonCustomGroupControlsItem[];
1718
- icons?: ExtensionCommonIcon[];
1704
+ scale: number;
1705
+ }
1706
+ export interface ExtensionRibbonsCustomTabGroupsItem {
1719
1707
  /**
1720
1708
  * A unique identifier for this group within the app. Maximum length is 64 characters.
1721
1709
  */
@@ -1724,6 +1712,12 @@ export interface ExtensionRibbonsCustomTabGroupsItem {
1724
1712
  * Displayed text for the group. Maximum length is 64 characters.
1725
1713
  */
1726
1714
  label?: string;
1715
+ icons?: ExtensionCommonIcon[];
1716
+ controls?: ExtensionCommonCustomGroupControlsItem[];
1717
+ /**
1718
+ * Id of a built-in Group. Maximum length is 64 characters.
1719
+ */
1720
+ builtInGroupId?: string;
1727
1721
  /**
1728
1722
  * Specifies whether a group will be hidden on application and platform combinations that
1729
1723
  * support the API (Office.ribbon.requestCreateControls) that installs custom contextual
@@ -1732,14 +1726,14 @@ export interface ExtensionRibbonsCustomTabGroupsItem {
1732
1726
  overriddenByRibbonApi?: boolean;
1733
1727
  }
1734
1728
  export interface Position {
1735
- /**
1736
- * Define alignment of this custom tab relative to the specified built-in tab.
1737
- */
1738
- align: Align;
1739
1729
  /**
1740
1730
  * The id of the built-in tab. Maximum length is 64 characters.
1741
1731
  */
1742
1732
  builtInTabId: string;
1733
+ /**
1734
+ * Define alignment of this custom tab relative to the specified built-in tab.
1735
+ */
1736
+ align: Align;
1743
1737
  }
1744
1738
  /**
1745
1739
  * Define alignment of this custom tab relative to the specified built-in tab.
@@ -1750,63 +1744,63 @@ export type Align = "after" | "before";
1750
1744
  * actions that can be used by each extension point. Min size 1.
1751
1745
  *
1752
1746
  * A runtime environment for a page or script.
1753
- */
1754
- export interface ExtensionRuntimesArray {
1755
- actions?: ExtensionRuntimesActionsItem[];
1756
- code: ExtensionRuntimeCode;
1757
- customFunctions?: ExtensionCustomFunctions;
1747
+ */
1748
+ export interface ExtensionRuntimesArray {
1749
+ requirements?: RequirementsExtensionElement;
1758
1750
  /**
1759
1751
  * A unique identifier for this runtime within the app. Maximum length is 64 characters.
1760
1752
  */
1761
1753
  id: string;
1754
+ /**
1755
+ * Supports running functions and launching pages.
1756
+ */
1757
+ type?: "general";
1758
+ code: ExtensionRuntimeCode;
1762
1759
  /**
1763
1760
  * Runtimes with a short lifetime do not preserve state across executions. Runtimes with a
1764
1761
  * long lifetime do.
1765
1762
  */
1766
1763
  lifetime?: Lifetime;
1767
- requirements?: RequirementsExtensionElement;
1768
- /**
1769
- * Supports running functions and launching pages.
1770
- */
1771
- type?: "general";
1764
+ actions?: ExtensionRuntimesActionsItem[];
1765
+ customFunctions?: ExtensionCustomFunctions;
1772
1766
  }
1773
1767
  /**
1774
1768
  * Specifies the set of actions supported by this runtime. An action is either running a
1775
1769
  * JavaScript function or opening a view such as a task pane.
1776
1770
  */
1777
1771
  export interface ExtensionRuntimesActionsItem {
1778
- /**
1779
- * Display name of the action. Maximum length is 64 characters.
1780
- */
1781
- displayName?: string;
1782
1772
  /**
1783
1773
  * Identifier for this action. Maximum length is 64 characters. This value is passed to the
1784
1774
  * code file.
1785
1775
  */
1786
1776
  id: string;
1787
1777
  /**
1788
- * Whether allows the action to have multiple selection.
1778
+ * executeFunction: Run a script function without waiting for it to finish. openPage: Open a
1779
+ * page in a view. executeDataFunction: invoke command and retrieve data.
1789
1780
  */
1790
- multiselect?: boolean;
1781
+ type: ActionType;
1782
+ /**
1783
+ * Display name of the action. Maximum length is 64 characters.
1784
+ */
1785
+ displayName?: string;
1791
1786
  /**
1792
1787
  * Specifies that a task pane supports pinning, which keeps the task pane open when the user
1793
1788
  * changes the selection.
1794
1789
  */
1795
1790
  pinnable?: boolean;
1796
1791
  /**
1797
- * Whether allows task pane add-ins to activate without the Reading Pane enabled or a
1798
- * message selected.
1792
+ * View where the page should be opened. Maximum length is 64 characters.
1799
1793
  */
1800
- supportsNoItemContext?: boolean;
1794
+ view?: string;
1801
1795
  /**
1802
- * executeFunction: Run a script function without waiting for it to finish. openPage: Open a
1803
- * page in a view. executeDataFunction: invoke command and retrieve data.
1796
+ * Whether allows the action to have multiple selection.
1804
1797
  */
1805
- type: ActionType;
1798
+ multiselect?: boolean;
1806
1799
  /**
1807
- * View where the page should be opened. Maximum length is 64 characters.
1800
+ * Whether allows task pane add-ins to activate without the Reading Pane enabled or a
1801
+ * message selected.
1808
1802
  */
1809
- view?: string;
1803
+ supportsNoItemContext?: boolean;
1810
1804
  }
1811
1805
  /**
1812
1806
  * executeFunction: Run a script function without waiting for it to finish. openPage: Open a
@@ -1819,35 +1813,18 @@ export type ActionType = "executeFunction" | "openPage" | "executeDataFunction";
1819
1813
  * functions just as they would any native function in Excel, such as SUM().
1820
1814
  */
1821
1815
  export interface ExtensionCustomFunctions {
1822
- /**
1823
- * Allows a custom function to accept Excel data types as parameters and return values.
1824
- */
1825
- allowCustomDataForDataTypeAny?: boolean;
1826
1816
  /**
1827
1817
  * Array of function object which defines function metadata.
1828
1818
  */
1829
1819
  functions: ExtensionFunction[];
1830
1820
  namespace: ExtensionCustomFunctionsNamespace;
1821
+ /**
1822
+ * Allows a custom function to accept Excel data types as parameters and return values.
1823
+ */
1824
+ allowCustomDataForDataTypeAny?: boolean;
1831
1825
  [property: string]: any;
1832
1826
  }
1833
1827
  export interface ExtensionFunction {
1834
- /**
1835
- * If true, Excel calls the CancelableInvocation handler whenever the user takes an action
1836
- * that has the effect of canceling the function; for example, manually triggering
1837
- * recalculation or editing a cell that is referenced by the function. Cancelable functions
1838
- * are typically only used for asynchronous functions that return a single result and need
1839
- * to handle the cancellation of a request for data. A function can't use both the stream
1840
- * and cancelable properties.
1841
- */
1842
- cancelable?: boolean;
1843
- /**
1844
- * The description of the function that end users see in Excel.
1845
- */
1846
- description?: string;
1847
- /**
1848
- * URL that provides information about the function. (It is displayed in a task pane.)
1849
- */
1850
- helpUrl?: string;
1851
1828
  /**
1852
1829
  * A unique ID for the function.
1853
1830
  */
@@ -1858,22 +1835,17 @@ export interface ExtensionFunction {
1858
1835
  */
1859
1836
  name: string;
1860
1837
  /**
1861
- * Array that defines the input parameters for the function.
1838
+ * The description of the function that end users see in Excel.
1862
1839
  */
1863
- parameters: ExtensionFunctionParameter[];
1840
+ description?: string;
1864
1841
  /**
1865
- * If true, your custom function can access the address of the cell that invoked it. The
1866
- * address property of the invocation parameter contains the address of the cell that
1867
- * invoked your custom function. A function can't use both the stream and requiresAddress
1868
- * properties.
1842
+ * URL that provides information about the function. (It is displayed in a task pane.)
1869
1843
  */
1870
- requiresAddress?: boolean;
1844
+ helpUrl?: string;
1871
1845
  /**
1872
- * If true, your custom function can access the addresses of the function's input
1873
- * parameters. This property must be used in combination with the dimensionality property of
1874
- * the result object, and dimensionality must be set to matrix.
1846
+ * Array that defines the input parameters for the function.
1875
1847
  */
1876
- requiresParameterAddress?: boolean;
1848
+ parameters: ExtensionFunctionParameter[];
1877
1849
  result: ExtensionResult;
1878
1850
  /**
1879
1851
  * If true, the function can output repeatedly to the cell even when invoked only once. This
@@ -1889,9 +1861,45 @@ export interface ExtensionFunction {
1889
1861
  * volatile property will be ignored.
1890
1862
  */
1891
1863
  volatile?: boolean;
1864
+ /**
1865
+ * If true, Excel calls the CancelableInvocation handler whenever the user takes an action
1866
+ * that has the effect of canceling the function; for example, manually triggering
1867
+ * recalculation or editing a cell that is referenced by the function. Cancelable functions
1868
+ * are typically only used for asynchronous functions that return a single result and need
1869
+ * to handle the cancellation of a request for data. A function can't use both the stream
1870
+ * and cancelable properties.
1871
+ */
1872
+ cancelable?: boolean;
1873
+ /**
1874
+ * If true, your custom function can access the address of the cell that invoked it. The
1875
+ * address property of the invocation parameter contains the address of the cell that
1876
+ * invoked your custom function. A function can't use both the stream and requiresAddress
1877
+ * properties.
1878
+ */
1879
+ requiresAddress?: boolean;
1880
+ /**
1881
+ * If true, your custom function can access the addresses of the function's input
1882
+ * parameters. This property must be used in combination with the dimensionality property of
1883
+ * the result object, and dimensionality must be set to matrix.
1884
+ */
1885
+ requiresParameterAddress?: boolean;
1892
1886
  [property: string]: any;
1893
1887
  }
1894
1888
  export interface ExtensionFunctionParameter {
1889
+ /**
1890
+ * The name of the parameter. This name is displayed in Excel's IntelliSense.
1891
+ */
1892
+ name: string;
1893
+ /**
1894
+ * A description of the parameter. This is displayed in Excel's IntelliSense.
1895
+ */
1896
+ description?: string;
1897
+ /**
1898
+ * The data type of the parameter. It can only be boolean, number, string, any,
1899
+ * CustomFunctions.Invocation, CustomFunctions.StreamingInvocation or
1900
+ * CustomFunctions.CancelableInvocation, any allows you to use any of other types.
1901
+ */
1902
+ type?: string;
1895
1903
  /**
1896
1904
  * A subfield of the type property. Specifies the Excel data types accepted by the custom
1897
1905
  * function. Accepts the values cellvalue, booleancellvalue, doublecellvalue,
@@ -1899,18 +1907,10 @@ export interface ExtensionFunctionParameter {
1899
1907
  * localimagecellvalue, stringcellvalue, webimagecellvalue
1900
1908
  */
1901
1909
  cellValueType?: CellValueType;
1902
- /**
1903
- * A description of the parameter. This is displayed in Excel's IntelliSense.
1904
- */
1905
- description?: string;
1906
1910
  /**
1907
1911
  * Must be either scalar (a non-array value) or matrix (a 2-dimensional array).
1908
1912
  */
1909
1913
  dimensionality?: Dimensionality;
1910
- /**
1911
- * The name of the parameter. This name is displayed in Excel's IntelliSense.
1912
- */
1913
- name: string;
1914
1914
  /**
1915
1915
  * If true, the parameter is optional.
1916
1916
  */
@@ -1920,12 +1920,6 @@ export interface ExtensionFunctionParameter {
1920
1920
  * parameters are considered optional parameters by definition.
1921
1921
  */
1922
1922
  repeating?: boolean;
1923
- /**
1924
- * The data type of the parameter. It can only be boolean, number, string, any,
1925
- * CustomFunctions.Invocation, CustomFunctions.StreamingInvocation or
1926
- * CustomFunctions.CancelableInvocation, any allows you to use any of other types.
1927
- */
1928
- type?: string;
1929
1923
  [property: string]: any;
1930
1924
  }
1931
1925
  /**
@@ -1987,6 +1981,11 @@ export interface GraphConnector {
1987
1981
  notificationUrl: string;
1988
1982
  }
1989
1983
  export interface Icons {
1984
+ /**
1985
+ * A relative file path to a transparent PNG outline icon. The border color needs to be
1986
+ * white. Size 32x32.
1987
+ */
1988
+ outline: string;
1990
1989
  /**
1991
1990
  * A relative file path to a full color PNG icon. Size 192x192.
1992
1991
  */
@@ -1995,11 +1994,6 @@ export interface Icons {
1995
1994
  * A relative file path to a full color PNG icon with transparent background. Size 32x32.
1996
1995
  */
1997
1996
  color32x32?: string;
1998
- /**
1999
- * A relative file path to a transparent PNG outline icon. The border color needs to be
2000
- * white. Size 32x32.
2001
- */
2002
- outline: string;
2003
1997
  }
2004
1998
  /**
2005
1999
  * The Intune-related properties for the app.
@@ -2011,25 +2005,25 @@ export interface IntuneInfo {
2011
2005
  supportedMobileAppManagementVersion?: string;
2012
2006
  }
2013
2007
  export interface LocalizationInfo {
2014
- additionalLanguages?: AdditionalLanguage[];
2015
- /**
2016
- * A relative file path to a the .json file containing strings in the default language.
2017
- */
2018
- defaultLanguageFile?: string;
2019
2008
  /**
2020
2009
  * The language tag of the strings in this top level manifest file.
2021
2010
  */
2022
2011
  defaultLanguageTag: string;
2023
- }
2024
- export interface AdditionalLanguage {
2025
2012
  /**
2026
- * A relative file path to a the .json file containing the translated strings.
2013
+ * A relative file path to a the .json file containing strings in the default language.
2027
2014
  */
2028
- file: string;
2015
+ defaultLanguageFile?: string;
2016
+ additionalLanguages?: AdditionalLanguage[];
2017
+ }
2018
+ export interface AdditionalLanguage {
2029
2019
  /**
2030
2020
  * The language tag of the strings in the provided file.
2031
2021
  */
2032
2022
  languageTag: string;
2023
+ /**
2024
+ * A relative file path to a the .json file containing the translated strings.
2025
+ */
2026
+ file: string;
2033
2027
  }
2034
2028
  /**
2035
2029
  * The version of the schema this manifest is using.
@@ -2043,19 +2037,10 @@ export interface MeetingExtensionDefinition {
2043
2037
  * Meeting supported scenes.
2044
2038
  */
2045
2039
  scenes?: Scene[];
2046
- /**
2047
- * A boolean value indicating whether this app supports access by anonymous guest users.
2048
- */
2049
- supportsAnonymousGuestUsers?: boolean;
2050
2040
  /**
2051
2041
  * Represents if the app has added support for sharing to stage.
2052
2042
  */
2053
2043
  supportsCustomShareToStage?: boolean;
2054
- /**
2055
- * A boolean value indicating whether this app can stream the meeting's audio video content
2056
- * to an RTMP endpoint.
2057
- */
2058
- supportsStreaming?: boolean;
2059
2044
  /**
2060
2045
  * Meeting supported video filters.
2061
2046
  */
@@ -2064,28 +2049,37 @@ export interface MeetingExtensionDefinition {
2064
2049
  * A URL for configuring the video filters.
2065
2050
  */
2066
2051
  videoFiltersConfigurationUrl?: string;
2067
- }
2068
- export interface Scene {
2069
2052
  /**
2070
- * A relative file path to a scene metadata json file.
2053
+ * A boolean value indicating whether this app can stream the meeting's audio video content
2054
+ * to an RTMP endpoint.
2071
2055
  */
2072
- file: string;
2056
+ supportsStreaming?: boolean;
2073
2057
  /**
2074
- * A unique identifier for this scene. This id must be a GUID.
2058
+ * A boolean value indicating whether this app supports access by anonymous guest users.
2075
2059
  */
2076
- id: string;
2060
+ supportsAnonymousGuestUsers?: boolean;
2061
+ }
2062
+ export interface Scene {
2077
2063
  /**
2078
- * Maximum audiences supported in scene.
2064
+ * A unique identifier for this scene. This id must be a GUID.
2079
2065
  */
2080
- maxAudience: number;
2066
+ id: string;
2081
2067
  /**
2082
2068
  * Scene name.
2083
2069
  */
2084
2070
  name: string;
2071
+ /**
2072
+ * A relative file path to a scene metadata json file.
2073
+ */
2074
+ file: string;
2085
2075
  /**
2086
2076
  * A relative file path to a scene PNG preview icon.
2087
2077
  */
2088
2078
  preview: string;
2079
+ /**
2080
+ * Maximum audiences supported in scene.
2081
+ */
2082
+ maxAudience: number;
2089
2083
  /**
2090
2084
  * Number of seats reserved for organizers or presenters.
2091
2085
  */
@@ -2107,28 +2101,28 @@ export interface VideoFilter {
2107
2101
  }
2108
2102
  export interface NameClass {
2109
2103
  /**
2110
- * An abbreviated name for the app.
2104
+ * A short display name for the app.
2111
2105
  */
2112
- abbreviated?: string;
2106
+ short: string;
2113
2107
  /**
2114
2108
  * The full name of the app, used if the full app name exceeds 30 characters.
2115
2109
  */
2116
2110
  full: string;
2117
2111
  /**
2118
- * A short display name for the app.
2112
+ * An abbreviated name for the app.
2119
2113
  */
2120
- short: string;
2114
+ abbreviated?: string;
2121
2115
  }
2122
2116
  export type Permission = "identity" | "messageTeamMembers";
2123
2117
  export interface ScopeConstraints {
2124
- /**
2125
- * A list of chat thread ids to which your app is restricted to
2126
- */
2127
- groupChats?: GroupChatElement[];
2128
2118
  /**
2129
2119
  * A list of team thread ids to which your app is restricted to
2130
2120
  */
2131
2121
  teams?: TeamElement[];
2122
+ /**
2123
+ * A list of chat thread ids to which your app is restricted to
2124
+ */
2125
+ groupChats?: GroupChatElement[];
2132
2126
  }
2133
2127
  export interface GroupChatElement {
2134
2128
  /**
@@ -2144,30 +2138,30 @@ export interface TeamElement {
2144
2138
  }
2145
2139
  export interface StaticTab {
2146
2140
  /**
2147
- * The Microsoft App ID specified for the bot in the Bot Framework portal
2148
- * (https://dev.botframework.com/bots)
2141
+ * A unique identifier for the entity which the tab displays.
2149
2142
  */
2150
- contentBotId?: string;
2143
+ entityId: string;
2151
2144
  /**
2152
- * The url which points to the entity UI to be displayed in the Teams canvas.
2145
+ * The display name of the tab.
2153
2146
  */
2154
- contentUrl?: string;
2147
+ name?: string;
2155
2148
  /**
2156
- * The set of contextItem scopes that a tab belong to
2149
+ * The url which points to the entity UI to be displayed in the Teams canvas.
2157
2150
  */
2158
- context?: StaticTabContext[];
2151
+ contentUrl?: string;
2159
2152
  /**
2160
- * A unique identifier for the entity which the tab displays.
2153
+ * The Microsoft App ID specified for the bot in the Bot Framework portal
2154
+ * (https://dev.botframework.com/bots)
2161
2155
  */
2162
- entityId: string;
2156
+ contentBotId?: string;
2163
2157
  /**
2164
- * The display name of the tab.
2158
+ * The url to point at if a user opts to view in a browser.
2165
2159
  */
2166
- name?: string;
2160
+ websiteUrl?: string;
2167
2161
  /**
2168
- * The set of requirements for the tab.
2162
+ * The url to direct a user's search queries.
2169
2163
  */
2170
- requirementSet?: ElementRequirementSet;
2164
+ searchUrl?: string;
2171
2165
  /**
2172
2166
  * Specifies whether the tab offers an experience in the context of a channel in a team, or
2173
2167
  * an experience scoped to an individual user alone or a group chat. These options are
@@ -2175,17 +2169,17 @@ export interface StaticTab {
2175
2169
  */
2176
2170
  scopes: StaticTabScope[];
2177
2171
  /**
2178
- * The url to direct a user's search queries.
2172
+ * The set of contextItem scopes that a tab belong to
2179
2173
  */
2180
- searchUrl?: string;
2174
+ context?: StaticTabContext[];
2181
2175
  /**
2182
2176
  * The set of supportedPlatform scopes that a tab belong to
2183
2177
  */
2184
2178
  supportedPlatform?: SupportedPlatform[];
2185
2179
  /**
2186
- * The url to point at if a user opts to view in a browser.
2180
+ * The set of requirements for the tab.
2187
2181
  */
2188
- websiteUrl?: string;
2182
+ requirementSet?: ElementRequirementSet;
2189
2183
  }
2190
2184
  export type StaticTabContext = "personalTab" | "channelTab" | "privateChatTab" | "meetingChatTab" | "meetingDetailsTab" | "meetingSidePanel" | "meetingStage" | "teamLevelApp";
2191
2185
  export type StaticTabScope = "team" | "personal" | "groupChat";
@@ -2212,6 +2206,30 @@ export interface WebApplicationInfo {
2212
2206
  * Resource url of app for acquiring auth token for SSO.
2213
2207
  */
2214
2208
  resource?: string;
2209
+ /**
2210
+ * By including this property, an NAA token based on its contents will be prefetched when
2211
+ * the tab is loaded.
2212
+ */
2213
+ nestedAppAuthInfo?: NestedAppAuthInfo[];
2214
+ }
2215
+ export interface NestedAppAuthInfo {
2216
+ /**
2217
+ * Represents the nested app's valid redirect URI (always a base origin).
2218
+ */
2219
+ redirectUri: string;
2220
+ /**
2221
+ * Represents the stringified list of scopes the access token requested requires. Order must
2222
+ * match that of the proceeding NAA request in the app.
2223
+ */
2224
+ scopes: string[];
2225
+ /**
2226
+ * An optional JSON formatted object of client capabilities that represents if the resource
2227
+ * server is CAE capable. Do not use an empty string for this value. If unsupported, keep
2228
+ * the field undefined. If supported, use the following string exactly:
2229
+ * '{"access_token":{"xms_cc":{"values":["CP1"]}}}'. More info on client capabilities here:
2230
+ * https://learn.microsoft.com/en-us/entra/identity-platform/claims-challenge?tabs=dotnet#how-to-communicate-client-capabilities-to-microsoft-entra-id
2231
+ */
2232
+ claims?: string;
2215
2233
  }
2216
2234
  export declare class Convert {
2217
2235
  static toTeamsManifestVDevPreview(json: string): TeamsManifestVDevPreview;