@microsoft/app-manifest 1.0.0-alpha.3db80d0af.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 (102) hide show
  1. package/LICENSE +23 -0
  2. package/build/ManifestCommonProperties.d.ts +30 -0
  3. package/build/ManifestCommonProperties.js +5 -0
  4. package/build/ManifestCommonProperties.js.map +1 -0
  5. package/build/constants.d.ts +1 -0
  6. package/build/constants.js +7 -0
  7. package/build/constants.js.map +1 -0
  8. package/build/declarativeCopilotManifest.d.ts +68 -0
  9. package/build/declarativeCopilotManifest.js +15 -0
  10. package/build/declarativeCopilotManifest.js.map +1 -0
  11. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D0.d.ts +163 -0
  12. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D0.js +214 -0
  13. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D0.js.map +1 -0
  14. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D2.d.ts +185 -0
  15. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D2.js +220 -0
  16. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D2.js.map +1 -0
  17. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D3.d.ts +285 -0
  18. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D3.js +248 -0
  19. package/build/generated-types/copilot/declarative-agent/DeclarativeAgentManifestV1D3.js.map +1 -0
  20. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D1.d.ts +429 -0
  21. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D1.js +289 -0
  22. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D1.js.map +1 -0
  23. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D2.d.ts +439 -0
  24. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D2.js +298 -0
  25. package/build/generated-types/copilot/plugin/ApiPluginManifestV2D2.js.map +1 -0
  26. package/build/generated-types/index.d.ts +172 -0
  27. package/build/generated-types/index.js +437 -0
  28. package/build/generated-types/index.js.map +1 -0
  29. package/build/generated-types/teams/TeamsManifestV1D0.d.ts +268 -0
  30. package/build/generated-types/teams/TeamsManifestV1D0.js +265 -0
  31. package/build/generated-types/teams/TeamsManifestV1D0.js.map +1 -0
  32. package/build/generated-types/teams/TeamsManifestV1D1.d.ts +268 -0
  33. package/build/generated-types/teams/TeamsManifestV1D1.js +266 -0
  34. package/build/generated-types/teams/TeamsManifestV1D1.js.map +1 -0
  35. package/build/generated-types/teams/TeamsManifestV1D10.d.ts +589 -0
  36. package/build/generated-types/teams/TeamsManifestV1D10.js +448 -0
  37. package/build/generated-types/teams/TeamsManifestV1D10.js.map +1 -0
  38. package/build/generated-types/teams/TeamsManifestV1D11.d.ts +603 -0
  39. package/build/generated-types/teams/TeamsManifestV1D11.js +447 -0
  40. package/build/generated-types/teams/TeamsManifestV1D11.js.map +1 -0
  41. package/build/generated-types/teams/TeamsManifestV1D12.d.ts +638 -0
  42. package/build/generated-types/teams/TeamsManifestV1D12.js +461 -0
  43. package/build/generated-types/teams/TeamsManifestV1D12.js.map +1 -0
  44. package/build/generated-types/teams/TeamsManifestV1D13.d.ts +640 -0
  45. package/build/generated-types/teams/TeamsManifestV1D13.js +461 -0
  46. package/build/generated-types/teams/TeamsManifestV1D13.js.map +1 -0
  47. package/build/generated-types/teams/TeamsManifestV1D14.d.ts +651 -0
  48. package/build/generated-types/teams/TeamsManifestV1D14.js +467 -0
  49. package/build/generated-types/teams/TeamsManifestV1D14.js.map +1 -0
  50. package/build/generated-types/teams/TeamsManifestV1D15.d.ts +656 -0
  51. package/build/generated-types/teams/TeamsManifestV1D15.js +468 -0
  52. package/build/generated-types/teams/TeamsManifestV1D15.js.map +1 -0
  53. package/build/generated-types/teams/TeamsManifestV1D16.d.ts +659 -0
  54. package/build/generated-types/teams/TeamsManifestV1D16.js +471 -0
  55. package/build/generated-types/teams/TeamsManifestV1D16.js.map +1 -0
  56. package/build/generated-types/teams/TeamsManifestV1D17.d.ts +1212 -0
  57. package/build/generated-types/teams/TeamsManifestV1D17.js +733 -0
  58. package/build/generated-types/teams/TeamsManifestV1D17.js.map +1 -0
  59. package/build/generated-types/teams/TeamsManifestV1D19.d.ts +1238 -0
  60. package/build/generated-types/teams/TeamsManifestV1D19.js +742 -0
  61. package/build/generated-types/teams/TeamsManifestV1D19.js.map +1 -0
  62. package/build/generated-types/teams/TeamsManifestV1D2.d.ts +268 -0
  63. package/build/generated-types/teams/TeamsManifestV1D2.js +266 -0
  64. package/build/generated-types/teams/TeamsManifestV1D2.js.map +1 -0
  65. package/build/generated-types/teams/TeamsManifestV1D20.d.ts +1420 -0
  66. package/build/generated-types/teams/TeamsManifestV1D20.js +818 -0
  67. package/build/generated-types/teams/TeamsManifestV1D20.js.map +1 -0
  68. package/build/generated-types/teams/TeamsManifestV1D3.d.ts +280 -0
  69. package/build/generated-types/teams/TeamsManifestV1D3.js +279 -0
  70. package/build/generated-types/teams/TeamsManifestV1D3.js.map +1 -0
  71. package/build/generated-types/teams/TeamsManifestV1D4.d.ts +333 -0
  72. package/build/generated-types/teams/TeamsManifestV1D4.js +316 -0
  73. package/build/generated-types/teams/TeamsManifestV1D4.js.map +1 -0
  74. package/build/generated-types/teams/TeamsManifestV1D5.d.ts +423 -0
  75. package/build/generated-types/teams/TeamsManifestV1D5.js +357 -0
  76. package/build/generated-types/teams/TeamsManifestV1D5.js.map +1 -0
  77. package/build/generated-types/teams/TeamsManifestV1D6.d.ts +428 -0
  78. package/build/generated-types/teams/TeamsManifestV1D6.js +359 -0
  79. package/build/generated-types/teams/TeamsManifestV1D6.js.map +1 -0
  80. package/build/generated-types/teams/TeamsManifestV1D7.d.ts +444 -0
  81. package/build/generated-types/teams/TeamsManifestV1D7.js +369 -0
  82. package/build/generated-types/teams/TeamsManifestV1D7.js.map +1 -0
  83. package/build/generated-types/teams/TeamsManifestV1D8.d.ts +466 -0
  84. package/build/generated-types/teams/TeamsManifestV1D8.js +386 -0
  85. package/build/generated-types/teams/TeamsManifestV1D8.js.map +1 -0
  86. package/build/generated-types/teams/TeamsManifestV1D9.d.ts +532 -0
  87. package/build/generated-types/teams/TeamsManifestV1D9.js +420 -0
  88. package/build/generated-types/teams/TeamsManifestV1D9.js.map +1 -0
  89. package/build/generated-types/teams/TeamsManifestVDevPreview.d.ts +2219 -0
  90. package/build/generated-types/teams/TeamsManifestVDevPreview.js +1090 -0
  91. package/build/generated-types/teams/TeamsManifestVDevPreview.js.map +1 -0
  92. package/build/index.d.ts +88 -0
  93. package/build/index.js +247 -0
  94. package/build/index.js.map +1 -0
  95. package/build/manifest.d.ts +521 -0
  96. package/build/manifest.js +61 -0
  97. package/build/manifest.js.map +1 -0
  98. package/build/pluginManifest.d.ts +143 -0
  99. package/build/pluginManifest.js +3 -0
  100. package/build/pluginManifest.js.map +1 -0
  101. package/build/tsconfig.tsbuildinfo +1 -0
  102. package/package.json +68 -0
