/** * The root of the declarative agent manifest document is a JSON object that contains * members that describe the declarative agent. */ export interface DeclarativeAgentManifestV1D3 { /** * Required. Not localizable. The version of the schema this manifest is using. */ version: "v1.3"; /** * Optional. Not localizable. */ id?: string; /** * Required. Localizable. The name of the declarative agent. It MUST contain at least one * nonwhitespace character and MUST be 100 characters or less. */ name: string; /** * Required. Localizable. The description of the declarative agent. It MUST contain at least * one nonwhitespace character and MUST be 1,000 characters or less. */ description: string; /** * Optional. Not localizable. The detailed instructions or guidelines on how the declarative * agent should behave, its functions, and any behaviors to avoid. It MUST contain at least * one nonwhitespace character and MUST be 8,000 characters or less. */ instructions?: string; /** * Optional. Contains an array of objects that define capabilities of the declarative agent. */ capabilities?: CapabilityElement[]; /** * Optional. A list of examples of questions that the declarative agent can answer. There * MUST NOT be more than six objects in the array. */ conversation_starters?: ConversationStarterElement[]; /** * Optional. A list of objects that identify API plugins that provide actions accessible to * the declarative agent. */ actions?: ActionElement[]; [property: string]: any; } /** * Identifies an API plugin manifest for a plugin used as an action by the declarative agent. */ export interface ActionElement { /** * Required. Not localizable. A unique identifier for the action. It MAY be represented by a * GUID. */ id: string; /** * Required. Not localizable. A path to the API plugin manifest for this action. */ file: string; [property: string]: any; } /** * Represents a base capability object. * * Indicates that the declarative agent can search the web for grounding information. * * Indicates that the declarative agent can search a user's SharePoint and OneDrive for * grounding information. * * Indicates that the declarative agent can search selected Microsoft Graph connectors for * grounding information. * * Indicates that the declarative agent can generate and execute code. * * Indicates that the declarative agent can images and art based on the text input from the * user. * * Indicates that the declarative agent can search through Teams channels, teams, meetings, * 1:1 chats and group chats. * * A JSON object whose presence indicates that the DA will be able to search within Email * Messages in the mailboxes user has access to. * * Indicates that the DA will be able to search people data in the organization. */ export interface CapabilityElement { /** * Required. The name of the capability. Allowed values are WebSearch, CodeInterpreter, * OneDriveAndSharePoint, GraphConnectors, TeamsMessages, Dataverse, Email, People and * GraphicArt. * * Required. Must be set to WebSearch. * * Required. Must be set to OneDriveAndSharePoint. * * Required. Must be set to GraphConnectors. * * Required. Must be set to CodeInterpreter. * * Required. Must be set to GraphicArt. * * Required. Must be set to TeamsMessages. * * Required: Must be set to Dataverse * * Required: Must be set to Email * * Required. Must be set to People. */ name: Name; /** * Optional. An array of sites used to constrain the content accessible to the DA to just * the content identified via the items of array. */ sites?: SiteElement[]; /** * Optional. An array of objects that identify SharePoint or OneDrive sources using IDs. */ items_by_sharepoint_ids?: ItemsBySharepointIDElement[]; /** * Optional. An array of objects that identify SharePoint or OneDrive sources by URL. */ items_by_url?: ItemsByURLElement[]; /** * Optional. An array of objects that identify the Microsoft Graph connectors available to * the declarative agent */ connections?: ConnectionElement[]; /** * This member can be used to constrain the content accessible to the DA to just the content * identified via the members of each Teams url */ urls?: URLElement[]; /** * An array of Objects that represent the knowledge sources for the Dataverse in the * Declarative Agent */ knowledge_sources?: KnowledgeSourceElement[]; /** * A JSON array of Folder Object. This member can be used to constrain the content * accessible to the DA to just the emails present in the folders identified by members of * each Folder Object. */ folders?: FolderElement[]; /** * A JSON string that contains SMTP address of the shared mailbox. The presence of this * field indicates that the DA constrain its search for relevant emails only to that * mailbox. Emails from user's primary mailbox is not searched when this field is present. */ shared_mailbox?: string; [property: string]: any; } /** * Identifies a Microsoft Graph connector. */ export interface ConnectionElement { /** * Required. Not localizable The unique identifier of the Microsoft Graph connector. */ connection_id: string; [property: string]: any; } export interface FolderElement { /** * A JSON string that identifies an email folder. This can either be id of the folder or one * of the well known names. */ folder_id: string; [property: string]: any; } /** * Contains one or more object identifiers that identify a SharePoint or OneDrive resource. */ export interface ItemsBySharepointIDElement { /** * Optional. Not localizable. The GUID identifier of a SharePoint or OneDrive site. */ site_id?: string; /** * Optional. Not localizable. The GUID identifier of a SharePoint or OneDrive web. */ web_id?: string; /** * Optional. Not localizable. The GUID identifier of a SharePoint or OneDrive list. */ list_id?: string; /** * Optional. Not localizable. The GUID identifier of a SharePoint or OneDrive item. */ unique_id?: string; /** * Boolean value indicating whether to enable searching associated sites. This value is only * applicable when the site_id value references a SharePoint HubSite. */ search_associated_sites?: boolean; } /** * Represents the URL of a SharePoint or OneDrive resource. */ export interface ItemsByURLElement { /** * Optional. Not localizable. An absolute URL to a SharePoint or OneDrive resource. */ url?: string; } export interface KnowledgeSourceElement { /** * A unique identifier for the host in Dataverse. */ host_name?: string; /** * A unique identifier that defines the configuration for how the copilot agent interacts * with Dataverse knowledge. */ skill?: string; /** * An array of table_name objects which contain table names in DataVerse to scope the * knowledge of the Declarative Agent */ tables?: TableElement[]; [property: string]: any; } export interface TableElement { /** * A string to represent the table name. */ table_name?: string; [property: string]: any; } export type Name = "WebSearch" | "CodeInterpreter" | "OneDriveAndSharePoint" | "GraphConnectors" | "GraphicArt" | "TeamsMessages" | "Dataverse" | "Email" | "People"; /** * An object that identifies a site used to constrain the content accessible to the * declarative agent. */ export interface SiteElement { /** * An absolute URL to a site. */ url: string; [property: string]: any; } /** * Identifies a Teams channel, team or meeting chat */ export interface URLElement { /** * A string that contains a well formed, Teams url to a Teams channel, team or meeting chat * (join url) */ url: string; [property: string]: any; } /** * Contains hints that are displayed to the user to demonstrate how they can get started * using the declarative agent. */ export interface ConversationStarterElement { /** * Required. Localizable. A suggestion that the user can use to obtain the desired result * from the DC. It MUST contain at least one nonwhitespace character. */ text: string; /** * Optional. Localizable. A unique title for the conversation starter. It MUST contain at * least one nonwhitespace character. */ title?: string; [property: string]: any; } export declare class Convert { static toDeclarativeAgentManifestV1D3(json: string): DeclarativeAgentManifestV1D3; static declarativeAgentManifestV1D3ToJson(value: DeclarativeAgentManifestV1D3): string; }