@@ -0,0 +1,429 @@
1
+ /**
2
+ * The root of the plugin manifest document is a JSON object that contains members that
3
+ * describe the plugin.
4
+ */
5
+ export interface APIPluginManifestV2D1 {
6
+ /**
7
+ * Describes capabilities of the plugin.
8
+ */
9
+ capabilities?: PluginCapabilitiesObject;
10
+ /**
11
+ * An email address of a contact for safety/moderation, support, and deactivation.
12
+ */
13
+ contact_email?: any;
14
+ /**
15
+ * A human-readable description of the plugin. Characters beyond 100 MAY be ignored. This
16
+ * property is localizable.
17
+ */
18
+ description_for_human: string;
19
+ /**
20
+ * The description for the plugin that is provided to the model. This description should
21
+ * describe what the plugin is for, and in what circumstances its functions are relevant.
22
+ * Characters beyond 2048 MAY be ignored. This property is localizable.
23
+ */
24
+ description_for_model?: string;
25
+ /**
26
+ * A set of function objects describing the functions available to the plugin. Each function
27
+ * object name MUST be unique within the array. The order of the array isn't significant. If
28
+ * the `functions` property isn't present and there's an OpenAPI runtime, the functions are
29
+ * inferred from the OpenAPI operations.
30
+ */
31
+ functions?: FunctionObject[];
32
+ /**
33
+ * An absolute URL that locates a document containing the terms of service for the plugin.
34
+ * This property is localizable.
35
+ */
36
+ legal_info_url?: any;
37
+ /**
38
+ * A URL used to fetch a logo that MAY be used by the orchestrator. Implementations MAY
39
+ * provide alternative methods to provide logos that meet their visual requirements. This
40
+ * property is localizable.
41
+ */
42
+ logo_url?: any;
43
+ /**
44
+ * A short, human-readable name for the plugin. It MUST contain at least one nonwhitespace
45
+ * character. Characters beyond 20 MAY be ignored. This property is localizable.
46
+ */
47
+ name_for_human: string;
48
+ /**
49
+ * An identifier used to prevent name conflicts between function names from different
50
+ * plugins that are used within the same execution context. The value MUST match the regex
51
+ * ^[A-Za-z0-9_]+ as defined by [RFC9485]. This is a required member.
52
+ */
53
+ namespace: string;
54
+ /**
55
+ * An absolute URL that locates a document containing the privacy policy for the plugin.
56
+ * This property is localizable.
57
+ */
58
+ privacy_policy_url?: any;
59
+ /**
60
+ * A set of runtime objects describing the runtimes used by the plugin.
61
+ */
62
+ runtimes?: OpenAPIRuntimeObject[];
63
+ /**
64
+ * The schema version. Previous versions are `v1` and `v2`.
65
+ */
66
+ schema_version: "v2.1";
67
+ [property: string]: any;
68
+ }
69
+ /**
70
+ * Describes capabilities of the plugin.
71
+ */
72
+ export interface PluginCapabilitiesObject {
73
+ /**
74
+ * Conversation starters that can be displayed to the user for suggestions on how to invoke
75
+ * the plugin.
76
+ */
77
+ conversation_starters?: ConversationStarterObject[];
78
+ /**
79
+ * Provides mappings for strings in different languages and locales. Certain properties can
80
+ * be localized using a [Liquid][] filter called `localize`.
81
+ */
82
+ localization?: {
83
+ [key: string]: any;
84
+ };
85
+ [property: string]: any;
86
+ }
87
+ /**
88
+ * An example of a question that the plugin can answer.
89
+ */
90
+ export interface ConversationStarterObject {
91
+ /**
92
+ * The text of the conversation starter. This property is localizable.
93
+ */
94
+ text: string;
95
+ /**
96
+ * The title of the conversation starter. This property is localizable.
97
+ */
98
+ title?: string;
99
+ [property: string]: any;
100
+ }
101
+ /**
102
+ * Information related to how the model should interact with a function.
103
+ */
104
+ export interface FunctionObject {
105
+ /**
106
+ * Contains a collection of data used to configure optional capabilities of the orchestrator
107
+ * while invoking the function.
108
+ */
109
+ capabilities?: FunctionCapabilitiesObject;
110
+ /**
111
+ * A description better tailored to the model, such as token context length considerations
112
+ * or keyword usage for improved plugin prompting.
113
+ */
114
+ description?: string;
115
+ id?: string;
116
+ /**
117
+ * A string that uniquely identifies this function. Runtime objects MAY reference this
118
+ * identifier to bind the runtime to the function. When the function is bound to an OpenAPI
119
+ * runtime, the value must match an `operationId` value in the OpenAPI description.
120
+ */
121
+ name: string;
122
+ /**
123
+ * An object that contains members that describe the parameters of a function in a runtime
124
+ * agnostic way. It mirrors the shape of [json-schema][] but only supports a small subset of
125
+ * the JSON schema capabilities. If the `parameters` property isn't present, functions
126
+ * described by a runtime object of type `OpenApi` use the OpenAPI description to determine
127
+ * the parameters. Each member in the JSON object is a function parameter object that
128
+ * describes the semantics of the parameter.
129
+ */
130
+ parameters?: FunctionParametersObject;
131
+ /**
132
+ * Describes the semantics of the value returned from the function.
133
+ */
134
+ returns?: ReturnObject;
135
+ /**
136
+ * Defines state objects for orchestrator states.
137
+ */
138
+ states?: FunctionStatesObject;
139
+ [property: string]: any;
140
+ }
141
+ /**
142
+ * Contains a collection of data used to configure optional capabilities of the orchestrator
143
+ * while invoking the function.
144
+ */
145
+ export interface FunctionCapabilitiesObject {
146
+ /**
147
+ * Describes a confirmation dialog that SHOULD be presented to the user before invoking the
148
+ * function.
149
+ */
150
+ confirmation?: ConfirmationObject;
151
+ /**
152
+ * Describes how the orchestrator can interpret the response payload and provide a visual
153
+ * rendering.
154
+ */
155
+ response_semantics?: ResponseSemanticsObject;
156
+ [property: string]: any;
157
+ }
158
+ /**
159
+ * Describes a confirmation dialog that SHOULD be presented to the user before invoking the
160
+ * function.
161
+ *
162
+ * Describes how the orchestrator asks the user to confirm before calling a function.
163
+ */
164
+ export interface ConfirmationObject {
165
+ /**
166
+ * The text of the confirmation dialog. This property is localizable.
167
+ */
168
+ body?: string;
169
+ /**
170
+ * The title of the confirmation dialog. This property is localizable.
171
+ */
172
+ title?: string;
173
+ /**
174
+ * Specifies the type of confirmation.
175
+ */
176
+ type?: ConfirmationType;
177
+ [property: string]: any;
178
+ }
179
+ /**
180
+ * Specifies the type of confirmation.
181
+ */
182
+ export type ConfirmationType = "None" | "AdaptiveCard";
183
+ /**
184
+ * Describes how the orchestrator can interpret the response payload and provide a visual
185
+ * rendering.
186
+ *
187
+ * Contains information to identify semantics of response payload and enable rendering that
188
+ * information in a rich visual experience using [adaptive cards](https://adaptivecards.io/).
189
+ */
190
+ export interface ResponseSemanticsObject {
191
+ /**
192
+ * A JSONPath [RFC9535][] query that identifies a set of elements from the function response
193
+ * to be rendered using the template specified in each item.
194
+ */
195
+ data_path: string;
196
+ /**
197
+ * A JSON string containing a JSONPath query that when applied to the response payload will
198
+ * return an [Adaptive Card
199
+ * Template](https://learn.microsoft.com/adaptive-cards/templating/language) that will be
200
+ * used to authenticate the user.
201
+ */
202
+ oauth_card_path?: string;
203
+ /**
204
+ * Allows mapping of JSONPath queries to well-known data elements. Each JSONPath query is
205
+ * relative to a result value.
206
+ */
207
+ properties?: ResponseSemanticsPropertiesObject;
208
+ /**
209
+ * A JSON object that conforms with the [Adaptive Card
210
+ * Schema](https://adaptivecards.io/schemas/adaptive-card.json) and templating language.
211
+ * This Adaptive Card instance is used to render a result from the plugin response. This
212
+ * value is used if the `template_selector` isn't present or fails to resolve to an adaptive
213
+ * card.
214
+ */
215
+ static_template?: {
216
+ [key: string]: any;
217
+ };
218
+ [property: string]: any;
219
+ }
220
+ /**
221
+ * Allows mapping of JSONPath queries to well-known data elements. Each JSONPath query is
222
+ * relative to a result value.
223
+ */
224
+ export interface ResponseSemanticsPropertiesObject {
225
+ /**
226
+ * Data sensitivity indicator of the result contents.
227
+ */
228
+ information_protection_label?: string;
229
+ /**
230
+ * Subtitle of a citation for the result.
231
+ */
232
+ subtitle?: string;
233
+ /**
234
+ * A JSONPath query that returns an [Adaptive Card
235
+ * Template](https://learn.microsoft.com/adaptive-cards/templating/language) from the API
236
+ * response to be used for rendering the result.
237
+ */
238
+ template_selector?: string;
239
+ /**
240
+ * URL of a thumbnail image for the result.
241
+ */
242
+ thumbnail_url?: string;
243
+ /**
244
+ * Title of a citation for the result.
245
+ */
246
+ title?: string;
247
+ /**
248
+ * URL of a citation for the result.
249
+ */
250
+ url?: string;
251
+ [property: string]: any;
252
+ }
253
+ /**
254
+ * An object that contains members that describe the parameters of a function in a runtime
255
+ * agnostic way. It mirrors the shape of [json-schema][] but only supports a small subset of
256
+ * the JSON schema capabilities. If the `parameters` property isn't present, functions
257
+ * described by a runtime object of type `OpenApi` use the OpenAPI description to determine
258
+ * the parameters. Each member in the JSON object is a function parameter object that
259
+ * describes the semantics of the parameter.
260
+ *
261
+ * An object that is used to identify the set of parameters that can be passed to the
262
+ * function. This object is structured to mirror the shape of a JSON Schema object but it
263
+ * only supports a subset of JSON Schema keywords.
264
+ */
265
+ export interface FunctionParametersObject {
266
+ /**
267
+ * An object that maps parameter names to their definitions.
268
+ */
269
+ properties: {
270
+ [key: string]: any;
271
+ };
272
+ /**
273
+ * The names of properties that are required parameters. Unlike in JSON Schema, the values
274
+ * in this array MUST match the names listed in the `properties` property.
275
+ */
276
+ required?: string[];
277
+ /**
278
+ * The JSON Schema type.
279
+ */
280
+ type?: "object";
281
+ [property: string]: any;
282
+ }
283
+ /**
284
+ * Describes the semantics of the value returned from the function.
285
+ *
286
+ * Contains the semantics of the value returned from the function.
287
+ *
288
+ * Indicates that the function returns a response that is compatible with the Rich Responses
289
+ * protocol.
290
+ */
291
+ export interface ReturnObject {
292
+ /**
293
+ * A description of the value returned by the API.
294
+ */
295
+ description?: string;
296
+ /**
297
+ * Specifies the type of the value returned by the API.
298
+ */
299
+ type?: "string";
300
+ $ref?: "https://copilot.microsoft.com/schemas/rich-response-v1.0.json";
301
+ [property: string]: any;
302
+ }
303
+ /**
304
+ * Specifies the type of the value returned by the API.
305
+ */
306
+ /**
307
+ * Defines state objects for orchestrator states.
308
+ */
309
+ export interface FunctionStatesObject {
310
+ /**
311
+ * The state in which the model can call functions and do computations.
312
+ */
313
+ reasoning?: StateObject;
314
+ /**
315
+ * The state in which the model can generate text that is shown to the user. The model can't
316
+ * invoke functions in the responding state.
317
+ */
318
+ responding?: StateObject;
319
+ [property: string]: any;
320
+ }
321
+ /**
322
+ * The state in which the model can call functions and do computations.
323
+ *
324
+ * Contains specific instructions for when a function is invoked in a specific orchestrator
325
+ * state.
326
+ *
327
+ * The state in which the model can generate text that is shown to the user. The model can't
328
+ * invoke functions in the responding state.
329
+ */
330
+ export interface StateObject {
331
+ /**
332
+ * Describes the purpose of a function when used in a specific orchestrator state.
333
+ */
334
+ description?: string;
335
+ /**
336
+ * A string or an array of strings that are used to provide examples to the orchestrator on
337
+ * how this function can be invoked.
338
+ */
339
+ examples?: string[] | string;
340
+ /**
341
+ * A string or an array of strings that are used to provide instructions to the orchestrator
342
+ * on how to use this function while in a specific orchestrator state. Providing a single
343
+ * string indicates the intent to provide a complete set of instructions that would override
344
+ * any built-in function prompts. Providing an array of strings indicates the intent to
345
+ * augment the built-in function prompting mechanism.
346
+ */
347
+ instructions?: string[] | string;
348
+ [property: string]: any;
349
+ }
350
+ /**
351
+ * Describes how the plugin invokes OpenAPI functions.
352
+ */
353
+ export interface OpenAPIRuntimeObject {
354
+ /**
355
+ * Authentication information required to invoke the runtime.
356
+ */
357
+ auth: RuntimeAuthenticationObject;
358
+ /**
359
+ * The names of the functions that are available in this runtime. If this property is
360
+ * omitted, all functions described by the runtime are available. If a wildcard ("*") is
361
+ * specified as the only string, all functions are considered. More than one runtime MUST
362
+ * NOT declare support for the same function either implicitly or explicitly.
363
+ */
364
+ run_for_functions?: string[];
365
+ /**
366
+ * Contains the OpenAPI information required to invoke the runtime.
367
+ */
368
+ spec: OpenAPISpecificationObject;
369
+ /**
370
+ * Identifies this runtime as an OpenAPI runtime.
371
+ */
372
+ type: "OpenApi";
373
+ [property: string]: any;
374
+ }
375
+ /**
376
+ * Authentication information required to invoke the runtime.
377
+ *
378
+ * Contains information used by the plugin to authenticate to the runtime.
379
+ */
380
+ export interface RuntimeAuthenticationObject {
381
+ /**
382
+ * A value used when `type` is `OAuthPluginVault` or `ApiKeyPluginVault`. The `reference_id`
383
+ * value is acquired independently when providing the necessary authentication configuration
384
+ * values. This mechanism exists to prevent the need for storing secret values in the plugin
385
+ * manifest.
386
+ */
387
+ reference_id?: string;
388
+ /**
389
+ * Specifies the type of authentication required to invoke a function.
390
+ */
391
+ type?: TypeEnum;
392
+ /**
393
+ * Specifies the type of authentication required to invoke a function.
394
+ */
395
+ Type?: TypeEnum;
396
+ [property: string]: any;
397
+ }
398
+ /**
399
+ * Specifies the type of authentication required to invoke a function.
400
+ */
401
+ export type TypeEnum = "None" | "OAuthPluginVault" | "ApiKeyPluginVault";
402
+ /**
403
+ * Contains the OpenAPI information required to invoke the runtime.
404
+ */
405
+ export interface OpenAPISpecificationObject {
406
+ /**
407
+ * A string that contains an OpenAPI description. If this member is present, `url` isn't
408
+ * required and is ignored if present.
409
+ */
410
+ api_description?: string;
411
+ /**
412
+ * The progress style that is used to display the progress of the function.
413
+ */
414
+ progress_style?: ProgressStyle;
415
+ /**
416
+ * The URL to fetch the OpenAPI specification, called with a GET request. This member is
417
+ * required unless `api_description` is present.
418
+ */
419
+ url?: string;
420
+ [property: string]: any;
421
+ }
422
+ /**
423
+ * The progress style that is used to display the progress of the function.
424
+ */
425
+ export type ProgressStyle = "None" | "ShowUsage" | "ShowUsageWithInput" | "ShowUsageWithInputAndOutput";
426
+ export declare class Convert {
427
+ static toAPIPluginManifestV2D1(json: string): APIPluginManifestV2D1;
428
+ static aPIPluginManifestV2D1ToJson(value: APIPluginManifestV2D1): string;
429
+ }