/** * This file contains only generated model types and their (de)serializers. * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. */ /** model interface Agent */ export interface Agent { /** The object type, which is always 'agent'. */ object: "agent"; /** The unique identifier of the agent. */ id: string; /** The name of the agent. */ name: string; /** The latest version of the agent. */ versions: { latest: AgentVersion; }; /** The endpoint configuration for the agent */ agent_endpoint?: AgentEndpoint; /** The instance identity of the agent */ readonly instance_identity?: AgentIdentity; /** The blueprint for the agent */ readonly blueprint?: AgentIdentity; /** The blueprint for the agent */ readonly blueprint_reference?: AgentBlueprintReferenceUnion; agent_card?: AgentCard; } export declare function agentDeserializer(item: any): Agent; /** * Helper interface for agent version references. */ export interface _AgentVersions { latest: AgentVersion; } export declare function _agentVersionsDeserializer(item: any): _AgentVersions; /** * Represents a specific version of an agent. * Includes metadata, versioning, creation time, and agent definition. */ export interface AgentVersion { /** * Set of 16 key-value pairs that can be attached to an object. This can be * useful for storing additional information about the object in a structured * format, and querying for objects via API or the dashboard. * * Keys are strings with a maximum length of 64 characters. Values are strings * with a maximum length of 512 characters. */ metadata: Record; /** The object type, which is always 'agent.version'. */ object: "agent.version"; /** The unique identifier of the agent version. */ id: string; /** The name of the agent. Name can be used to retrieve/update/delete the agent. */ name: string; /** The version identifier of the agent. Agents are immutable and every update creates a new version while keeping the name same. */ version: string; /** A human-readable description of the agent. */ description?: string; /** The Unix timestamp (seconds) when the agent was created. */ created_at: Date; /** The definition of the agent. */ definition: AgentDefinitionUnion; /** The instance identity of the agent */ readonly instance_identity?: AgentIdentity; /** The blueprint for the agent */ readonly blueprint?: AgentIdentity; /** The blueprint for the agent */ readonly blueprint_reference?: AgentBlueprintReferenceUnion; /** The current status of the agent version. */ status?: "creating" | "active" | "failed" | "deleting" | "deleted"; /** The unique GUID identifier of the agent. */ readonly agent_guid?: string; } export declare function agentVersionDeserializer(item: any): AgentVersion; /** * Base definition interface for agents. * Contains the agent kind and optional RAI configuration. */ export interface AgentDefinition { /** The kind of agent. */ kind: AgentKind; /** Configuration for Responsible AI (RAI) content filtering and safety features. */ rai_config?: RaiConfig; } export declare function agentDefinitionSerializer(item: AgentDefinition): any; export declare function agentDefinitionDeserializer(item: any): AgentDefinition; /** * Union type for all agent definition types. * Supports workflow, hosted, container app, and prompt agents. */ export type AgentDefinitionUnion = HostedAgentDefinition | PromptAgentDefinition | WorkflowAgentDefinition | AgentDefinition; export declare function agentDefinitionUnionSerializer(item: AgentDefinitionUnion): any; export declare function agentDefinitionUnionDeserializer(item: any): AgentDefinitionUnion; /** * Defines the type/kind of agent. * Determines which agent definition structure is used. */ export type AgentKind = "prompt" | "hosted" | "workflow"; /** Configuration for Responsible AI (RAI) content filtering and safety features. */ export interface RaiConfig { /** The name of the RAI policy to apply. */ rai_policy_name: string; } export declare function raiConfigSerializer(item: RaiConfig): any; export declare function raiConfigDeserializer(item: any): RaiConfig; /** The hosted agent definition. */ export interface HostedAgentDefinition extends AgentDefinition { kind: "hosted"; /** * An array of tools the hosted agent's model may call while generating a response. You * can specify which tool to use by setting the `tool_choice` parameter. */ tools?: ToolUnion[]; /** The protocols that the agent supports for ingress communication of the containers. */ container_protocol_versions?: ProtocolVersionRecord[]; /** The CPU configuration for the hosted agent. */ cpu: string; /** The memory configuration for the hosted agent. */ memory: string; /** Environment variables to set in the hosted agent container. */ environment_variables?: Record; /** The image ID for the agent, applicable to image-based hosted agents. */ image?: string; /** Container-based deployment configuration. Provide this for image-based deployments. Mutually exclusive with code_configuration — the service validates that exactly one is set. */ container_configuration?: ContainerConfiguration; /** The protocols that the agent supports for ingress communication. */ protocol_versions?: ProtocolVersionRecord[]; /** Code-based deployment configuration. Provide this for code-based deployments. Mutually exclusive with container_configuration — the service validates that exactly one is set. */ code_configuration?: CodeConfiguration; } export declare function hostedAgentDefinitionSerializer(item: HostedAgentDefinition): any; export declare function hostedAgentDefinitionDeserializer(item: any): HostedAgentDefinition; export declare function toolUnionArraySerializer(result: Array): any[]; export declare function toolUnionArrayDeserializer(result: Array): any[]; /** A tool that can be used to generate a response. */ export interface Tool { /** The tool type identifier. */ type: ToolType; } export declare function toolSerializer(item: Tool): any; export declare function toolDeserializer(item: any): Tool; /** Alias for ToolUnion */ export type ToolUnion = BingGroundingTool | MicrosoftFabricPreviewTool | SharepointPreviewTool | AzureAISearchTool | OpenApiTool | BingCustomSearchPreviewTool | BrowserAutomationPreviewTool | AzureFunctionTool | CaptureStructuredOutputsTool | A2APreviewTool | WorkIQPreviewTool | MemorySearchPreviewTool | CodeInterpreterTool | FunctionTool | FileSearchTool | ComputerUsePreviewTool | WebSearchTool | MCPTool | ImageGenTool | LocalShellToolParam | FunctionShellToolParam | CustomToolParam | WebSearchPreviewTool | ApplyPatchToolParam | ComputerTool | NamespaceToolParam | ToolSearchToolParam | Tool; export declare function toolUnionSerializer(item: ToolUnion): any; export declare function toolUnionDeserializer(item: any): ToolUnion; /** Type of ToolType */ export type ToolType = "function" | "file_search" | "computer" | "computer_use_preview" | "web_search" | "mcp" | "code_interpreter" | "image_generation" | "local_shell" | "shell" | "custom" | "namespace" | "tool_search" | "web_search_preview" | "apply_patch" | "a2a_preview" | "bing_custom_search_preview" | "browser_automation_preview" | "fabric_dataagent_preview" | "sharepoint_grounding_preview" | "memory_search_preview" | "work_iq_preview" | "azure_ai_search" | "azure_function" | "bing_grounding" | "capture_structured_outputs" | "openapi"; /** The input definition information for a bing grounding search tool as used to configure an agent. */ export interface BingGroundingTool extends Tool { /** The object type, which is always 'bing_grounding'. */ type: "bing_grounding"; /** The bing grounding search tool parameters. */ bing_grounding: BingGroundingSearchToolParameters; } export declare function bingGroundingToolSerializer(item: BingGroundingTool): any; export declare function bingGroundingToolDeserializer(item: any): BingGroundingTool; /** The bing grounding search tool parameters. */ export interface BingGroundingSearchToolParameters { /** * The search configurations attached to this tool. There can be a maximum of 1 * search configuration resource attached to the tool. */ search_configurations: BingGroundingSearchConfiguration[]; } export declare function bingGroundingSearchToolParametersSerializer(item: BingGroundingSearchToolParameters): any; export declare function bingGroundingSearchToolParametersDeserializer(item: any): BingGroundingSearchToolParameters; export declare function bingGroundingSearchConfigurationArraySerializer(result: Array): any[]; export declare function bingGroundingSearchConfigurationArrayDeserializer(result: Array): any[]; /** Search configuration for Bing Grounding */ export interface BingGroundingSearchConfiguration { /** Project connection id for grounding with bing search */ project_connection_id: string; /** The market where the results come from. */ market?: string; /** The language to use for user interface strings when calling Bing API. */ set_lang?: string; /** The number of search results to return in the bing api response */ count?: number; /** Filter search results by a specific time range. See [accepted values here](https://learn.microsoft.com/bing/search-apis/bing-web-search/reference/query-parameters). */ freshness?: string; } export declare function bingGroundingSearchConfigurationSerializer(item: BingGroundingSearchConfiguration): any; export declare function bingGroundingSearchConfigurationDeserializer(item: any): BingGroundingSearchConfiguration; /** The input definition information for a Microsoft Fabric tool as used to configure an agent. */ export interface MicrosoftFabricPreviewTool extends Tool { /** The object type, which is always 'fabric_dataagent_preview'. */ type: "fabric_dataagent_preview"; /** The fabric data agent tool parameters. */ fabric_dataagent_preview: FabricDataAgentToolParameters; } export declare function microsoftFabricPreviewToolSerializer(item: MicrosoftFabricPreviewTool): any; export declare function microsoftFabricPreviewToolDeserializer(item: any): MicrosoftFabricPreviewTool; /** The fabric data agent tool parameters. */ export interface FabricDataAgentToolParameters { /** * The project connections attached to this tool. There can be a maximum of 1 connection * resource attached to the tool. */ project_connections?: ToolProjectConnection[]; } export declare function fabricDataAgentToolParametersSerializer(item: FabricDataAgentToolParameters): any; export declare function fabricDataAgentToolParametersDeserializer(item: any): FabricDataAgentToolParameters; export declare function toolProjectConnectionArraySerializer(result: Array): any[]; export declare function toolProjectConnectionArrayDeserializer(result: Array): any[]; /** A project connection resource. */ export interface ToolProjectConnection { /** A project connection in a ToolProjectConnectionList attached to this tool. */ project_connection_id: string; } export declare function toolProjectConnectionSerializer(item: ToolProjectConnection): any; export declare function toolProjectConnectionDeserializer(item: any): ToolProjectConnection; /** The input definition information for a sharepoint tool as used to configure an agent. */ export interface SharepointPreviewTool extends Tool { /** The object type, which is always 'sharepoint_grounding_preview'. */ type: "sharepoint_grounding_preview"; /** The sharepoint grounding tool parameters. */ sharepoint_grounding_preview: SharepointGroundingToolParameters; } export declare function sharepointPreviewToolSerializer(item: SharepointPreviewTool): any; export declare function sharepointPreviewToolDeserializer(item: any): SharepointPreviewTool; /** The sharepoint grounding tool parameters. */ export interface SharepointGroundingToolParameters { /** * The project connections attached to this tool. There can be a maximum of 1 connection * resource attached to the tool. */ project_connections?: ToolProjectConnection[]; } export declare function sharepointGroundingToolParametersSerializer(item: SharepointGroundingToolParameters): any; export declare function sharepointGroundingToolParametersDeserializer(item: any): SharepointGroundingToolParameters; /** The input definition information for an Azure AI search tool as used to configure an agent. */ export interface AzureAISearchTool extends Tool { /** The object type, which is always 'azure_ai_search'. */ type: "azure_ai_search"; /** The azure ai search index resource. */ azure_ai_search: AzureAISearchToolResource; } export declare function azureAISearchToolSerializer(item: AzureAISearchTool): any; export declare function azureAISearchToolDeserializer(item: any): AzureAISearchTool; /** A set of index resources used by the `azure_ai_search` tool. */ export interface AzureAISearchToolResource { /** * The indices attached to this agent. There can be a maximum of 1 index * resource attached to the agent. */ indexes: AISearchIndexResource[]; } export declare function azureAISearchToolResourceSerializer(item: AzureAISearchToolResource): any; export declare function azureAISearchToolResourceDeserializer(item: any): AzureAISearchToolResource; export declare function aiSearchIndexResourceArraySerializer(result: Array): any[]; export declare function aiSearchIndexResourceArrayDeserializer(result: Array): any[]; /** A AI Search Index resource. */ export interface AISearchIndexResource { /** An index connection ID in an IndexResource attached to this agent. */ project_connection_id?: string; /** The name of an index in an IndexResource attached to this agent. */ index_name?: string; /** Type of query in an AIIndexResource attached to this agent. */ query_type?: AzureAISearchQueryType; /** Number of documents to retrieve from search and present to the model. */ top_k?: number; /** filter string for search resource. [Learn more here](https://learn.microsoft.com/azure/search/search-filters). */ filter?: string; /** Index asset id for search resource. */ index_asset_id?: string; } export declare function aiSearchIndexResourceSerializer(item: AISearchIndexResource): any; export declare function aiSearchIndexResourceDeserializer(item: any): AISearchIndexResource; /** Available query types for Azure AI Search tool. */ export type AzureAISearchQueryType = "simple" | "semantic" | "vector" | "vector_simple_hybrid" | "vector_semantic_hybrid"; /** The input definition information for an OpenAPI tool as used to configure an agent. */ export interface OpenApiTool extends Tool { /** The object type, which is always 'openapi'. */ type: "openapi"; /** The openapi function definition. */ openapi: OpenApiFunctionDefinition; } export declare function openApiToolSerializer(item: OpenApiTool): any; export declare function openApiToolDeserializer(item: any): OpenApiTool; /** The input definition information for an openapi function. */ export interface OpenApiFunctionDefinition { /** The name of the function to be called. */ name: string; /** A description of what the function does, used by the model to choose when and how to call the function. */ description?: string; /** The openapi function shape, described as a JSON Schema object. */ spec: unknown; /** Open API authentication details */ auth: OpenApiAuthDetailsUnion; /** List of OpenAPI spec parameters that will use user-provided defaults */ default_params?: string[]; /** List of function definitions used by OpenApi tool */ readonly functions?: { name: string; description?: string; parameters: Record; }[]; } export declare function openApiFunctionDefinitionSerializer(item: OpenApiFunctionDefinition): any; export declare function openApiFunctionDefinitionDeserializer(item: any): OpenApiFunctionDefinition; /** authentication details for OpenApiFunctionDefinition */ export interface OpenApiAuthDetails { /** The type of authentication, must be anonymous/project_connection/managed_identity */ /** The discriminator possible values: anonymous, project_connection, managed_identity */ type: OpenApiAuthType; } export declare function openApiAuthDetailsSerializer(item: OpenApiAuthDetails): any; export declare function openApiAuthDetailsDeserializer(item: any): OpenApiAuthDetails; /** Alias for OpenApiAuthDetailsUnion */ export type OpenApiAuthDetailsUnion = OpenApiAnonymousAuthDetails | OpenApiProjectConnectionAuthDetails | OpenApiManagedAuthDetails | OpenApiAuthDetails; export declare function openApiAuthDetailsUnionSerializer(item: OpenApiAuthDetailsUnion): any; export declare function openApiAuthDetailsUnionDeserializer(item: any): OpenApiAuthDetailsUnion; /** * Authentication type for OpenApi endpoint. Allowed types are: * - Anonymous (no authentication required) * - Project Connection (requires project_connection_id to endpoint, as setup in AI Foundry) * - Managed_Identity (requires audience for identity based auth) */ export type OpenApiAuthType = "anonymous" | "project_connection" | "managed_identity"; /** Security details for OpenApi anonymous authentication */ export interface OpenApiAnonymousAuthDetails extends OpenApiAuthDetails { /** The object type, which is always 'anonymous'. */ type: "anonymous"; } export declare function openApiAnonymousAuthDetailsSerializer(item: OpenApiAnonymousAuthDetails): any; export declare function openApiAnonymousAuthDetailsDeserializer(item: any): OpenApiAnonymousAuthDetails; /** Security details for OpenApi project connection authentication */ export interface OpenApiProjectConnectionAuthDetails extends OpenApiAuthDetails { /** The object type, which is always 'project_connection'. */ type: "project_connection"; /** Project connection auth security details */ security_scheme: OpenApiProjectConnectionSecurityScheme; } export declare function openApiProjectConnectionAuthDetailsSerializer(item: OpenApiProjectConnectionAuthDetails): any; export declare function openApiProjectConnectionAuthDetailsDeserializer(item: any): OpenApiProjectConnectionAuthDetails; /** Security scheme for OpenApi managed_identity authentication */ export interface OpenApiProjectConnectionSecurityScheme { /** Project connection id for Project Connection auth type */ project_connection_id: string; } export declare function openApiProjectConnectionSecuritySchemeSerializer(item: OpenApiProjectConnectionSecurityScheme): any; export declare function openApiProjectConnectionSecuritySchemeDeserializer(item: any): OpenApiProjectConnectionSecurityScheme; /** Security details for OpenApi managed_identity authentication */ export interface OpenApiManagedAuthDetails extends OpenApiAuthDetails { /** The object type, which is always 'managed_identity'. */ type: "managed_identity"; /** Connection auth security details */ security_scheme: OpenApiManagedSecurityScheme; } export declare function openApiManagedAuthDetailsSerializer(item: OpenApiManagedAuthDetails): any; export declare function openApiManagedAuthDetailsDeserializer(item: any): OpenApiManagedAuthDetails; /** Security scheme for OpenApi managed_identity authentication */ export interface OpenApiManagedSecurityScheme { /** Authentication scope for managed_identity auth type */ audience: string; } export declare function openApiManagedSecuritySchemeSerializer(item: OpenApiManagedSecurityScheme): any; export declare function openApiManagedSecuritySchemeDeserializer(item: any): OpenApiManagedSecurityScheme; export declare function _openApiFunctionDefinitionFunctionArrayDeserializer(result: Array<_OpenApiFunctionDefinitionFunction>): any[]; /** model interface _OpenApiFunctionDefinitionFunction */ export interface _OpenApiFunctionDefinitionFunction { /** The name of the function to be called. */ name: string; /** A description of what the function does, used by the model to choose when and how to call the function. */ description?: string; /** The parameters the functions accepts, described as a JSON Schema object. */ parameters: Record; } export declare function _openApiFunctionDefinitionFunctionDeserializer(item: any): _OpenApiFunctionDefinitionFunction; /** The input definition information for a Bing custom search tool as used to configure an agent. */ export interface BingCustomSearchPreviewTool extends Tool { /** The object type, which is always 'bing_custom_search_preview'. */ type: "bing_custom_search_preview"; /** The bing custom search tool parameters. */ bing_custom_search_preview: BingCustomSearchToolParameters; } export declare function bingCustomSearchPreviewToolSerializer(item: BingCustomSearchPreviewTool): any; export declare function bingCustomSearchPreviewToolDeserializer(item: any): BingCustomSearchPreviewTool; /** The bing custom search tool parameters. */ export interface BingCustomSearchToolParameters { /** * The project connections attached to this tool. There can be a maximum of 1 connection * resource attached to the tool. */ search_configurations: BingCustomSearchConfiguration[]; } export declare function bingCustomSearchToolParametersSerializer(item: BingCustomSearchToolParameters): any; export declare function bingCustomSearchToolParametersDeserializer(item: any): BingCustomSearchToolParameters; export declare function bingCustomSearchConfigurationArraySerializer(result: Array): any[]; export declare function bingCustomSearchConfigurationArrayDeserializer(result: Array): any[]; /** A bing custom search configuration. */ export interface BingCustomSearchConfiguration { /** Project connection id for grounding with bing search */ project_connection_id: string; /** Name of the custom configuration instance given to config. */ instance_name: string; /** The market where the results come from. */ market?: string; /** The language to use for user interface strings when calling Bing API. */ set_lang?: string; /** The number of search results to return in the bing api response */ count?: number; /** Filter search results by a specific time range. See [accepted values here](https://learn.microsoft.com/bing/search-apis/bing-web-search/reference/query-parameters). */ freshness?: string; } export declare function bingCustomSearchConfigurationSerializer(item: BingCustomSearchConfiguration): any; export declare function bingCustomSearchConfigurationDeserializer(item: any): BingCustomSearchConfiguration; /** The input definition information for a Browser Automation Tool, as used to configure an Agent. */ export interface BrowserAutomationPreviewTool extends Tool { /** The object type, which is always 'browser_automation_preview'. */ type: "browser_automation_preview"; /** The Browser Automation Tool parameters. */ browser_automation_preview: BrowserAutomationToolParameters; } export declare function browserAutomationPreviewToolSerializer(item: BrowserAutomationPreviewTool): any; export declare function browserAutomationPreviewToolDeserializer(item: any): BrowserAutomationPreviewTool; /** Definition of input parameters for the Browser Automation Tool. */ export interface BrowserAutomationToolParameters { /** The project connection parameters associated with the Browser Automation Tool. */ connection: BrowserAutomationToolConnectionParameters; } export declare function browserAutomationToolParametersSerializer(item: BrowserAutomationToolParameters): any; export declare function browserAutomationToolParametersDeserializer(item: any): BrowserAutomationToolParameters; /** Definition of input parameters for the connection used by the Browser Automation Tool. */ export interface BrowserAutomationToolConnectionParameters { /** The ID of the project connection to your Azure Playwright resource. */ project_connection_id: string; } export declare function browserAutomationToolConnectionParametersSerializer(item: BrowserAutomationToolConnectionParameters): any; export declare function browserAutomationToolConnectionParametersDeserializer(item: any): BrowserAutomationToolConnectionParameters; /** The input definition information for an Azure Function Tool, as used to configure an Agent. */ export interface AzureFunctionTool extends Tool { /** The object type, which is always 'browser_automation'. */ type: "azure_function"; /** The Azure Function Tool definition. */ azure_function: AzureFunctionDefinition; } export declare function azureFunctionToolSerializer(item: AzureFunctionTool): any; export declare function azureFunctionToolDeserializer(item: any): AzureFunctionTool; /** The definition of Azure function. */ export interface AzureFunctionDefinition { /** The definition of azure function and its parameters. */ function: { name: string; description?: string; parameters: Record; }; /** Input storage queue. The queue storage trigger runs a function as messages are added to it. */ input_binding: AzureFunctionBinding; /** Output storage queue. The function writes output to this queue when the input items are processed. */ output_binding: AzureFunctionBinding; } export declare function azureFunctionDefinitionSerializer(item: AzureFunctionDefinition): any; export declare function azureFunctionDefinitionDeserializer(item: any): AzureFunctionDefinition; /** model interface _AzureFunctionDefinitionFunction */ export interface _AzureFunctionDefinitionFunction { /** The name of the function to be called. */ name: string; /** A description of what the function does, used by the model to choose when and how to call the function. */ description?: string; /** The parameters the functions accepts, described as a JSON Schema object. */ parameters: Record; } export declare function _azureFunctionDefinitionFunctionSerializer(item: _AzureFunctionDefinitionFunction): any; export declare function _azureFunctionDefinitionFunctionDeserializer(item: any): _AzureFunctionDefinitionFunction; /** The structure for keeping storage queue name and URI. */ export interface AzureFunctionBinding { /** The type of binding, which is always 'storage_queue'. */ type: "storage_queue"; /** Storage queue. */ storage_queue: AzureFunctionStorageQueue; } export declare function azureFunctionBindingSerializer(item: AzureFunctionBinding): any; export declare function azureFunctionBindingDeserializer(item: any): AzureFunctionBinding; /** The structure for keeping storage queue name and URI. */ export interface AzureFunctionStorageQueue { /** URI to the Azure Storage Queue service allowing you to manipulate a queue. */ queue_service_endpoint: string; /** The name of an Azure function storage queue. */ queue_name: string; } export declare function azureFunctionStorageQueueSerializer(item: AzureFunctionStorageQueue): any; export declare function azureFunctionStorageQueueDeserializer(item: any): AzureFunctionStorageQueue; /** A tool for capturing structured outputs */ export interface CaptureStructuredOutputsTool extends Tool { /** The type of the tool. Always `capture_structured_outputs`. */ type: "capture_structured_outputs"; /** Optional user-defined name for this tool or configuration. */ name?: string; /** Optional user-defined description for this tool or configuration. */ description?: string; /** The structured outputs to capture from the model. */ outputs: StructuredOutputDefinition; } export declare function captureStructuredOutputsToolSerializer(item: CaptureStructuredOutputsTool): any; export declare function captureStructuredOutputsToolDeserializer(item: any): CaptureStructuredOutputsTool; /** A structured output that can be produced by the agent. */ export interface StructuredOutputDefinition { /** The name of the structured output. */ name: string; /** A description of the output to emit. Used by the model to determine when to emit the output. */ description: string; /** The JSON schema for the structured output. */ schema: Record; /** Whether to enforce strict validation. Default `true`. */ strict: boolean; } export declare function structuredOutputDefinitionSerializer(item: StructuredOutputDefinition): any; export declare function structuredOutputDefinitionDeserializer(item: any): StructuredOutputDefinition; /** An agent implementing the A2A protocol. */ export interface A2APreviewTool extends Tool { /** The type of the tool. Always `"a2a_preview`. */ type: "a2a_preview"; /** Base URL of the agent. */ base_url?: string; /** * The path to the agent card relative to the `base_url`. * If not provided, defaults to `/.well-known/agent-card.json` */ agent_card_path?: string; /** * The connection ID in the project for the A2A server. * The connection stores authentication and other connection details needed to connect to the A2A server. */ project_connection_id?: string; } export declare function a2APreviewToolSerializer(item: A2APreviewTool): any; export declare function a2APreviewToolDeserializer(item: any): A2APreviewTool; /** A WorkIQ server-side tool. */ export interface WorkIQPreviewTool extends Tool { /** The object type, which is always 'work_iq_preview'. */ type: "work_iq_preview"; /** Optional user-defined name for this tool or configuration. */ name?: string; /** Optional user-defined description for this tool or configuration. */ description?: string; /** The WorkIQ tool parameters. */ work_iq_preview: WorkIQPreviewToolParameters; } export declare function workIQPreviewToolSerializer(item: WorkIQPreviewTool): any; export declare function workIQPreviewToolDeserializer(item: any): WorkIQPreviewTool; /** The WorkIQ tool parameters. */ export interface WorkIQPreviewToolParameters { /** The ID of the WorkIQ project connection. */ project_connection_id: string; } export declare function workIQPreviewToolParametersSerializer(item: WorkIQPreviewToolParameters): any; export declare function workIQPreviewToolParametersDeserializer(item: any): WorkIQPreviewToolParameters; /** A tool for integrating memories into the agent. */ export interface MemorySearchPreviewTool extends Tool { /** The type of the tool. Always `memory_search_preview`. */ type: "memory_search_preview"; /** The name of the memory store to use. */ memory_store_name: string; /** * The namespace used to group and isolate memories, such as a user ID. * Limits which memories can be retrieved or updated. * Use special variable `{{$userId}}` to scope memories to the current signed-in user. */ scope: string; /** Options for searching the memory store. */ search_options?: MemorySearchOptions; /** Time to wait before updating memories after inactivity (seconds). Default 300. */ update_delay?: number; } export declare function memorySearchPreviewToolSerializer(item: MemorySearchPreviewTool): any; export declare function memorySearchPreviewToolDeserializer(item: any): MemorySearchPreviewTool; /** Memory search options. */ export interface MemorySearchOptions { /** Maximum number of memory items to return. */ max_memories?: number; } export declare function memorySearchOptionsSerializer(item: MemorySearchOptions): any; export declare function memorySearchOptionsDeserializer(item: any): MemorySearchOptions; /** A tool that runs Python code to help generate a response to a prompt. */ export interface CodeInterpreterTool extends Tool { /** The type of the code interpreter tool. Always `code_interpreter`. */ type: "code_interpreter"; /** Optional user-defined name for this tool or configuration. */ name?: string; /** Optional user-defined description for this tool or configuration. */ description?: string; /** * The code interpreter container. Can be a container ID or an object that * specifies uploaded file IDs to make available to your code, along with an * optional `memory_limit` setting. * If not provided, the service assumes auto. */ container?: string | AutoCodeInterpreterToolParam; } export declare function codeInterpreterToolSerializer(item: CodeInterpreterTool): any; export declare function codeInterpreterToolDeserializer(item: any): CodeInterpreterTool; /** Alias for _CodeInterpreterToolContainer */ export type _CodeInterpreterToolContainer = string | AutoCodeInterpreterToolParam; export declare function _codeInterpreterToolContainerSerializer(item: _CodeInterpreterToolContainer): any; export declare function _codeInterpreterToolContainerDeserializer(item: any): _CodeInterpreterToolContainer; /** Configuration for a code interpreter container. Optionally specify the IDs of the files to run the code on. */ export interface AutoCodeInterpreterToolParam { /** Always `auto`. */ type: "auto"; /** An optional list of uploaded files to make available to your code. */ file_ids?: string[]; /** The memory limit for the code interpreter container, in bytes. */ memory_limit?: ContainerMemoryLimit; /** The network access policy for the code interpreter container. */ network_policy?: ContainerNetworkPolicyParamUnion; } export declare function autoCodeInterpreterToolParamSerializer(item: AutoCodeInterpreterToolParam): any; export declare function autoCodeInterpreterToolParamDeserializer(item: any): AutoCodeInterpreterToolParam; /** Type of ContainerMemoryLimit */ export type ContainerMemoryLimit = "1g" | "4g" | "16g" | "64g"; /** Network access policy for the container. */ export interface ContainerNetworkPolicyParam { /** The network policy type. */ type: ContainerNetworkPolicyParamType; } export declare function containerNetworkPolicyParamSerializer(item: ContainerNetworkPolicyParam): any; export declare function containerNetworkPolicyParamDeserializer(item: any): ContainerNetworkPolicyParam; /** Alias for ContainerNetworkPolicyParamUnion */ export type ContainerNetworkPolicyParamUnion = ContainerNetworkPolicyDisabledParam | ContainerNetworkPolicyAllowlistParam | ContainerNetworkPolicyParam; export declare function containerNetworkPolicyParamUnionSerializer(item: ContainerNetworkPolicyParamUnion): any; export declare function containerNetworkPolicyParamUnionDeserializer(item: any): ContainerNetworkPolicyParamUnion; /** Type of ContainerNetworkPolicyParamType */ export type ContainerNetworkPolicyParamType = "disabled" | "allowlist"; /** model interface ContainerNetworkPolicyDisabledParam */ export interface ContainerNetworkPolicyDisabledParam extends ContainerNetworkPolicyParam { /** Disable outbound network access. Always `disabled`. */ type: "disabled"; } export declare function containerNetworkPolicyDisabledParamSerializer(item: ContainerNetworkPolicyDisabledParam): any; export declare function containerNetworkPolicyDisabledParamDeserializer(item: any): ContainerNetworkPolicyDisabledParam; /** model interface ContainerNetworkPolicyAllowlistParam */ export interface ContainerNetworkPolicyAllowlistParam extends ContainerNetworkPolicyParam { /** Allow outbound network access only to specified domains. Always `allowlist`. */ type: "allowlist"; /** A list of allowed domains when type is `allowlist`. */ allowed_domains: string[]; /** Optional domain-scoped secrets for allowlisted domains. */ domain_secrets?: ContainerNetworkPolicyDomainSecretParam[]; } export declare function containerNetworkPolicyAllowlistParamSerializer(item: ContainerNetworkPolicyAllowlistParam): any; export declare function containerNetworkPolicyAllowlistParamDeserializer(item: any): ContainerNetworkPolicyAllowlistParam; export declare function containerNetworkPolicyDomainSecretParamArraySerializer(result: Array): any[]; export declare function containerNetworkPolicyDomainSecretParamArrayDeserializer(result: Array): any[]; /** model interface ContainerNetworkPolicyDomainSecretParam */ export interface ContainerNetworkPolicyDomainSecretParam { /** The domain associated with the secret. */ domain: string; /** The name of the secret to inject for the domain. */ name: string; /** The secret value to inject for the domain. */ value: string; } export declare function containerNetworkPolicyDomainSecretParamSerializer(item: ContainerNetworkPolicyDomainSecretParam): any; export declare function containerNetworkPolicyDomainSecretParamDeserializer(item: any): ContainerNetworkPolicyDomainSecretParam; /** Defines a function in your own code the model can choose to call. Learn more about [function calling](https://platform.openai.com/docs/guides/function-calling). */ export interface FunctionTool extends Tool { /** The type of the function tool. Always `function`. */ type: "function"; /** The name of the function to call. */ name: string; /** A description of the function tool. */ description?: string; /** The parameters schema for the function. */ parameters: Record; /** Whether the function arguments must strictly match the parameters schema. */ strict: boolean; /** Whether this function is deferred and loaded via tool search. */ defer_loading?: boolean; } export declare function functionToolSerializer(item: FunctionTool): any; export declare function functionToolDeserializer(item: any): FunctionTool; /** A tool that searches for relevant content from uploaded files. Learn more about the [file search tool](https://platform.openai.com/docs/guides/tools-file-search). */ export interface FileSearchTool extends Tool { /** The type of the file search tool. Always `file_search`. */ type: "file_search"; /** The IDs of the vector stores to search. */ vector_store_ids: string[]; /** The maximum number of results to return. This number should be between 1 and 50 inclusive. */ max_num_results?: number; /** Ranking options for search. */ ranking_options?: RankingOptions; /** Filters to apply to the file search. */ filters?: Filters; /** Optional user-defined name for this tool or configuration. */ name?: string; /** Optional user-defined description for this tool or configuration. */ description?: string; } export declare function fileSearchToolSerializer(item: FileSearchTool): any; export declare function fileSearchToolDeserializer(item: any): FileSearchTool; /** model interface RankingOptions */ export interface RankingOptions { /** The ranker to use for the file search. */ ranker?: RankerVersionType; /** The score threshold for the file search, a number between 0 and 1. Numbers closer to 1 will attempt to return only the most relevant results, but may return fewer results. */ score_threshold?: number; /** Weights that control how reciprocal rank fusion balances semantic embedding matches versus sparse keyword matches when hybrid search is enabled. */ hybrid_search?: HybridSearchOptions; } export declare function rankingOptionsSerializer(item: RankingOptions): any; export declare function rankingOptionsDeserializer(item: any): RankingOptions; /** Type of RankerVersionType */ export type RankerVersionType = "auto" | "default-2024-11-15"; /** model interface HybridSearchOptions */ export interface HybridSearchOptions { /** The weight of the embedding in the reciprocal ranking fusion. */ embedding_weight: number; /** The weight of the text in the reciprocal ranking fusion. */ text_weight: number; } export declare function hybridSearchOptionsSerializer(item: HybridSearchOptions): any; export declare function hybridSearchOptionsDeserializer(item: any): HybridSearchOptions; /** Alias for Filters */ export type Filters = ComparisonFilter | CompoundFilter; export declare function filtersSerializer(item: Filters): any; export declare function filtersDeserializer(item: any): Filters; /** A filter used to compare a specified attribute key to a given value using a defined comparison operation. */ export interface ComparisonFilter { /** * Specifies the comparison operator: `eq`, `ne`, `gt`, `gte`, `lt`, `lte`, `in`, `nin`. * - `eq`: equals * - `ne`: not equal * - `gt`: greater than * - `gte`: greater than or equal * - `lt`: less than * - `lte`: less than or equal * - `in`: in * - `nin`: not in */ type: "eq" | "ne" | "gt" | "gte" | "lt" | "lte" | "in" | "nin"; /** The key to compare against the value. */ key: string; /** The value to compare against the attribute key; supports string, number, or boolean types. */ value: string | number | boolean | ComparisonFilterValueItems[]; } export declare function comparisonFilterSerializer(item: ComparisonFilter): any; export declare function comparisonFilterDeserializer(item: any): ComparisonFilter; /** Alias for _ComparisonFilterValue */ export type _ComparisonFilterValue = string | number | boolean | ComparisonFilterValueItems[]; export declare function _comparisonFilterValueSerializer(item: _ComparisonFilterValue): any; export declare function _comparisonFilterValueDeserializer(item: any): _ComparisonFilterValue; export declare function comparisonFilterValueItemsArraySerializer(result: Array): any[]; export declare function comparisonFilterValueItemsArrayDeserializer(result: Array): any[]; /** Alias for ComparisonFilterValueItems */ export type ComparisonFilterValueItems = string | number; export declare function comparisonFilterValueItemsSerializer(item: ComparisonFilterValueItems): any; export declare function comparisonFilterValueItemsDeserializer(item: any): ComparisonFilterValueItems; /** Combine multiple filters using `and` or `or`. */ export interface CompoundFilter { /** Type of operation: `and` or `or`. */ type: "and" | "or"; /** Array of filters to combine. Items can be `ComparisonFilter` or `CompoundFilter`. */ filters: (ComparisonFilter | CompoundFilter)[]; } export declare function compoundFilterSerializer(item: CompoundFilter): any; export declare function compoundFilterDeserializer(item: any): CompoundFilter; export declare function _compoundFilterFilterArraySerializer(result: Array<_CompoundFilterFilter>): any[]; export declare function _compoundFilterFilterArrayDeserializer(result: Array<_CompoundFilterFilter>): any[]; /** Alias for _CompoundFilterFilter */ export type _CompoundFilterFilter = ComparisonFilter | CompoundFilter; export declare function _compoundFilterFilterSerializer(item: _CompoundFilterFilter): any; export declare function _compoundFilterFilterDeserializer(item: any): _CompoundFilterFilter; /** A tool that controls a virtual computer. Learn more about the [computer tool](https://platform.openai.com/docs/guides/tools-computer-use). */ export interface ComputerUsePreviewTool extends Tool { /** The type of the computer use tool. Always `computer_use_preview`. */ type: "computer_use_preview"; /** The type of computer environment to control. */ environment: ComputerEnvironment; /** The width of the computer display. */ display_width: number; /** The height of the computer display. */ display_height: number; } export declare function computerUsePreviewToolSerializer(item: ComputerUsePreviewTool): any; export declare function computerUsePreviewToolDeserializer(item: any): ComputerUsePreviewTool; /** Type of ComputerEnvironment */ export type ComputerEnvironment = "windows" | "mac" | "linux" | "ubuntu" | "browser"; /** * Search the Internet for sources related to the prompt. Learn more about the * [web search tool](https://platform.openai.com/docs/guides/tools-web-search). */ export interface WebSearchTool extends Tool { /** The type of the web search tool. One of `web_search` or `web_search_2025_08_26`. */ type: "web_search"; /** Filters to apply to web search results. */ filters?: WebSearchToolFilters; /** The approximate location of the user for search relevance. */ user_location?: WebSearchApproximateLocation; /** High level guidance for the amount of context window space to use for the search. One of `low`, `medium`, or `high`. `medium` is the default. */ search_context_size?: "low" | "medium" | "high"; /** Optional user-defined name for this tool or configuration. */ name?: string; /** Optional user-defined description for this tool or configuration. */ description?: string; /** * The project connections attached to this tool. There can be a maximum of 1 connection * resource attached to the tool. */ custom_search_configuration?: WebSearchConfiguration; } export declare function webSearchToolSerializer(item: WebSearchTool): any; export declare function webSearchToolDeserializer(item: any): WebSearchTool; /** model interface WebSearchToolFilters */ export interface WebSearchToolFilters { /** The list of allowed domains for web search results. */ allowed_domains?: string[]; } export declare function webSearchToolFiltersSerializer(item: WebSearchToolFilters): any; export declare function webSearchToolFiltersDeserializer(item: any): WebSearchToolFilters; /** The approximate location of the user. */ export interface WebSearchApproximateLocation { /** The type of location approximation. Always `approximate`. */ type?: "approximate"; /** The two-letter ISO country code. */ country?: string; /** The region or state for the approximate location. */ region?: string; /** The city for the approximate location. */ city?: string; /** The IANA timezone identifier (e.g. 'America/New_York'). */ timezone?: string; } export declare function webSearchApproximateLocationSerializer(item: WebSearchApproximateLocation): any; export declare function webSearchApproximateLocationDeserializer(item: any): WebSearchApproximateLocation; /** A web search configuration for bing custom search */ export interface WebSearchConfiguration { /** Project connection id for grounding with bing custom search */ project_connection_id: string; /** Name of the custom configuration instance given to config. */ instance_name: string; } export declare function webSearchConfigurationSerializer(item: WebSearchConfiguration): any; export declare function webSearchConfigurationDeserializer(item: any): WebSearchConfiguration; /** * Give the model access to additional tools via remote Model Context Protocol * (MCP) servers. [Learn more about MCP](https://platform.openai.com/docs/guides/tools-remote-mcp). */ export interface MCPTool extends Tool { /** The type of the MCP tool. Always `mcp`. */ type: "mcp"; /** A label for this MCP server, used to identify it in tool calls. */ server_label: string; /** * The URL for the MCP server. One of `server_url` or `connector_id` must be * provided. */ server_url?: string; /** * Identifier for service connectors, like those available in ChatGPT. One of * `server_url` or `connector_id` must be provided. Learn more about service * connectors [here](https://platform.openai.com/docs/guides/tools-remote-mcp#connectors). * Currently supported `connector_id` values are: * - Dropbox: `connector_dropbox` * - Gmail: `connector_gmail` * - Google Calendar: `connector_googlecalendar` * - Google Drive: `connector_googledrive` * - Microsoft Teams: `connector_microsoftteams` * - Outlook Calendar: `connector_outlookcalendar` * - Outlook Email: `connector_outlookemail` * - SharePoint: `connector_sharepoint` */ connector_id?: "connector_dropbox" | "connector_gmail" | "connector_googlecalendar" | "connector_googledrive" | "connector_microsoftteams" | "connector_outlookcalendar" | "connector_outlookemail" | "connector_sharepoint"; /** * An OAuth access token that can be used with a remote MCP server, either * with a custom MCP server URL or a service connector. Your application * must handle the OAuth authorization flow and provide the token here. */ authorization?: string; /** Optional description of the MCP server, used to provide more context. */ server_description?: string; /** Custom headers to include in requests to the MCP server. */ headers?: Record; /** The list of allowed tool names for the MCP server. */ allowed_tools?: string[] | MCPToolFilter; /** The approval requirements for the MCP tool. */ require_approval?: MCPToolRequireApproval | "always" | "never"; /** Whether this MCP tool is deferred and discovered via tool search. */ defer_loading?: boolean; /** The connection ID in the project for the MCP server. The connection stores authentication and other connection details needed to connect to the MCP server. */ project_connection_id?: string; } export declare function mcpToolSerializer(item: MCPTool): any; export declare function mcpToolDeserializer(item: any): MCPTool; /** Alias for _MCPToolAllowedTools */ export type _MCPToolAllowedTools = string[] | MCPToolFilter; export declare function _mcpToolAllowedToolsSerializer(item: _MCPToolAllowedTools): any; export declare function _mcpToolAllowedToolsDeserializer(item: any): _MCPToolAllowedTools; /** A filter object to specify which tools are allowed. */ export interface MCPToolFilter { /** List of allowed tool names. */ tool_names?: string[]; /** * Indicates whether or not a tool modifies data or is read-only. If an * MCP server is [annotated with `readOnlyHint`](https://modelcontextprotocol.io/specification/2025-06-18/schema#toolannotations-readonlyhint), * it will match this filter. */ read_only?: boolean; } export declare function mcpToolFilterSerializer(item: MCPToolFilter): any; export declare function mcpToolFilterDeserializer(item: any): MCPToolFilter; /** Alias for _MCPToolRequireApproval */ export type _MCPToolRequireApproval = MCPToolRequireApproval | "always" | "never"; export declare function _mcpToolRequireApprovalSerializer(item: _MCPToolRequireApproval): any; export declare function _mcpToolRequireApprovalDeserializer(item: any): _MCPToolRequireApproval; /** model interface MCPToolRequireApproval */ export interface MCPToolRequireApproval { /** Tools that always require approval before execution. */ always?: MCPToolFilter; /** Tools that never require approval before execution. */ never?: MCPToolFilter; } export declare function mcpToolRequireApprovalSerializer(item: MCPToolRequireApproval): any; export declare function mcpToolRequireApprovalDeserializer(item: any): MCPToolRequireApproval; /** A tool that generates images using the GPT image models. */ export interface ImageGenTool extends Tool { /** The type of the image generation tool. Always `image_generation`. */ type: "image_generation"; /** The model to use for image generation. */ model?: "gpt-image-1" | "gpt-image-1-mini" | "gpt-image-1.5"; /** * The quality of the generated image. One of `low`, `medium`, `high`, * or `auto`. Default: `auto`. */ quality?: "low" | "medium" | "high" | "auto"; /** * The size of the generated image. One of `1024x1024`, `1024x1536`, * `1536x1024`, or `auto`. Default: `auto`. */ size?: "1024x1024" | "1024x1536" | "1536x1024" | "auto"; /** * The output format of the generated image. One of `png`, `webp`, or * `jpeg`. Default: `png`. */ output_format?: "png" | "webp" | "jpeg"; /** Compression level for the output image. Default: 100. */ output_compression?: number; /** Moderation level for the generated image. Default: `auto`. */ moderation?: "auto" | "low"; /** * Background type for the generated image. One of `transparent`, * `opaque`, or `auto`. Default: `auto`. */ background?: "transparent" | "opaque" | "auto"; /** The fidelity level for input image processing. */ input_fidelity?: InputFidelity; /** * Optional mask for inpainting. Contains `image_url` * (string, optional) and `file_id` (string, optional). */ input_image_mask?: ImageGenToolInputImageMask; /** Number of partial images to generate in streaming mode, from 0 (default value) to 3. */ partial_images?: number; /** Whether to generate a new image or edit an existing image. Default: `auto`. */ action?: ImageGenAction; /** Optional user-defined name for this tool or configuration. */ name?: string; /** Optional user-defined description for this tool or configuration. */ description?: string; } export declare function imageGenToolSerializer(item: ImageGenTool): any; export declare function imageGenToolDeserializer(item: any): ImageGenTool; /** Control how much effort the model will exert to match the style and features, especially facial features, of input images. This parameter is only supported for `gpt-image-1` and `gpt-image-1.5` and later models, unsupported for `gpt-image-1-mini`. Supports `high` and `low`. Defaults to `low`. */ export type InputFidelity = "high" | "low"; /** model interface ImageGenToolInputImageMask */ export interface ImageGenToolInputImageMask { /** The URL of the mask image. */ image_url?: string; /** The file identifier for the mask image. */ file_id?: string; } export declare function imageGenToolInputImageMaskSerializer(item: ImageGenToolInputImageMask): any; export declare function imageGenToolInputImageMaskDeserializer(item: any): ImageGenToolInputImageMask; /** Type of ImageGenAction */ export type ImageGenAction = "generate" | "edit" | "auto"; /** A tool that allows the model to execute shell commands in a local environment. */ export interface LocalShellToolParam extends Tool { /** The type of the local shell tool. Always `local_shell`. */ type: "local_shell"; /** Optional user-defined name for this tool or configuration. */ name?: string; /** Optional user-defined description for this tool or configuration. */ description?: string; } export declare function localShellToolParamSerializer(item: LocalShellToolParam): any; export declare function localShellToolParamDeserializer(item: any): LocalShellToolParam; /** A tool that allows the model to execute shell commands. */ export interface FunctionShellToolParam extends Tool { /** The type of the shell tool. Always `shell`. */ type: "shell"; /** The environment configuration for the function shell tool. */ environment?: FunctionShellToolParamEnvironmentUnion; /** Optional user-defined name for this tool or configuration. */ name?: string; /** Optional user-defined description for this tool or configuration. */ description?: string; } export declare function functionShellToolParamSerializer(item: FunctionShellToolParam): any; export declare function functionShellToolParamDeserializer(item: any): FunctionShellToolParam; /** model interface FunctionShellToolParamEnvironment */ export interface FunctionShellToolParamEnvironment { /** The environment type. */ type: FunctionShellToolParamEnvironmentType; } export declare function functionShellToolParamEnvironmentSerializer(item: FunctionShellToolParamEnvironment): any; export declare function functionShellToolParamEnvironmentDeserializer(item: any): FunctionShellToolParamEnvironment; /** Alias for FunctionShellToolParamEnvironmentUnion */ export type FunctionShellToolParamEnvironmentUnion = FunctionShellToolParamEnvironmentLocalEnvironmentParam | FunctionShellToolParamEnvironmentContainerReferenceParam | ContainerAutoParam | FunctionShellToolParamEnvironment; export declare function functionShellToolParamEnvironmentUnionSerializer(item: FunctionShellToolParamEnvironmentUnion): any; export declare function functionShellToolParamEnvironmentUnionDeserializer(item: any): FunctionShellToolParamEnvironmentUnion; /** Type of FunctionShellToolParamEnvironmentType */ export type FunctionShellToolParamEnvironmentType = "container_auto" | "local" | "container_reference"; /** model interface FunctionShellToolParamEnvironmentLocalEnvironmentParam */ export interface FunctionShellToolParamEnvironmentLocalEnvironmentParam extends FunctionShellToolParamEnvironment { /** Use a local computer environment. */ type: "local"; /** An optional list of skills. */ skills?: LocalSkillParam[]; } export declare function functionShellToolParamEnvironmentLocalEnvironmentParamSerializer(item: FunctionShellToolParamEnvironmentLocalEnvironmentParam): any; export declare function functionShellToolParamEnvironmentLocalEnvironmentParamDeserializer(item: any): FunctionShellToolParamEnvironmentLocalEnvironmentParam; export declare function localSkillParamArraySerializer(result: Array): any[]; export declare function localSkillParamArrayDeserializer(result: Array): any[]; /** model interface LocalSkillParam */ export interface LocalSkillParam { /** The name of the skill. */ name: string; /** The description of the skill. */ description: string; /** The path to the directory containing the skill. */ path: string; } export declare function localSkillParamSerializer(item: LocalSkillParam): any; export declare function localSkillParamDeserializer(item: any): LocalSkillParam; /** model interface FunctionShellToolParamEnvironmentContainerReferenceParam */ export interface FunctionShellToolParamEnvironmentContainerReferenceParam extends FunctionShellToolParamEnvironment { /** References a container created with the /v1/containers endpoint */ type: "container_reference"; /** The ID of the referenced container. */ container_id: string; } export declare function functionShellToolParamEnvironmentContainerReferenceParamSerializer(item: FunctionShellToolParamEnvironmentContainerReferenceParam): any; export declare function functionShellToolParamEnvironmentContainerReferenceParamDeserializer(item: any): FunctionShellToolParamEnvironmentContainerReferenceParam; /** model interface ContainerAutoParam */ export interface ContainerAutoParam extends FunctionShellToolParamEnvironment { /** Automatically creates a container for this request */ type: "container_auto"; /** An optional list of uploaded files to make available to your code. */ file_ids?: string[]; /** The memory limit for the container, in bytes. */ memory_limit?: ContainerMemoryLimit; /** An optional list of skills referenced by id or inline data. */ skills?: ContainerSkillUnion[]; /** The network access policy for the container. */ network_policy?: ContainerNetworkPolicyParamUnion; } export declare function containerAutoParamSerializer(item: ContainerAutoParam): any; export declare function containerAutoParamDeserializer(item: any): ContainerAutoParam; export declare function containerSkillUnionArraySerializer(result: Array): any[]; export declare function containerSkillUnionArrayDeserializer(result: Array): any[]; /** model interface ContainerSkill */ export interface ContainerSkill { /** The type discriminator for the container skill. */ type: ContainerSkillType; } export declare function containerSkillSerializer(item: ContainerSkill): any; export declare function containerSkillDeserializer(item: any): ContainerSkill; /** Alias for ContainerSkillUnion */ export type ContainerSkillUnion = SkillReferenceParam | InlineSkillParam | ContainerSkill; export declare function containerSkillUnionSerializer(item: ContainerSkillUnion): any; export declare function containerSkillUnionDeserializer(item: any): ContainerSkillUnion; /** Type of ContainerSkillType */ export type ContainerSkillType = "skill_reference" | "inline"; /** model interface SkillReferenceParam */ export interface SkillReferenceParam extends ContainerSkill { /** References a skill created with the /v1/skills endpoint. */ type: "skill_reference"; /** The ID of the referenced skill. */ skill_id: string; /** Optional skill version. Use a positive integer or 'latest'. Omit for default. */ version?: string; } export declare function skillReferenceParamSerializer(item: SkillReferenceParam): any; export declare function skillReferenceParamDeserializer(item: any): SkillReferenceParam; /** model interface InlineSkillParam */ export interface InlineSkillParam extends ContainerSkill { /** Defines an inline skill for this request. */ type: "inline"; /** The name of the skill. */ name: string; /** The description of the skill. */ description: string; /** Inline skill payload */ source: InlineSkillSourceParam; } export declare function inlineSkillParamSerializer(item: InlineSkillParam): any; export declare function inlineSkillParamDeserializer(item: any): InlineSkillParam; /** Inline skill payload */ export interface InlineSkillSourceParam { /** The type of the inline skill source. Must be `base64`. */ type: "base64"; /** The media type of the inline skill payload. Must be `application/zip`. */ media_type: "application/zip"; /** Base64-encoded skill zip bundle. */ data: string; } export declare function inlineSkillSourceParamSerializer(item: InlineSkillSourceParam): any; export declare function inlineSkillSourceParamDeserializer(item: any): InlineSkillSourceParam; /** A custom tool that processes input using a specified format. Learn more about [custom tools](https://platform.openai.com/docs/guides/function-calling#custom-tools) */ export interface CustomToolParam extends Tool { /** The type of the custom tool. Always `custom`. */ type: "custom"; /** The name of the custom tool, used to identify it in tool calls. */ name: string; /** Optional description of the custom tool, used to provide more context. */ description?: string; /** The input format for the custom tool. Default is unconstrained text. */ format?: CustomToolParamFormatUnion; /** Whether this tool should be deferred and discovered via tool search. */ defer_loading?: boolean; } export declare function customToolParamSerializer(item: CustomToolParam): any; export declare function customToolParamDeserializer(item: any): CustomToolParam; /** The input format for the custom tool. Default is unconstrained text. */ export interface CustomToolParamFormat { /** The custom tool parameter format type. */ type: CustomToolParamFormatType; } export declare function customToolParamFormatSerializer(item: CustomToolParamFormat): any; export declare function customToolParamFormatDeserializer(item: any): CustomToolParamFormat; /** Alias for CustomToolParamFormatUnion */ export type CustomToolParamFormatUnion = CustomTextFormatParam | CustomGrammarFormatParam | CustomToolParamFormat; export declare function customToolParamFormatUnionSerializer(item: CustomToolParamFormatUnion): any; export declare function customToolParamFormatUnionDeserializer(item: any): CustomToolParamFormatUnion; /** Type of CustomToolParamFormatType */ export type CustomToolParamFormatType = "text" | "grammar"; /** Unconstrained free-form text. */ export interface CustomTextFormatParam extends CustomToolParamFormat { /** Unconstrained text format. Always `text`. */ type: "text"; } export declare function customTextFormatParamSerializer(item: CustomTextFormatParam): any; export declare function customTextFormatParamDeserializer(item: any): CustomTextFormatParam; /** A grammar defined by the user. */ export interface CustomGrammarFormatParam extends CustomToolParamFormat { /** Grammar format. Always `grammar`. */ type: "grammar"; /** The syntax of the grammar definition. One of `lark` or `regex`. */ syntax: GrammarSyntax; /** The grammar definition. */ definition: string; } export declare function customGrammarFormatParamSerializer(item: CustomGrammarFormatParam): any; export declare function customGrammarFormatParamDeserializer(item: any): CustomGrammarFormatParam; /** Type of GrammarSyntax */ export type GrammarSyntax = "lark" | "regex"; /** This tool searches the web for relevant results to use in a response. Learn more about the [web search tool](https://platform.openai.com/docs/guides/tools-web-search). */ export interface WebSearchPreviewTool extends Tool { /** The type of the web search tool. One of `web_search_preview` or `web_search_preview_2025_03_11`. */ type: "web_search_preview"; /** The approximate location of the user for search relevance. */ user_location?: ApproximateLocation; /** High level guidance for the amount of context window space to use for the search. One of `low`, `medium`, or `high`. `medium` is the default. */ search_context_size?: SearchContextSize; search_content_types?: SearchContentType[]; } export declare function webSearchPreviewToolSerializer(item: WebSearchPreviewTool): any; export declare function webSearchPreviewToolDeserializer(item: any): WebSearchPreviewTool; /** model interface ApproximateLocation */ export interface ApproximateLocation { /** The type of location approximation. Always `approximate`. */ type: "approximate"; /** The two-letter ISO country code. */ country?: string; /** The region or state for the approximate location. */ region?: string; /** The city for the approximate location. */ city?: string; /** The IANA timezone identifier (e.g. 'America/New_York'). */ timezone?: string; } export declare function approximateLocationSerializer(item: ApproximateLocation): any; export declare function approximateLocationDeserializer(item: any): ApproximateLocation; /** Type of SearchContextSize */ export type SearchContextSize = "low" | "medium" | "high"; /** Type of SearchContentType */ export type SearchContentType = "text" | "image"; /** Allows the assistant to create, delete, or update files using unified diffs. */ export interface ApplyPatchToolParam extends Tool { /** The type of the tool. Always `apply_patch`. */ type: "apply_patch"; } export declare function applyPatchToolParamSerializer(item: ApplyPatchToolParam): any; export declare function applyPatchToolParamDeserializer(item: any): ApplyPatchToolParam; /** A tool that controls a virtual computer. Learn more about the [computer tool](https://platform.openai.com/docs/guides/tools-computer-use). */ export interface ComputerTool extends Tool { /** The type of the computer tool. Always `computer`. */ type: "computer"; } export declare function computerToolSerializer(item: ComputerTool): any; export declare function computerToolDeserializer(item: any): ComputerTool; /** Groups function/custom tools under a shared namespace. */ export interface NamespaceToolParam extends Tool { /** The type of the tool. Always `namespace`. */ type: "namespace"; /** The namespace name used in tool calls (for example, `crm`). */ name: string; /** A description of the namespace shown to the model. */ description: string; /** The function/custom tools available inside this namespace. */ tools: (FunctionToolParam | CustomToolParam)[]; } export declare function namespaceToolParamSerializer(item: NamespaceToolParam): any; export declare function namespaceToolParamDeserializer(item: any): NamespaceToolParam; export declare function _namespaceToolParamToolArraySerializer(result: Array<_NamespaceToolParamTool>): any[]; export declare function _namespaceToolParamToolArrayDeserializer(result: Array<_NamespaceToolParamTool>): any[]; /** Alias for _NamespaceToolParamTool */ export type _NamespaceToolParamTool = FunctionToolParam | CustomToolParam; export declare function _namespaceToolParamToolSerializer(item: _NamespaceToolParamTool): any; export declare function _namespaceToolParamToolDeserializer(item: any): _NamespaceToolParamTool; /** model interface FunctionToolParam */ export interface FunctionToolParam { name: string; description?: string; parameters?: EmptyModelParam; strict?: boolean; type: "function"; /** Whether this function should be deferred and discovered via tool search. */ defer_loading?: boolean; } export declare function functionToolParamSerializer(item: FunctionToolParam): any; export declare function functionToolParamDeserializer(item: any): FunctionToolParam; /** model interface EmptyModelParam */ export interface EmptyModelParam { } export declare function emptyModelParamSerializer(_item: EmptyModelParam): any; export declare function emptyModelParamDeserializer(item: any): EmptyModelParam; /** Hosted or BYOT tool search configuration for deferred tools. */ export interface ToolSearchToolParam extends Tool { /** The type of the tool. Always `tool_search`. */ type: "tool_search"; /** Whether tool search is executed by the server or by the client. */ execution?: ToolSearchExecutionType; description?: string; parameters?: EmptyModelParam; } export declare function toolSearchToolParamSerializer(item: ToolSearchToolParam): any; export declare function toolSearchToolParamDeserializer(item: any): ToolSearchToolParam; /** Type of ToolSearchExecutionType */ export type ToolSearchExecutionType = "server" | "client"; export declare function protocolVersionRecordArraySerializer(result: Array): any[]; export declare function protocolVersionRecordArrayDeserializer(result: Array): any[]; /** A record mapping for a single protocol and its version. */ export interface ProtocolVersionRecord { /** The protocol type. */ protocol: AgentProtocol; /** The version string for the protocol, e.g. 'v0.1.1'. */ version: string; } export declare function protocolVersionRecordSerializer(item: ProtocolVersionRecord): any; export declare function protocolVersionRecordDeserializer(item: any): ProtocolVersionRecord; /** Type of AgentProtocol */ export type AgentProtocol = "activity_protocol" | "responses" | "invocations"; /** Container-based deployment configuration for a hosted agent. */ export interface ContainerConfiguration { /** The container image for the hosted agent. */ image: string; } export declare function containerConfigurationSerializer(item: ContainerConfiguration): any; export declare function containerConfigurationDeserializer(item: any): ContainerConfiguration; /** Code-based deployment configuration for a hosted agent. */ export interface CodeConfiguration { /** The runtime identifier for code execution (e.g., 'python_3_11', 'python_3_12', 'python_3_13'). */ runtime: string; /** The entry point command and arguments for the code execution. */ entry_point: string[]; } export declare function codeConfigurationSerializer(item: CodeConfiguration): any; export declare function codeConfigurationDeserializer(item: any): CodeConfiguration; /** The prompt agent definition */ export interface PromptAgentDefinition extends AgentDefinition { kind: "prompt"; /** The model deployment to use for this agent. */ model: string; /** A system (or developer) message inserted into the model's context. */ instructions?: string; /** * What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. * We generally recommend altering this or `top_p` but not both. */ temperature?: number; /** * An alternative to sampling with temperature, called nucleus sampling, * where the model considers the results of the tokens with top_p probability * mass. So 0.1 means only the tokens comprising the top 10% probability mass * are considered. * * We generally recommend altering this or `temperature` but not both. */ top_p?: number; reasoning?: Reasoning; /** * An array of tools the model may call while generating a response. You * can specify which tool to use by setting the `tool_choice` parameter. */ tools?: ToolUnion[]; /** * How the model should select which tool (or tools) to use when generating a response. * See the `tools` parameter to see how to specify which tools the model can call. */ tool_choice?: string | ToolChoiceParamUnion; /** Configuration options for a text response from the model. Can be plain text or structured JSON data. */ text?: PromptAgentDefinitionTextOptions; /** Set of structured inputs that can participate in prompt template substitution or tool argument bindings. */ structured_inputs?: Record; } export declare function promptAgentDefinitionSerializer(item: PromptAgentDefinition): any; export declare function promptAgentDefinitionDeserializer(item: any): PromptAgentDefinition; /** * **gpt-5 and o-series models only** * Configuration options for * [reasoning models](https://platform.openai.com/docs/guides/reasoning). */ export interface Reasoning { effort?: ReasoningEffort; summary?: "auto" | "concise" | "detailed"; generate_summary?: "auto" | "concise" | "detailed"; } export declare function reasoningSerializer(item: Reasoning): any; export declare function reasoningDeserializer(item: any): Reasoning; /** * Constrains effort on reasoning for * [reasoning models](https://platform.openai.com/docs/guides/reasoning). * Currently supported values are `none`, `minimal`, `low`, `medium`, `high`, and `xhigh`. Reducing * reasoning effort can result in faster responses and fewer tokens used * on reasoning in a response. * - `gpt-5.1` defaults to `none`, which does not perform reasoning. The supported reasoning values for `gpt-5.1` are `none`, `low`, `medium`, and `high`. Tool calls are supported for all reasoning values in gpt-5.1. * - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support `none`. * - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort. * - `xhigh` is supported for all models after `gpt-5.1-codex-max`. */ export type ReasoningEffort = "none" | "minimal" | "low" | "medium" | "high" | "xhigh"; /** Alias for _PromptAgentDefinitionToolChoice */ export type _PromptAgentDefinitionToolChoice = string | ToolChoiceParamUnion; export declare function _promptAgentDefinitionToolChoiceSerializer(item: _PromptAgentDefinitionToolChoice): any; export declare function _promptAgentDefinitionToolChoiceDeserializer(item: any): _PromptAgentDefinitionToolChoice; /** * How the model should select which tool (or tools) to use when generating * a response. See the `tools` parameter to see how to specify which tools * the model can call. */ export interface ToolChoiceParam { type: ToolChoiceParamType; } export declare function toolChoiceParamSerializer(item: ToolChoiceParam): any; export declare function toolChoiceParamDeserializer(item: any): ToolChoiceParam; /** Alias for ToolChoiceParamUnion */ export type ToolChoiceParamUnion = ToolChoiceAllowed | ToolChoiceFunction | ToolChoiceMCP | ToolChoiceCustom | SpecificApplyPatchParam | SpecificFunctionShellParam | ToolChoiceFileSearch | ToolChoiceWebSearchPreview | ToolChoiceComputerUsePreview | ToolChoiceWebSearchPreview20250311 | ToolChoiceImageGeneration | ToolChoiceCodeInterpreter | ToolChoiceComputer | ToolChoiceComputerUse | ToolChoiceParam; export declare function toolChoiceParamUnionSerializer(item: ToolChoiceParamUnion): any; export declare function toolChoiceParamUnionDeserializer(item: any): ToolChoiceParamUnion; /** Type of ToolChoiceParamType */ export type ToolChoiceParamType = "allowed_tools" | "function" | "mcp" | "custom" | "apply_patch" | "shell" | "file_search" | "web_search_preview" | "computer_use_preview" | "web_search_preview_2025_03_11" | "image_generation" | "code_interpreter" | "computer" | "computer_use"; /** Constrains the tools available to the model to a pre-defined set. */ export interface ToolChoiceAllowed extends ToolChoiceParam { /** Allowed tool configuration type. Always `allowed_tools`. */ type: "allowed_tools"; /** * Constrains the tools available to the model to a pre-defined set. * `auto` allows the model to pick from among the allowed tools and generate a * message. * `required` requires the model to call one or more of the allowed tools. */ mode: "auto" | "required"; /** * A list of tool definitions that the model should be allowed to call. * For the Responses API, the list of tool definitions might look like: * ```json * [ * { "type": "function", "name": "get_weather" }, * { "type": "mcp", "server_label": "deepwiki" }, * { "type": "image_generation" } * ] * ``` */ tools: Record[]; } export declare function toolChoiceAllowedSerializer(item: ToolChoiceAllowed): any; export declare function toolChoiceAllowedDeserializer(item: any): ToolChoiceAllowed; /** Use this option to force the model to call a specific function. */ export interface ToolChoiceFunction extends ToolChoiceParam { /** For function calling, the type is always `function`. */ type: "function"; /** The name of the function to call. */ name: string; } export declare function toolChoiceFunctionSerializer(item: ToolChoiceFunction): any; export declare function toolChoiceFunctionDeserializer(item: any): ToolChoiceFunction; /** Use this option to force the model to call a specific tool on a remote MCP server. */ export interface ToolChoiceMCP extends ToolChoiceParam { /** For MCP tools, the type is always `mcp`. */ type: "mcp"; /** The label of the MCP server to use. */ server_label: string; name?: string; } export declare function toolChoiceMCPSerializer(item: ToolChoiceMCP): any; export declare function toolChoiceMCPDeserializer(item: any): ToolChoiceMCP; /** Use this option to force the model to call a specific custom tool. */ export interface ToolChoiceCustom extends ToolChoiceParam { /** For custom tool calling, the type is always `custom`. */ type: "custom"; /** The name of the custom tool to call. */ name: string; } export declare function toolChoiceCustomSerializer(item: ToolChoiceCustom): any; export declare function toolChoiceCustomDeserializer(item: any): ToolChoiceCustom; /** Forces the model to call the apply_patch tool when executing a tool call. */ export interface SpecificApplyPatchParam extends ToolChoiceParam { /** The tool to call. Always `apply_patch`. */ type: "apply_patch"; } export declare function specificApplyPatchParamSerializer(item: SpecificApplyPatchParam): any; export declare function specificApplyPatchParamDeserializer(item: any): SpecificApplyPatchParam; /** Forces the model to call the shell tool when a tool call is required. */ export interface SpecificFunctionShellParam extends ToolChoiceParam { /** The tool to call. Always `shell`. */ type: "shell"; } export declare function specificFunctionShellParamSerializer(item: SpecificFunctionShellParam): any; export declare function specificFunctionShellParamDeserializer(item: any): SpecificFunctionShellParam; /** * Indicates that the model should use a built-in tool to generate a response. * [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools). */ export interface ToolChoiceFileSearch extends ToolChoiceParam { type: "file_search"; } export declare function toolChoiceFileSearchSerializer(item: ToolChoiceFileSearch): any; export declare function toolChoiceFileSearchDeserializer(item: any): ToolChoiceFileSearch; /** * Indicates that the model should use a built-in tool to generate a response. * [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools). */ export interface ToolChoiceWebSearchPreview extends ToolChoiceParam { type: "web_search_preview"; } export declare function toolChoiceWebSearchPreviewSerializer(item: ToolChoiceWebSearchPreview): any; export declare function toolChoiceWebSearchPreviewDeserializer(item: any): ToolChoiceWebSearchPreview; /** * Indicates that the model should use a built-in tool to generate a response. * [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools). */ export interface ToolChoiceComputerUsePreview extends ToolChoiceParam { type: "computer_use_preview"; } export declare function toolChoiceComputerUsePreviewSerializer(item: ToolChoiceComputerUsePreview): any; export declare function toolChoiceComputerUsePreviewDeserializer(item: any): ToolChoiceComputerUsePreview; /** * Indicates that the model should use a built-in tool to generate a response. * [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools). */ export interface ToolChoiceWebSearchPreview20250311 extends ToolChoiceParam { type: "web_search_preview_2025_03_11"; } export declare function toolChoiceWebSearchPreview20250311Serializer(item: ToolChoiceWebSearchPreview20250311): any; export declare function toolChoiceWebSearchPreview20250311Deserializer(item: any): ToolChoiceWebSearchPreview20250311; /** * Indicates that the model should use a built-in tool to generate a response. * [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools). */ export interface ToolChoiceImageGeneration extends ToolChoiceParam { type: "image_generation"; } export declare function toolChoiceImageGenerationSerializer(item: ToolChoiceImageGeneration): any; export declare function toolChoiceImageGenerationDeserializer(item: any): ToolChoiceImageGeneration; /** * Indicates that the model should use a built-in tool to generate a response. * [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools). */ export interface ToolChoiceCodeInterpreter extends ToolChoiceParam { type: "code_interpreter"; } export declare function toolChoiceCodeInterpreterSerializer(item: ToolChoiceCodeInterpreter): any; export declare function toolChoiceCodeInterpreterDeserializer(item: any): ToolChoiceCodeInterpreter; /** * Indicates that the model should use a built-in tool to generate a response. * [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools). */ export interface ToolChoiceComputer extends ToolChoiceParam { type: "computer"; } export declare function toolChoiceComputerSerializer(item: ToolChoiceComputer): any; export declare function toolChoiceComputerDeserializer(item: any): ToolChoiceComputer; /** * Indicates that the model should use a built-in tool to generate a response. * [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools). */ export interface ToolChoiceComputerUse extends ToolChoiceParam { type: "computer_use"; } export declare function toolChoiceComputerUseSerializer(item: ToolChoiceComputerUse): any; export declare function toolChoiceComputerUseDeserializer(item: any): ToolChoiceComputerUse; /** Configuration options for a text response from the model. Can be plain text or structured JSON data. */ export interface PromptAgentDefinitionTextOptions { format?: TextResponseFormatUnion; } export declare function promptAgentDefinitionTextOptionsSerializer(item: PromptAgentDefinitionTextOptions): any; export declare function promptAgentDefinitionTextOptionsDeserializer(item: any): PromptAgentDefinitionTextOptions; /** * An object specifying the format that the model must output. * Configuring `{ "type": "json_schema" }` enables Structured Outputs, * which ensures the model will match your supplied JSON schema. Learn more in the * [Structured Outputs guide](/docs/guides/structured-outputs). * The default format is `{ "type": "text" }` with no additional options. * *Not recommended for gpt-4o and newer models:** * Setting to `{ "type": "json_object" }` enables the older JSON mode, which * ensures the message the model generates is valid JSON. Using `json_schema` * is preferred for models that support it. */ export interface TextResponseFormat { type: TextResponseFormatConfigurationType; } export declare function textResponseFormatSerializer(item: TextResponseFormat): any; export declare function textResponseFormatDeserializer(item: any): TextResponseFormat; /** Alias for TextResponseFormatUnion */ export type TextResponseFormatUnion = TextResponseFormatJsonSchema | TextResponseFormatText | TextResponseFormatJsonObject | TextResponseFormat; export declare function textResponseFormatUnionSerializer(item: TextResponseFormatUnion): any; export declare function textResponseFormatUnionDeserializer(item: any): TextResponseFormatUnion; /** Type of TextResponseFormatConfigurationType */ export type TextResponseFormatConfigurationType = "text" | "json_schema" | "json_object"; /** * JSON Schema response format. Used to generate structured JSON responses. * Learn more about [Structured Outputs](/docs/guides/structured-outputs). */ export interface TextResponseFormatJsonSchema extends TextResponseFormat { /** The type of response format being defined. Always `json_schema`. */ type: "json_schema"; /** * A description of what the response format is for, used by the model to * determine how to respond in the format. */ description?: string; /** * The name of the response format. Must be a-z, A-Z, 0-9, or contain * underscores and dashes, with a maximum length of 64. */ name: string; schema: Record; strict?: boolean; } export declare function textResponseFormatJsonSchemaSerializer(item: TextResponseFormatJsonSchema): any; export declare function textResponseFormatJsonSchemaDeserializer(item: any): TextResponseFormatJsonSchema; /** Default response format. Used to generate text responses. */ export interface TextResponseFormatText extends TextResponseFormat { /** The type of response format being defined. Always `text`. */ type: "text"; } export declare function textResponseFormatTextSerializer(item: TextResponseFormatText): any; export declare function textResponseFormatTextDeserializer(item: any): TextResponseFormatText; /** * JSON object response format. An older method of generating JSON responses. * Using `json_schema` is recommended for models that support it. Note that the * model will not generate JSON without a system or user message instructing it * to do so. */ export interface TextResponseFormatJsonObject extends TextResponseFormat { /** The type of response format being defined. Always `json_object`. */ type: "json_object"; } export declare function textResponseFormatJsonObjectSerializer(item: TextResponseFormatJsonObject): any; export declare function textResponseFormatJsonObjectDeserializer(item: any): TextResponseFormatJsonObject; export declare function structuredInputDefinitionRecordSerializer(item: Record): Record; export declare function structuredInputDefinitionRecordDeserializer(item: Record): Record; /** An structured input that can participate in prompt template substitutions and tool argument binding. */ export interface StructuredInputDefinition { /** A human-readable description of the input. */ description?: string; /** The default value for the input if no run-time value is provided. */ default_value?: unknown; /** The JSON schema for the structured input (optional). */ schema?: Record; /** Whether the input property is required when the agent is invoked. */ required?: boolean; } export declare function structuredInputDefinitionSerializer(item: StructuredInputDefinition): any; export declare function structuredInputDefinitionDeserializer(item: any): StructuredInputDefinition; /** The workflow agent definition. */ export interface WorkflowAgentDefinition extends AgentDefinition { kind: "workflow"; /** The CSDL YAML definition of the workflow. */ workflow?: string; } export declare function workflowAgentDefinitionSerializer(item: WorkflowAgentDefinition): any; export declare function workflowAgentDefinitionDeserializer(item: any): WorkflowAgentDefinition; /** model interface AgentIdentity */ export interface AgentIdentity { /** The principal ID of the agent instance */ principal_id: string; /** The client ID of the agent instance. Also referred to as the instance ID */ client_id: string; } export declare function agentIdentityDeserializer(item: any): AgentIdentity; /** model interface AgentBlueprintReference */ export interface AgentBlueprintReference { type: AgentBlueprintReferenceType; } export declare function agentBlueprintReferenceSerializer(item: AgentBlueprintReference): any; export declare function agentBlueprintReferenceDeserializer(item: any): AgentBlueprintReference; /** Alias for AgentBlueprintReferenceUnion */ export type AgentBlueprintReferenceUnion = ManagedAgentIdentityBlueprintReference | AgentBlueprintReference; export declare function agentBlueprintReferenceUnionSerializer(item: AgentBlueprintReferenceUnion): any; export declare function agentBlueprintReferenceUnionDeserializer(item: any): AgentBlueprintReferenceUnion; /** Type of AgentBlueprintReferenceType */ export type AgentBlueprintReferenceType = "ManagedAgentIdentityBlueprint"; /** model interface ManagedAgentIdentityBlueprintReference */ export interface ManagedAgentIdentityBlueprintReference extends AgentBlueprintReference { type: "ManagedAgentIdentityBlueprint"; /** The ID of the managed blueprint */ blueprint_id: string; } export declare function managedAgentIdentityBlueprintReferenceSerializer(item: ManagedAgentIdentityBlueprintReference): any; export declare function managedAgentIdentityBlueprintReferenceDeserializer(item: any): ManagedAgentIdentityBlueprintReference; /** model interface AgentEndpoint */ export interface AgentEndpoint { /** The version selector of the agent endpoint determines how traffic is routed to different versions of the agent. */ version_selector?: VersionSelector; /** The protocols that the agent supports */ protocols?: AgentEndpointProtocol[]; /** The authorization schemes supported by the agent endpoint */ authorization_schemes?: AgentEndpointAuthorizationSchemeUnion[]; } export declare function agentEndpointSerializer(item: AgentEndpoint): any; export declare function agentEndpointDeserializer(item: any): AgentEndpoint; /** model interface VersionSelector */ export interface VersionSelector { version_selection_rules: VersionSelectionRuleUnion[]; } export declare function versionSelectorSerializer(item: VersionSelector): any; export declare function versionSelectorDeserializer(item: any): VersionSelector; export declare function versionSelectionRuleUnionArraySerializer(result: Array): any[]; export declare function versionSelectionRuleUnionArrayDeserializer(result: Array): any[]; /** model interface VersionSelectionRule */ export interface VersionSelectionRule { type: VersionSelectorType; /** The agent version to route traffic to */ agent_version: string; } export declare function versionSelectionRuleSerializer(item: VersionSelectionRule): any; export declare function versionSelectionRuleDeserializer(item: any): VersionSelectionRule; /** Alias for VersionSelectionRuleUnion */ export type VersionSelectionRuleUnion = FixedRatioVersionSelectionRule | VersionSelectionRule; export declare function versionSelectionRuleUnionSerializer(item: VersionSelectionRuleUnion): any; export declare function versionSelectionRuleUnionDeserializer(item: any): VersionSelectionRuleUnion; /** Type of VersionSelectorType */ export type VersionSelectorType = "FixedRatio"; /** model interface FixedRatioVersionSelectionRule */ export interface FixedRatioVersionSelectionRule extends VersionSelectionRule { type: "FixedRatio"; /** The percentage of traffic to route to the version. Must be between 0 and 100. */ traffic_percentage: number; } export declare function fixedRatioVersionSelectionRuleSerializer(item: FixedRatioVersionSelectionRule): any; export declare function fixedRatioVersionSelectionRuleDeserializer(item: any): FixedRatioVersionSelectionRule; /** Type of AgentEndpointProtocol */ export type AgentEndpointProtocol = "activity" | "responses" | "a2a" | "invocations"; export declare function agentEndpointAuthorizationSchemeUnionArraySerializer(result: Array): any[]; export declare function agentEndpointAuthorizationSchemeUnionArrayDeserializer(result: Array): any[]; /** model interface AgentEndpointAuthorizationScheme */ export interface AgentEndpointAuthorizationScheme { type: AgentEndpointAuthorizationSchemeType; } export declare function agentEndpointAuthorizationSchemeSerializer(item: AgentEndpointAuthorizationScheme): any; export declare function agentEndpointAuthorizationSchemeDeserializer(item: any): AgentEndpointAuthorizationScheme; /** Alias for AgentEndpointAuthorizationSchemeUnion */ export type AgentEndpointAuthorizationSchemeUnion = EntraAuthorizationScheme | BotServiceAuthorizationScheme | BotServiceRbacAuthorizationScheme | AgentEndpointAuthorizationScheme; export declare function agentEndpointAuthorizationSchemeUnionSerializer(item: AgentEndpointAuthorizationSchemeUnion): any; export declare function agentEndpointAuthorizationSchemeUnionDeserializer(item: any): AgentEndpointAuthorizationSchemeUnion; /** Type of AgentEndpointAuthorizationSchemeType */ export type AgentEndpointAuthorizationSchemeType = "Entra" | "BotService" | "BotServiceRbac"; /** model interface EntraAuthorizationScheme */ export interface EntraAuthorizationScheme extends AgentEndpointAuthorizationScheme { type: "Entra"; isolation_key_source: IsolationKeySourceUnion; } export declare function entraAuthorizationSchemeSerializer(item: EntraAuthorizationScheme): any; export declare function entraAuthorizationSchemeDeserializer(item: any): EntraAuthorizationScheme; /** model interface IsolationKeySource */ export interface IsolationKeySource { kind: IsolationKeySourceKind; } export declare function isolationKeySourceSerializer(item: IsolationKeySource): any; export declare function isolationKeySourceDeserializer(item: any): IsolationKeySource; /** Alias for IsolationKeySourceUnion */ export type IsolationKeySourceUnion = EntraIsolationKeySource | HeaderIsolationKeySource | IsolationKeySource; export declare function isolationKeySourceUnionSerializer(item: IsolationKeySourceUnion): any; export declare function isolationKeySourceUnionDeserializer(item: any): IsolationKeySourceUnion; /** Type of IsolationKeySourceKind */ export type IsolationKeySourceKind = "Entra" | "Header"; /** model interface EntraIsolationKeySource */ export interface EntraIsolationKeySource extends IsolationKeySource { kind: "Entra"; } export declare function entraIsolationKeySourceSerializer(item: EntraIsolationKeySource): any; export declare function entraIsolationKeySourceDeserializer(item: any): EntraIsolationKeySource; /** model interface HeaderIsolationKeySource */ export interface HeaderIsolationKeySource extends IsolationKeySource { kind: "Header"; /** The user isolation key header value */ user_isolation_key: string; /** The chat isolation key header value */ chat_isolation_key: string; } export declare function headerIsolationKeySourceSerializer(item: HeaderIsolationKeySource): any; export declare function headerIsolationKeySourceDeserializer(item: any): HeaderIsolationKeySource; /** model interface BotServiceAuthorizationScheme */ export interface BotServiceAuthorizationScheme extends AgentEndpointAuthorizationScheme { type: "BotService"; } export declare function botServiceAuthorizationSchemeSerializer(item: BotServiceAuthorizationScheme): any; export declare function botServiceAuthorizationSchemeDeserializer(item: any): BotServiceAuthorizationScheme; /** model interface BotServiceRbacAuthorizationScheme */ export interface BotServiceRbacAuthorizationScheme extends AgentEndpointAuthorizationScheme { type: "BotServiceRbac"; } export declare function botServiceRbacAuthorizationSchemeSerializer(item: BotServiceRbacAuthorizationScheme): any; export declare function botServiceRbacAuthorizationSchemeDeserializer(item: any): BotServiceRbacAuthorizationScheme; /** model interface AgentCard */ export interface AgentCard { /** The version of the agent card. */ version: string; /** The description of the agent card. */ description?: string; /** The set of skills that an agent can perform. */ skills: AgentCardSkill[]; } export declare function agentCardSerializer(item: AgentCard): any; export declare function agentCardDeserializer(item: any): AgentCard; export declare function agentCardSkillArraySerializer(result: Array): any[]; export declare function agentCardSkillArrayDeserializer(result: Array): any[]; /** model interface AgentCardSkill */ export interface AgentCardSkill { /** a unique identifier for the skill */ id: string; /** The name of the skill */ name: string; /** A description of the skill */ description?: string; /** set of tagwords describing classes of capabilities for the skill */ tags?: string[]; /** A list of example scenarios that the skill can perform. */ examples?: string[]; } export declare function agentCardSkillSerializer(item: AgentCardSkill): any; export declare function agentCardSkillDeserializer(item: any): AgentCardSkill; /** Error response for API failures. */ export interface ApiErrorResponse { /** The error details. */ error: ErrorModel; } export declare function apiErrorResponseDeserializer(item: any): ApiErrorResponse; /** model interface ErrorModel */ export interface ErrorModel { /** The error code. */ code: string; /** The error message. */ message: string; /** The parameter that caused the error. */ param?: string; /** The error type. */ type?: string; /** The error details. */ details?: ErrorModel[]; /** Additional information about the error. */ additionalInfo?: Record; /** Debug information for the error. */ debugInfo?: Record; } export declare function errorDeserializer(item: any): ErrorModel; export declare function errorArrayDeserializer(result: Array): any[]; /** A deleted agent Object */ export interface DeleteAgentResponse { /** The object type. Always 'agent.deleted'. */ object: "agent.deleted"; /** The name of the agent. */ name: string; /** Whether the agent was successfully deleted. */ deleted: boolean; } export declare function deleteAgentResponseDeserializer(item: any): DeleteAgentResponse; /** The response data for a requested list of items. */ export interface _AgentsPagedResultAgentObject { /** The requested list of items. */ data: Agent[]; /** The first ID represented in this list. */ first_id?: string; /** The last ID represented in this list. */ last_id?: string; /** A value indicating whether there are additional values available not captured in this list. */ has_more: boolean; } export declare function _agentsPagedResultAgentObjectDeserializer(item: any): _AgentsPagedResultAgentObject; export declare function agentArrayDeserializer(result: Array): any[]; /** A deleted agent version Object */ export interface DeleteAgentVersionResponse { /** The object type. Always 'agent.version.deleted'. */ object: "agent.version.deleted"; /** The name of the agent. */ name: string; /** The version identifier of the agent. */ version: string; /** Whether the agent was successfully deleted. */ deleted: boolean; } export declare function deleteAgentVersionResponseDeserializer(item: any): DeleteAgentVersionResponse; /** The response data for a requested list of items. */ export interface _AgentsPagedResultAgentVersionObject { /** The requested list of items. */ data: AgentVersion[]; /** The first ID represented in this list. */ first_id?: string; /** The last ID represented in this list. */ last_id?: string; /** A value indicating whether there are additional values available not captured in this list. */ has_more: boolean; } export declare function _agentsPagedResultAgentVersionObjectDeserializer(item: any): _AgentsPagedResultAgentVersionObject; export declare function agentVersionArrayDeserializer(result: Array): any[]; /** Evaluation rule model. */ export interface EvaluationRule { /** Unique identifier for the evaluation rule. */ readonly id: string; /** Display Name for the evaluation rule. */ displayName?: string; /** Description for the evaluation rule. */ description?: string; /** Definition of the evaluation rule action. */ action: EvaluationRuleActionUnion; /** Filter condition of the evaluation rule. */ filter?: EvaluationRuleFilter; /** Event type that the evaluation rule applies to. */ eventType: EvaluationRuleEventType; /** Indicates whether the evaluation rule is enabled. Default is true. */ enabled: boolean; /** System metadata for the evaluation rule. */ readonly systemData: Record; } export declare function evaluationRuleSerializer(item: EvaluationRule): any; export declare function evaluationRuleDeserializer(item: any): EvaluationRule; /** Evaluation action model. */ export interface EvaluationRuleAction { /** Type of the evaluation action. */ /** The discriminator possible values: continuousEvaluation, humanEvaluationPreview */ type: EvaluationRuleActionType; } export declare function evaluationRuleActionSerializer(item: EvaluationRuleAction): any; export declare function evaluationRuleActionDeserializer(item: any): EvaluationRuleAction; /** Alias for EvaluationRuleActionUnion */ export type EvaluationRuleActionUnion = ContinuousEvaluationRuleAction | HumanEvaluationPreviewRuleAction | EvaluationRuleAction; export declare function evaluationRuleActionUnionSerializer(item: EvaluationRuleActionUnion): any; export declare function evaluationRuleActionUnionDeserializer(item: any): EvaluationRuleActionUnion; /** Type of the evaluation action. */ export type EvaluationRuleActionType = "continuousEvaluation" | "humanEvaluationPreview"; /** Evaluation rule action for continuous evaluation. */ export interface ContinuousEvaluationRuleAction extends EvaluationRuleAction { /** The type discriminator, always 'continuousEvaluation'. */ type: "continuousEvaluation"; /** Eval Id to add continuous evaluation runs to. */ evalId: string; /** Maximum number of evaluation runs allowed per hour. */ maxHourlyRuns?: number; } export declare function continuousEvaluationRuleActionSerializer(item: ContinuousEvaluationRuleAction): any; export declare function continuousEvaluationRuleActionDeserializer(item: any): ContinuousEvaluationRuleAction; /** Evaluation rule action for human evaluation. */ export interface HumanEvaluationPreviewRuleAction extends EvaluationRuleAction { /** The type discriminator, always 'humanEvaluationPreview'. */ type: "humanEvaluationPreview"; /** Human evaluation template Id. */ templateId: string; } export declare function humanEvaluationPreviewRuleActionSerializer(item: HumanEvaluationPreviewRuleAction): any; export declare function humanEvaluationPreviewRuleActionDeserializer(item: any): HumanEvaluationPreviewRuleAction; /** Evaluation filter model. */ export interface EvaluationRuleFilter { /** Filter by agent name. */ agentName: string; } export declare function evaluationRuleFilterSerializer(item: EvaluationRuleFilter): any; export declare function evaluationRuleFilterDeserializer(item: any): EvaluationRuleFilter; /** Type of the evaluation rule event. */ export type EvaluationRuleEventType = "responseCompleted" | "manual"; /** Paged collection of EvaluationRule items */ export interface _PagedEvaluationRule { /** The EvaluationRule items on this page */ value: EvaluationRule[]; /** The link to the next page of items */ nextLink?: string; } export declare function _pagedEvaluationRuleDeserializer(item: any): _PagedEvaluationRule; export declare function evaluationRuleArraySerializer(result: Array): any[]; export declare function evaluationRuleArrayDeserializer(result: Array): any[]; /** Response from the list and get connections operations */ export interface Connection { /** The friendly name of the connection, provided by the user. */ readonly name: string; /** A unique identifier for the connection, generated by the service */ readonly id: string; /** Category of the connection */ readonly type: ConnectionType; /** The connection URL to be used for this service */ readonly target: string; /** Whether the connection is tagged as the default connection of its type */ readonly isDefault: boolean; /** The credentials used by the connection */ readonly credentials: BaseCredentialsUnion; /** Metadata of the connection */ readonly metadata: Record; } export declare function connectionDeserializer(item: any): Connection; /** The Type (or category) of the connection */ export type ConnectionType = "AzureOpenAI" | "AzureBlob" | "AzureStorageAccount" | "CognitiveSearch" | "CosmosDB" | "ApiKey" | "AppConfig" | "AppInsights" | "CustomKeys" | "RemoteTool_Preview"; /** A base class for connection credentials */ export interface BaseCredentials { /** The type of credential used by the connection */ /** The discriminator possible values: ApiKey, AAD, CustomKeys, SAS, None, AgenticIdentityToken_Preview */ readonly type: CredentialType; } export declare function baseCredentialsDeserializer(item: any): BaseCredentials; /** Alias for BaseCredentialsUnion */ export type BaseCredentialsUnion = ApiKeyCredentials | EntraIDCredentials | CustomCredential | SASTokenCredentials | NoAuthenticationCredentials | AgenticIdentityPreviewCredentials | BaseCredentials; export declare function baseCredentialsUnionDeserializer(item: any): BaseCredentialsUnion; /** The credential type used by the connection */ export type CredentialType = "ApiKey" | "AAD" | "SAS" | "CustomKeys" | "None" | "AgenticIdentityToken_Preview"; /** API Key Credential definition */ export interface ApiKeyCredentials extends BaseCredentials { /** The credential type */ readonly type: "ApiKey"; /** API Key */ readonly apiKey?: string; } export declare function apiKeyCredentialsDeserializer(item: any): ApiKeyCredentials; /** Entra ID credential definition */ export interface EntraIDCredentials extends BaseCredentials { /** The credential type */ readonly type: "AAD"; } export declare function entraIDCredentialsDeserializer(item: any): EntraIDCredentials; /** Custom credential definition */ export interface CustomCredential extends BaseCredentials { /** The credential type */ readonly type: "CustomKeys"; /** Additional properties */ additionalProperties?: Record; } export declare function customCredentialDeserializer(item: any): CustomCredential; /** Shared Access Signature (SAS) credential definition */ export interface SASTokenCredentials extends BaseCredentials { /** The credential type */ readonly type: "SAS"; /** SAS token */ readonly sasToken?: string; } export declare function sasCredentialsDeserializer(item: any): SASTokenCredentials; /** Credentials that do not require authentication */ export interface NoAuthenticationCredentials extends BaseCredentials { /** The credential type */ readonly type: "None"; } export declare function noAuthenticationCredentialsDeserializer(item: any): NoAuthenticationCredentials; /** Agentic identity credential definition */ export interface AgenticIdentityPreviewCredentials extends BaseCredentials { /** The credential type */ readonly type: "AgenticIdentityToken_Preview"; } export declare function agenticIdentityPreviewCredentialsDeserializer(item: any): AgenticIdentityPreviewCredentials; /** Paged collection of Connection items */ export interface _PagedConnection { /** The Connection items on this page */ value: Connection[]; /** The link to the next page of items */ nextLink?: string; } export declare function _pagedConnectionDeserializer(item: any): _PagedConnection; export declare function connectionArrayDeserializer(result: Array): any[]; /** Paged collection of DatasetVersion items */ export interface _PagedDatasetVersion { /** The DatasetVersion items on this page */ value: DatasetVersionUnion[]; /** The link to the next page of items */ nextLink?: string; } export declare function _pagedDatasetVersionDeserializer(item: any): _PagedDatasetVersion; export declare function datasetVersionUnionArraySerializer(result: Array): any[]; export declare function datasetVersionUnionArrayDeserializer(result: Array): any[]; /** DatasetVersion Definition */ export interface DatasetVersion { /** URI of the data ([example](https://go.microsoft.com/fwlink/?linkid=2202330)) */ dataUri: string; /** Dataset type */ /** The discriminator possible values: uri_file, uri_folder */ type: DatasetType; /** Indicates if the dataset holds a reference to the storage, or the dataset manages storage itself. If true, the underlying data will not be deleted when the dataset version is deleted */ readonly isReference?: boolean; /** The Azure Storage Account connection name. Required if startPendingUploadVersion was not called before creating the Dataset */ connectionName?: string; /** Asset ID, a unique identifier for the asset */ readonly id?: string; /** The name of the resource */ readonly name: string; /** The version of the resource */ readonly version: string; /** The asset description text. */ description?: string; /** Tag dictionary. Tags can be added, removed, and updated. */ tags?: Record; } export declare function datasetVersionSerializer(item: DatasetVersion): any; export declare function datasetVersionDeserializer(item: any): DatasetVersion; /** Alias for DatasetVersionUnion */ export type DatasetVersionUnion = FileDatasetVersion | FolderDatasetVersion | DatasetVersion; export declare function datasetVersionUnionSerializer(item: DatasetVersionUnion): any; export declare function datasetVersionUnionDeserializer(item: any): DatasetVersionUnion; /** Enum to determine the type of data. */ export type DatasetType = "uri_file" | "uri_folder"; /** FileDatasetVersion Definition */ export interface FileDatasetVersion extends DatasetVersion { /** Dataset type */ type: "uri_file"; } export declare function fileDatasetVersionSerializer(item: FileDatasetVersion): any; export declare function fileDatasetVersionDeserializer(item: any): FileDatasetVersion; /** FileDatasetVersion Definition */ export interface FolderDatasetVersion extends DatasetVersion { /** Dataset type */ type: "uri_folder"; } export declare function folderDatasetVersionSerializer(item: FolderDatasetVersion): any; export declare function folderDatasetVersionDeserializer(item: any): FolderDatasetVersion; /** Represents a request for a pending upload. */ export interface PendingUploadRequest { /** If PendingUploadId is not provided, a random GUID will be used. */ pendingUploadId?: string; /** Azure Storage Account connection name to use for generating temporary SAS token */ connectionName?: string; /** BlobReference is the only supported type. */ pendingUploadType: "BlobReference"; } export declare function pendingUploadRequestSerializer(item: PendingUploadRequest): any; /** Represents the response for a pending upload request */ export interface PendingUploadResponse { /** Container-level read, write, list SAS. */ blobReference: BlobReference; /** ID for this upload request. */ pendingUploadId: string; /** Version of asset to be created if user did not specify version when initially creating upload */ version?: string; /** BlobReference is the only supported type */ pendingUploadType: "BlobReference"; } export declare function pendingUploadResponseDeserializer(item: any): PendingUploadResponse; /** Blob reference details. */ export interface BlobReference { /** Blob URI path for client to upload data. Example: `https://blob.windows.core.net/Container/Path` */ blobUri: string; /** ARM ID of the storage account to use. */ storageAccountArmId: string; /** Credential info to access the storage account. */ credential: SasCredential; } export declare function blobReferenceDeserializer(item: any): BlobReference; /** SAS Credential definition */ export interface SasCredential { /** SAS uri */ readonly sasUri: string; /** Type of credential */ readonly type: "SAS"; } export declare function blobReferenceSasCredentialDeserializer(item: any): SasCredential; /** Represents a reference to a blob for consumption */ export interface DatasetCredential { /** Credential info to access the storage account. */ blobReference: BlobReference; } export declare function datasetCredentialDeserializer(item: any): DatasetCredential; /** Model Deployment Definition */ export interface Deployment { /** The type of the deployment */ /** The discriminator possible values: ModelDeployment */ type: DeploymentType; /** Name of the deployment */ readonly name: string; } export declare function deploymentDeserializer(item: any): Deployment; /** Alias for DeploymentUnion */ export type DeploymentUnion = ModelDeployment | Deployment; export declare function deploymentUnionDeserializer(item: any): DeploymentUnion; /** Type of DeploymentType */ export type DeploymentType = "ModelDeployment"; /** Model Deployment Definition */ export interface ModelDeployment extends Deployment { /** The type of the deployment */ type: "ModelDeployment"; /** Publisher-specific name of the deployed model */ readonly modelName: string; /** Publisher-specific version of the deployed model */ readonly modelVersion: string; /** Name of the deployed model's publisher */ readonly modelPublisher: string; /** Capabilities of deployed model */ readonly capabilities: Record; /** Sku of the model deployment */ readonly sku: ModelDeploymentSku; /** Name of the connection the deployment comes from */ readonly connectionName?: string; } export declare function modelDeploymentDeserializer(item: any): ModelDeployment; /** Sku information */ export interface ModelDeploymentSku { /** Sku capacity */ capacity: number; /** Sku family */ family: string; /** Sku name */ name: string; /** Sku size */ size: string; /** Sku tier */ tier: string; } export declare function modelDeploymentSkuDeserializer(item: any): ModelDeploymentSku; /** Paged collection of Deployment items */ export interface _PagedDeployment { /** The Deployment items on this page */ value: DeploymentUnion[]; /** The link to the next page of items */ nextLink?: string; } export declare function _pagedDeploymentDeserializer(item: any): _PagedDeployment; export declare function deploymentUnionArrayDeserializer(result: Array): any[]; /** Paged collection of Index items */ export interface _PagedIndex { /** The Index items on this page */ value: IndexUnion[]; /** The link to the next page of items */ nextLink?: string; } export declare function _pagedIndexDeserializer(item: any): _PagedIndex; export declare function indexUnionArraySerializer(result: Array): any[]; export declare function indexUnionArrayDeserializer(result: Array): any[]; /** Index resource Definition */ export interface Index { /** Type of index */ /** The discriminator possible values: AzureSearch, ManagedAzureSearch, CosmosDBNoSqlVectorStore */ type: IndexType; /** Asset ID, a unique identifier for the asset */ readonly id?: string; /** The name of the resource */ readonly name: string; /** The version of the resource */ readonly version: string; /** The asset description text. */ description?: string; /** Tag dictionary. Tags can be added, removed, and updated. */ tags?: Record; } export declare function indexSerializer(item: Index): any; export declare function indexDeserializer(item: any): Index; /** Alias for IndexUnion */ export type IndexUnion = AzureAISearchIndex | ManagedAzureAISearchIndex | CosmosDBIndex | Index; export declare function indexUnionSerializer(item: IndexUnion): any; export declare function indexUnionDeserializer(item: any): IndexUnion; /** Type of IndexType */ export type IndexType = "AzureSearch" | "CosmosDBNoSqlVectorStore" | "ManagedAzureSearch"; /** Azure AI Search Index Definition */ export interface AzureAISearchIndex extends Index { /** Type of index */ type: "AzureSearch"; /** Name of connection to Azure AI Search */ connectionName: string; /** Name of index in Azure AI Search resource to attach */ indexName: string; /** Field mapping configuration */ fieldMapping?: FieldMapping; } export declare function azureAISearchIndexSerializer(item: AzureAISearchIndex): any; export declare function azureAISearchIndexDeserializer(item: any): AzureAISearchIndex; /** Field mapping configuration class */ export interface FieldMapping { /** List of fields with text content */ contentFields: string[]; /** Path of file to be used as a source of text content */ filepathField?: string; /** Field containing the title of the document */ titleField?: string; /** Field containing the url of the document */ urlField?: string; /** List of fields with vector content */ vectorFields?: string[]; /** List of fields with metadata content */ metadataFields?: string[]; } export declare function fieldMappingSerializer(item: FieldMapping): any; export declare function fieldMappingDeserializer(item: any): FieldMapping; /** Managed Azure AI Search Index Definition */ export interface ManagedAzureAISearchIndex extends Index { /** Type of index */ type: "ManagedAzureSearch"; /** Vector store id of managed index */ vectorStoreId: string; } export declare function managedAzureAISearchIndexSerializer(item: ManagedAzureAISearchIndex): any; export declare function managedAzureAISearchIndexDeserializer(item: any): ManagedAzureAISearchIndex; /** CosmosDB Vector Store Index Definition */ export interface CosmosDBIndex extends Index { /** Type of index */ type: "CosmosDBNoSqlVectorStore"; /** Name of connection to CosmosDB */ connectionName: string; /** Name of the CosmosDB Database */ databaseName: string; /** Name of CosmosDB Container */ containerName: string; /** Embedding model configuration */ embeddingConfiguration: EmbeddingConfiguration; /** Field mapping configuration */ fieldMapping: FieldMapping; } export declare function cosmosDBIndexSerializer(item: CosmosDBIndex): any; export declare function cosmosDBIndexDeserializer(item: any): CosmosDBIndex; /** Embedding configuration class */ export interface EmbeddingConfiguration { /** Deployment name of embedding model. It can point to a model deployment either in the parent AIServices or a connection. */ modelDeploymentName: string; /** Embedding field */ embeddingField: string; } export declare function embeddingConfigurationSerializer(item: EmbeddingConfiguration): any; export declare function embeddingConfigurationDeserializer(item: any): EmbeddingConfiguration; /** Version indicator determining which agent version backs the session. */ export interface VersionIndicator { /** The type of version indicator. */ /** The discriminator possible values: version_ref */ type: VersionIndicatorType; } export declare function versionIndicatorSerializer(item: VersionIndicator): any; export declare function versionIndicatorDeserializer(item: any): VersionIndicator; /** Alias for VersionIndicatorUnion */ export type VersionIndicatorUnion = VersionRefIndicator | VersionIndicator; export declare function versionIndicatorUnionSerializer(item: VersionIndicatorUnion): any; export declare function versionIndicatorUnionDeserializer(item: any): VersionIndicatorUnion; /** The type of version indicator used to determine the agent version backing a session. */ export type VersionIndicatorType = "version_ref"; /** Version indicator that references a specific agent version by name. */ export interface VersionRefIndicator extends VersionIndicator { /** Discriminator value for version_ref. */ type: "version_ref"; /** The agent version identifier returned by the agent version APIs. */ agent_version: string; } export declare function versionRefIndicatorSerializer(item: VersionRefIndicator): any; export declare function versionRefIndicatorDeserializer(item: any): VersionRefIndicator; /** An agent session providing a long-lived compute sandbox for hosted agent invocations. */ export interface AgentSessionResource { /** The session identifier. */ agent_session_id: string; /** The version indicator determining which agent version backs this session. */ version_indicator: VersionIndicatorUnion; /** The current status of the session. */ status: AgentSessionStatus; /** The Unix timestamp (in seconds) when the session was created. */ readonly created_at: Date; /** The Unix timestamp (in seconds) when the session was last accessed. */ readonly last_accessed_at: Date; /** The Unix timestamp (in seconds) when the session expires (rolling, 30 days from last activity). */ readonly expires_at: Date; } export declare function agentSessionResourceDeserializer(item: any): AgentSessionResource; /** The status of an agent session. */ export type AgentSessionStatus = "creating" | "active" | "idle" | "updating" | "failed" | "deleting" | "deleted" | "expired"; /** The response data for a requested list of items. */ export interface _AgentsPagedResultAgentSessionResource { /** The requested list of items. */ data: AgentSessionResource[]; /** The first ID represented in this list. */ first_id?: string; /** The last ID represented in this list. */ last_id?: string; /** A value indicating whether there are additional values available not captured in this list. */ has_more: boolean; } export declare function _agentsPagedResultAgentSessionResourceDeserializer(item: any): _AgentsPagedResultAgentSessionResource; export declare function agentSessionResourceArrayDeserializer(result: Array): any[]; /** Response from uploading a file to a session sandbox. */ export interface SessionFileWriteResponse { /** The path where the file was written, relative to the session home directory. */ path: string; /** Number of bytes written. */ bytes_written: number; } export declare function sessionFileWriteResponseDeserializer(item: any): SessionFileWriteResponse; /** Response from listing a directory in a session sandbox. */ export interface SessionDirectoryListResponse { /** The path that was listed, relative to the session home directory. */ path: string; /** The directory entries. */ entries: SessionDirectoryEntry[]; } export declare function sessionDirectoryListResponseDeserializer(item: any): SessionDirectoryListResponse; export declare function sessionDirectoryEntryArrayDeserializer(result: Array): any[]; /** A single entry in a directory listing. */ export interface SessionDirectoryEntry { /** The name of the file or directory. */ name: string; /** The size in bytes (0 for directories). */ size: number; /** Whether this entry is a directory. */ is_directory: boolean; /** The last modification time in UTC (ISO 8601). */ modified_time: Date; } export declare function sessionDirectoryEntryDeserializer(item: any): SessionDirectoryEntry; /** Evaluation Taxonomy Definition */ export interface EvaluationTaxonomy { /** Asset ID, a unique identifier for the asset */ readonly id?: string; /** The name of the resource */ readonly name: string; /** The version of the resource */ readonly version: string; /** The asset description text. */ description?: string; /** Tag dictionary. Tags can be added, removed, and updated. */ tags?: Record; /** Input configuration for the evaluation taxonomy. */ taxonomyInput: EvaluationTaxonomyInputUnion; /** List of taxonomy categories. */ taxonomyCategories?: TaxonomyCategory[]; /** Additional properties for the evaluation taxonomy. */ properties?: Record; } export declare function evaluationTaxonomySerializer(item: EvaluationTaxonomy): any; export declare function evaluationTaxonomyDeserializer(item: any): EvaluationTaxonomy; /** Input configuration for the evaluation taxonomy. */ export interface EvaluationTaxonomyInput { /** Input type of the evaluation taxonomy. */ /** The discriminator possible values: agent */ type: EvaluationTaxonomyInputType; } export declare function evaluationTaxonomyInputSerializer(item: EvaluationTaxonomyInput): any; export declare function evaluationTaxonomyInputDeserializer(item: any): EvaluationTaxonomyInput; /** Alias for EvaluationTaxonomyInputUnion */ export type EvaluationTaxonomyInputUnion = AgentTaxonomyInput | EvaluationTaxonomyInput; export declare function evaluationTaxonomyInputUnionSerializer(item: EvaluationTaxonomyInputUnion): any; export declare function evaluationTaxonomyInputUnionDeserializer(item: any): EvaluationTaxonomyInputUnion; /** Type of the evaluation taxonomy input. */ export type EvaluationTaxonomyInputType = "agent" | "policy"; /** Input configuration for the evaluation taxonomy when the input type is agent. */ export interface AgentTaxonomyInput extends EvaluationTaxonomyInput { /** Input type of the evaluation taxonomy. */ type: "agent"; /** Target configuration for the agent. */ target: TargetUnion; /** List of risk categories to evaluate against. */ riskCategories: RiskCategory[]; } export declare function agentTaxonomyInputSerializer(item: AgentTaxonomyInput): any; export declare function agentTaxonomyInputDeserializer(item: any): AgentTaxonomyInput; /** Base class for targets with discriminator support. */ export interface Target { /** The type of target. */ /** The discriminator possible values: azure_ai_model, azure_ai_agent */ type: string; } export declare function targetSerializer(item: Target): any; export declare function targetDeserializer(item: any): Target; /** Alias for TargetUnion */ export type TargetUnion = AzureAIModelTarget | AzureAIAgentTarget | Target; export declare function targetUnionSerializer(item: TargetUnion): any; export declare function targetUnionDeserializer(item: any): TargetUnion; /** Represents a target specifying an Azure AI model for operations requiring model selection. */ export interface AzureAIModelTarget extends Target { /** The type of target, always `azure_ai_model`. */ type: "azure_ai_model"; /** The unique identifier of the Azure AI model. */ model?: string; /** The parameters used to control the sampling behavior of the model during text generation. */ sampling_params?: ModelSamplingParams; } export declare function azureAIModelTargetSerializer(item: AzureAIModelTarget): any; export declare function azureAIModelTargetDeserializer(item: any): AzureAIModelTarget; /** Represents a set of parameters used to control the sampling behavior of a language model during text generation. */ export interface ModelSamplingParams { /** The temperature parameter for sampling. */ temperature: number; /** The top-p parameter for nucleus sampling. */ top_p: number; /** The random seed for reproducibility. */ seed: number; /** The maximum number of tokens allowed in the completion. */ max_completion_tokens: number; } export declare function modelSamplingParamsSerializer(item: ModelSamplingParams): any; export declare function modelSamplingParamsDeserializer(item: any): ModelSamplingParams; /** Represents a target specifying an Azure AI agent. */ export interface AzureAIAgentTarget extends Target { /** The type of target, always `azure_ai_agent`. */ type: "azure_ai_agent"; /** The unique identifier of the Azure AI agent. */ name: string; /** The version of the Azure AI agent. */ version?: string; /** The parameters used to control the sampling behavior of the agent during text generation. */ tool_descriptions?: ToolDescription[]; } export declare function azureAIAgentTargetSerializer(item: AzureAIAgentTarget): any; export declare function azureAIAgentTargetDeserializer(item: any): AzureAIAgentTarget; export declare function toolDescriptionArraySerializer(result: Array): any[]; export declare function toolDescriptionArrayDeserializer(result: Array): any[]; /** Description of a tool that can be used by an agent. */ export interface ToolDescription { /** The name of the tool. */ name?: string; /** A brief description of the tool's purpose. */ description?: string; } export declare function toolDescriptionSerializer(item: ToolDescription): any; export declare function toolDescriptionDeserializer(item: any): ToolDescription; /** Risk category for the attack objective. */ export type RiskCategory = "HateUnfairness" | "Violence" | "Sexual" | "SelfHarm" | "ProtectedMaterial" | "CodeVulnerability" | "UngroundedAttributes" | "ProhibitedActions" | "SensitiveDataLeakage" | "TaskAdherence"; export declare function taxonomyCategoryArraySerializer(result: Array): any[]; export declare function taxonomyCategoryArrayDeserializer(result: Array): any[]; /** Taxonomy category definition. */ export interface TaxonomyCategory { /** Unique identifier of the taxonomy category. */ id: string; /** Name of the taxonomy category. */ name: string; /** Description of the taxonomy category. */ description?: string; /** Risk category associated with this taxonomy category. */ riskCategory: RiskCategory; /** List of taxonomy sub categories. */ subCategories: TaxonomySubCategory[]; /** Additional properties for the taxonomy category. */ properties?: Record; } export declare function taxonomyCategorySerializer(item: TaxonomyCategory): any; export declare function taxonomyCategoryDeserializer(item: any): TaxonomyCategory; export declare function taxonomySubCategoryArraySerializer(result: Array): any[]; export declare function taxonomySubCategoryArrayDeserializer(result: Array): any[]; /** Taxonomy sub-category definition. */ export interface TaxonomySubCategory { /** Unique identifier of the taxonomy sub-category. */ id: string; /** Name of the taxonomy sub-category. */ name: string; /** Description of the taxonomy sub-category. */ description?: string; /** List of taxonomy items under this sub-category. */ enabled: boolean; /** Additional properties for the taxonomy sub-category. */ properties?: Record; } export declare function taxonomySubCategorySerializer(item: TaxonomySubCategory): any; export declare function taxonomySubCategoryDeserializer(item: any): TaxonomySubCategory; /** Paged collection of EvaluationTaxonomy items */ export interface _PagedEvaluationTaxonomy { /** The EvaluationTaxonomy items on this page */ value: EvaluationTaxonomy[]; /** The link to the next page of items */ nextLink?: string; } export declare function _pagedEvaluationTaxonomyDeserializer(item: any): _PagedEvaluationTaxonomy; export declare function evaluationTaxonomyArraySerializer(result: Array): any[]; export declare function evaluationTaxonomyArrayDeserializer(result: Array): any[]; /** Paged collection of EvaluatorVersion items */ export interface _PagedEvaluatorVersion { /** The EvaluatorVersion items on this page */ value: EvaluatorVersion[]; /** The link to the next page of items */ nextLink?: string; } export declare function _pagedEvaluatorVersionDeserializer(item: any): _PagedEvaluatorVersion; export declare function evaluatorVersionArraySerializer(result: Array): any[]; export declare function evaluatorVersionArrayDeserializer(result: Array): any[]; /** Evaluator Definition */ export interface EvaluatorVersion { /** Display Name for evaluator. It helps to find the evaluator easily in AI Foundry. It does not need to be unique. */ display_name?: string; /** Metadata about the evaluator */ metadata?: Record; /** The type of the evaluator */ evaluator_type: EvaluatorType; /** The categories of the evaluator */ categories: EvaluatorCategory[]; /** Definition of the evaluator */ definition: EvaluatorDefinitionUnion; /** Creator of the evaluator */ readonly created_by?: string; /** Creation date/time of the evaluator */ readonly created_at?: string; /** Last modified date/time of the evaluator */ readonly modified_at?: string; /** Asset ID, a unique identifier for the asset */ readonly id?: string; /** The name of the resource */ readonly name: string; /** The version of the resource */ readonly version?: string; /** The asset description text. */ description?: string; /** Tag dictionary. Tags can be added, removed, and updated. */ tags?: Record; } export declare function evaluatorVersionSerializer(item: EvaluatorVersion): any; export declare function evaluatorVersionDeserializer(item: any): EvaluatorVersion; /** The type of the evaluator */ export type EvaluatorType = "builtin" | "custom"; /** The category of the evaluator */ export type EvaluatorCategory = "quality" | "safety" | "agents"; /** Base evaluator configuration with discriminator */ export interface EvaluatorDefinition { /** The type of evaluator definition */ /** The discriminator possible values: code, prompt */ type: EvaluatorDefinitionType; /** The JSON schema (Draft 2020-12) for the evaluator's input parameters. This includes parameters like type, properties, required. */ init_parameters?: Record; /** The JSON schema (Draft 2020-12) for the evaluator's input data. This includes parameters like type, properties, required. */ data_schema?: Record; /** List of output metrics produced by this evaluator */ metrics?: Record; } export declare function evaluatorDefinitionSerializer(item: EvaluatorDefinition): any; export declare function evaluatorDefinitionDeserializer(item: any): EvaluatorDefinition; /** Alias for EvaluatorDefinitionUnion */ export type EvaluatorDefinitionUnion = CodeBasedEvaluatorDefinition | PromptBasedEvaluatorDefinition | EvaluatorDefinition; export declare function evaluatorDefinitionUnionSerializer(item: EvaluatorDefinitionUnion): any; export declare function evaluatorDefinitionUnionDeserializer(item: any): EvaluatorDefinitionUnion; /** The type of evaluator definition */ export type EvaluatorDefinitionType = "prompt" | "code" | "prompt_and_code" | "service" | "openai_graders"; export declare function evaluatorMetricRecordSerializer(item: Record): Record; export declare function evaluatorMetricRecordDeserializer(item: Record): Record; /** Evaluator Metric */ export interface EvaluatorMetric { /** Type of the metric. */ type?: EvaluatorMetricType; /** It indicates whether a higher value is better or a lower value is better for this metric. */ desirable_direction?: EvaluatorMetricDirection; /** Minimum value for the metric */ min_value?: number; /** Maximum value for the metric. If not specified, it is assumed to be unbounded. */ max_value?: number; /** Default pass/fail threshold for this metric. */ threshold?: number; /** Indicates if this metric is primary when there are multiple metrics. */ is_primary?: boolean; } export declare function evaluatorMetricSerializer(item: EvaluatorMetric): any; export declare function evaluatorMetricDeserializer(item: any): EvaluatorMetric; /** The type of the evaluator */ export type EvaluatorMetricType = "ordinal" | "continuous" | "boolean"; /** The direction of the metric indicating whether a higher value is better, a lower value is better, or neutral */ export type EvaluatorMetricDirection = "increase" | "decrease" | "neutral"; /** Code-based evaluator definition using python code */ export interface CodeBasedEvaluatorDefinition extends EvaluatorDefinition { /** The type discriminator, always 'code'. */ type: "code"; /** Inline code text for the evaluator */ code_text?: string; /** The entry point Python file name for the uploaded evaluator code (e.g. 'answer_length_evaluator.py') */ entry_point?: string; /** The container image tag to use for evaluator code execution */ image_tag?: string; /** The blob URI for the evaluator storage */ blob_uri?: string; } export declare function codeBasedEvaluatorDefinitionSerializer(item: CodeBasedEvaluatorDefinition): any; export declare function codeBasedEvaluatorDefinitionDeserializer(item: any): CodeBasedEvaluatorDefinition; /** Prompt-based evaluator */ export interface PromptBasedEvaluatorDefinition extends EvaluatorDefinition { /** The type discriminator, always 'prompt'. */ type: "prompt"; /** The prompt text used for evaluation */ prompt_text: string; } export declare function promptBasedEvaluatorDefinitionSerializer(item: PromptBasedEvaluatorDefinition): any; export declare function promptBasedEvaluatorDefinitionDeserializer(item: any): PromptBasedEvaluatorDefinition; /** The response body for cluster insights. */ export interface Insight { /** The unique identifier for the insights report. */ readonly insight_id?: string; /** Metadata about the insights report. */ readonly metadata?: InsightsMetadata; /** The current state of the insights. */ readonly state?: OperationState; /** User friendly display name for the insight. */ displayName: string; /** Request for the insights analysis. */ request: InsightRequestUnion; /** The result of the insights report. */ readonly result?: InsightResultUnion; } export declare function insightSerializer(item: Insight): any; export declare function insightDeserializer(item: any): Insight; /** Metadata about the insights. */ export interface InsightsMetadata { /** The timestamp when the insights were created. */ createdAt: Date; /** The timestamp when the insights were completed. */ completedAt?: Date; } export declare function insightsMetadataDeserializer(item: any): InsightsMetadata; /** Enum describing allowed operation states. */ export type OperationState = "NotStarted" | "Running" | "Succeeded" | "Failed" | "Canceled"; /** The request of the insights report. */ export interface InsightRequest { /** The type of request. */ /** The discriminator possible values: EvaluationRunClusterInsight, AgentClusterInsight, EvaluationComparison */ type: InsightType; } export declare function insightRequestSerializer(item: InsightRequest): any; export declare function insightRequestDeserializer(item: any): InsightRequest; /** Alias for InsightRequestUnion */ export type InsightRequestUnion = EvaluationRunClusterInsightRequest | AgentClusterInsightRequest | EvaluationComparisonInsightRequest | InsightRequest; export declare function insightRequestUnionSerializer(item: InsightRequestUnion): any; export declare function insightRequestUnionDeserializer(item: any): InsightRequestUnion; /** The request of the insights. */ export type InsightType = "EvaluationRunClusterInsight" | "AgentClusterInsight" | "EvaluationComparison"; /** Insights on set of Evaluation Results */ export interface EvaluationRunClusterInsightRequest extends InsightRequest { /** The type of insights request. */ type: "EvaluationRunClusterInsight"; /** Evaluation Id for the insights. */ evalId: string; /** List of evaluation run IDs for the insights. */ runIds: string[]; /** Configuration of the model used in the insight generation. */ modelConfiguration?: InsightModelConfiguration; } export declare function evaluationRunClusterInsightRequestSerializer(item: EvaluationRunClusterInsightRequest): any; export declare function evaluationRunClusterInsightRequestDeserializer(item: any): EvaluationRunClusterInsightRequest; /** Configuration of the model used in the insight generation. */ export interface InsightModelConfiguration { /** The model deployment to be evaluated. Accepts either the deployment name alone or with the connection name as '{connectionName}/'. */ modelDeploymentName: string; } export declare function insightModelConfigurationSerializer(item: InsightModelConfiguration): any; export declare function insightModelConfigurationDeserializer(item: any): InsightModelConfiguration; /** Insights on set of Agent Evaluation Results */ export interface AgentClusterInsightRequest extends InsightRequest { /** The type of request. */ type: "AgentClusterInsight"; /** Identifier for the agent. */ agentName: string; /** Configuration of the model used in the insight generation. */ modelConfiguration?: InsightModelConfiguration; } export declare function agentClusterInsightRequestSerializer(item: AgentClusterInsightRequest): any; export declare function agentClusterInsightRequestDeserializer(item: any): AgentClusterInsightRequest; /** Evaluation Comparison Request */ export interface EvaluationComparisonInsightRequest extends InsightRequest { /** The type of request. */ type: "EvaluationComparison"; /** Identifier for the evaluation. */ evalId: string; /** The baseline run ID for comparison. */ baselineRunId: string; /** List of treatment run IDs for comparison. */ treatmentRunIds: string[]; } export declare function evaluationComparisonInsightRequestSerializer(item: EvaluationComparisonInsightRequest): any; export declare function evaluationComparisonInsightRequestDeserializer(item: any): EvaluationComparisonInsightRequest; /** The result of the insights. */ export interface InsightResult { /** The type of insights result. */ /** The discriminator possible values: EvaluationComparison, EvaluationRunClusterInsight, AgentClusterInsight */ type: InsightType; } export declare function insightResultDeserializer(item: any): InsightResult; /** Alias for InsightResultUnion */ export type InsightResultUnion = EvaluationComparisonInsightResult | EvaluationRunClusterInsightResult | AgentClusterInsightResult | InsightResult; export declare function insightResultUnionDeserializer(item: any): InsightResultUnion; /** Insights from the evaluation comparison. */ export interface EvaluationComparisonInsightResult extends InsightResult { /** The type of insights result. */ type: "EvaluationComparison"; /** Comparison results for each treatment run against the baseline. */ comparisons: EvalRunResultComparison[]; /** The statistical method used for comparison. */ method: string; } export declare function evaluationComparisonInsightResultDeserializer(item: any): EvaluationComparisonInsightResult; export declare function evalRunResultComparisonArrayDeserializer(result: Array): any[]; /** Comparison results for treatment runs against the baseline. */ export interface EvalRunResultComparison { /** Name of the testing criteria. */ testingCriteria: string; /** Metric being evaluated. */ metric: string; /** Name of the evaluator for this testing criteria. */ evaluator: string; /** Summary statistics of the baseline run. */ baselineRunSummary: EvalRunResultSummary; /** List of comparison results for each treatment run. */ compareItems: EvalRunResultCompareItem[]; } export declare function evalRunResultComparisonDeserializer(item: any): EvalRunResultComparison; /** Summary statistics of a metric in an evaluation run. */ export interface EvalRunResultSummary { /** The evaluation run ID. */ runId: string; /** Number of samples in the evaluation run. */ sampleCount: number; /** Average value of the metric in the evaluation run. */ average: number; /** Standard deviation of the metric in the evaluation run. */ standardDeviation: number; } export declare function evalRunResultSummaryDeserializer(item: any): EvalRunResultSummary; export declare function evalRunResultCompareItemArrayDeserializer(result: Array): any[]; /** Metric comparison for a treatment against the baseline. */ export interface EvalRunResultCompareItem { /** The treatment run ID. */ treatmentRunId: string; /** Summary statistics of the treatment run. */ treatmentRunSummary: EvalRunResultSummary; /** Estimated difference between treatment and baseline. */ deltaEstimate: number; /** P-value for the treatment effect. */ pValue: number; /** Type of treatment effect. */ treatmentEffect: TreatmentEffectType; } export declare function evalRunResultCompareItemDeserializer(item: any): EvalRunResultCompareItem; /** Treatment Effect Type. */ export type TreatmentEffectType = "TooFewSamples" | "Inconclusive" | "Changed" | "Improved" | "Degraded"; /** Insights from the evaluation run cluster analysis. */ export interface EvaluationRunClusterInsightResult extends InsightResult { /** The type of insights result. */ type: "EvaluationRunClusterInsight"; /** The cluster insight details. */ clusterInsight: ClusterInsightResult; } export declare function evaluationRunClusterInsightResultDeserializer(item: any): EvaluationRunClusterInsightResult; /** Insights from the cluster analysis. */ export interface ClusterInsightResult { /** Summary of the insights report. */ summary: InsightSummary; /** List of clusters identified in the insights. */ clusters: InsightCluster[]; /** * Optional mapping of IDs to 2D coordinates used by the UX for visualization. * * The map keys are string identifiers (for example, a cluster id or a sample id) * and the values are the coordinates and visual size for rendering on a 2D chart. * * This property is omitted unless the client requests coordinates (for example, * by passing `includeCoordinates=true` as a query parameter). * * Example: * ``` * { * "cluster-1": { "x": 12, "y": 34, "size": 8 }, * "sample-123": { "x": 18, "y": 22, "size": 4 } * } * ``` * * Coordinates are intended only for client-side visualization and do not * modify the canonical insights results. */ coordinates?: Record; } export declare function clusterInsightResultDeserializer(item: any): ClusterInsightResult; /** Summary of the error cluster analysis. */ export interface InsightSummary { /** Total number of samples analyzed. */ sampleCount: number; /** Total number of unique subcluster labels. */ uniqueSubclusterCount: number; /** Total number of unique clusters. */ uniqueClusterCount: number; /** Method used for clustering. */ method: string; /** Token usage while performing clustering analysis */ usage: ClusterTokenUsage; } export declare function insightSummaryDeserializer(item: any): InsightSummary; /** Token usage for cluster analysis */ export interface ClusterTokenUsage { /** input token usage */ inputTokenUsage: number; /** output token usage */ outputTokenUsage: number; /** total token usage */ totalTokenUsage: number; } export declare function clusterTokenUsageDeserializer(item: any): ClusterTokenUsage; export declare function insightClusterArrayDeserializer(result: Array): any[]; /** A cluster of analysis samples. */ export interface InsightCluster { /** The id of the analysis cluster. */ id: string; /** Label for the cluster */ label: string; /** Suggestion for the cluster */ suggestion: string; /** The title of the suggestion for the cluster */ suggestionTitle: string; /** Description of the analysis cluster. */ description: string; /** The weight of the analysis cluster. This indicate number of samples in the cluster. */ weight: number; /** List of subclusters within this cluster. Empty if no subclusters exist. */ subClusters?: InsightCluster[]; /** List of samples that belong to this cluster. Empty if samples are part of subclusters. */ samples?: InsightSampleUnion[]; } export declare function insightClusterDeserializer(item: any): InsightCluster; export declare function insightSampleUnionArrayDeserializer(result: Array): any[]; /** A sample from the analysis. */ export interface InsightSample { /** The unique identifier for the analysis sample. */ id: string; /** Sample type */ /** The discriminator possible values: EvaluationResultSample */ type: SampleType; /** Features to help with additional filtering of data in UX. */ features: Record; /** Info about the correlation for the analysis sample. */ correlationInfo: Record; } export declare function insightSampleDeserializer(item: any): InsightSample; /** Alias for InsightSampleUnion */ export type InsightSampleUnion = EvaluationResultSample | InsightSample; export declare function insightSampleUnionDeserializer(item: any): InsightSampleUnion; /** The type of sample used in the analysis. */ export type SampleType = "EvaluationResultSample"; /** A sample from the evaluation result. */ export interface EvaluationResultSample extends InsightSample { /** Evaluation Result Sample Type */ type: "EvaluationResultSample"; /** Evaluation result for the analysis sample. */ evaluationResult: EvalResult; } export declare function evaluationResultSampleDeserializer(item: any): EvaluationResultSample; /** Result of the evaluation. */ export interface EvalResult { /** name of the check */ name: string; /** type of the check */ type: string; /** score */ score: number; /** indicates if the check passed or failed */ passed: boolean; } export declare function evalResultDeserializer(item: any): EvalResult; export declare function chartCoordinateRecordDeserializer(item: Record): Record; /** Coordinates for the analysis chart. */ export interface ChartCoordinate { /** X-axis coordinate. */ x: number; /** Y-axis coordinate. */ y: number; /** Size of the chart element. */ size: number; } export declare function chartCoordinateDeserializer(item: any): ChartCoordinate; /** Insights from the agent cluster analysis. */ export interface AgentClusterInsightResult extends InsightResult { /** The type of insights result. */ type: "AgentClusterInsight"; /** The cluster insight details. */ clusterInsight: ClusterInsightResult; } export declare function agentClusterInsightResultDeserializer(item: any): AgentClusterInsightResult; /** Paged collection of Insight items */ export interface _PagedInsight { /** The Insight items on this page */ value: Insight[]; /** The link to the next page of items */ nextLink?: string; } export declare function _pagedInsightDeserializer(item: any): _PagedInsight; export declare function insightArraySerializer(result: Array): any[]; export declare function insightArrayDeserializer(result: Array): any[]; /** Base definition for memory store configurations. */ export interface MemoryStoreDefinition { /** The kind of the memory store. */ /** The discriminator possible values: default */ kind: MemoryStoreKind; } export declare function memoryStoreDefinitionSerializer(item: MemoryStoreDefinition): any; export declare function memoryStoreDefinitionDeserializer(item: any): MemoryStoreDefinition; /** Alias for MemoryStoreDefinitionUnion */ export type MemoryStoreDefinitionUnion = MemoryStoreDefaultDefinition | MemoryStoreDefinition; export declare function memoryStoreDefinitionUnionSerializer(item: MemoryStoreDefinitionUnion): any; export declare function memoryStoreDefinitionUnionDeserializer(item: any): MemoryStoreDefinitionUnion; /** The type of memory store implementation to use. */ export type MemoryStoreKind = "default"; /** Default memory store implementation. */ export interface MemoryStoreDefaultDefinition extends MemoryStoreDefinition { /** The kind of the memory store. */ kind: "default"; /** The name or identifier of the chat completion model deployment used for memory processing. */ chat_model: string; /** The name or identifier of the embedding model deployment used for memory processing. */ embedding_model: string; /** Default memory store options. */ options?: MemoryStoreDefaultOptions; } export declare function memoryStoreDefaultDefinitionSerializer(item: MemoryStoreDefaultDefinition): any; export declare function memoryStoreDefaultDefinitionDeserializer(item: any): MemoryStoreDefaultDefinition; /** Default memory store configurations. */ export interface MemoryStoreDefaultOptions { /** Whether to enable user profile extraction and storage. Default is true. */ user_profile_enabled: boolean; /** Specific categories or types of user profile information to extract and store. */ user_profile_details?: string; /** Whether to enable chat summary extraction and storage. Default is true. */ chat_summary_enabled: boolean; } export declare function memoryStoreDefaultOptionsSerializer(item: MemoryStoreDefaultOptions): any; export declare function memoryStoreDefaultOptionsDeserializer(item: any): MemoryStoreDefaultOptions; /** A memory store that can store and retrieve user memories. */ export interface MemoryStore { /** The object type, which is always 'memory_store'. */ object: "memory_store"; /** The unique identifier of the memory store. */ id: string; /** The Unix timestamp (seconds) when the memory store was created. */ created_at: Date; /** The Unix timestamp (seconds) when the memory store was last updated. */ updated_at: Date; /** The name of the memory store. */ name: string; /** A human-readable description of the memory store. */ description?: string; /** Arbitrary key-value metadata to associate with the memory store. */ metadata?: Record; /** The definition of the memory store. */ definition: MemoryStoreDefinitionUnion; } export declare function memoryStoreDeserializer(item: any): MemoryStore; /** The response data for a requested list of items. */ export interface _AgentsPagedResultMemoryStoreObject { /** The requested list of items. */ data: MemoryStore[]; /** The first ID represented in this list. */ first_id?: string; /** The last ID represented in this list. */ last_id?: string; /** A value indicating whether there are additional values available not captured in this list. */ has_more: boolean; } export declare function _agentsPagedResultMemoryStoreObjectDeserializer(item: any): _AgentsPagedResultMemoryStoreObject; export declare function memoryStoreArrayDeserializer(result: Array): any[]; /** model interface DeleteMemoryStoreResponse */ export interface DeleteMemoryStoreResponse { /** The object type. Always 'memory_store.deleted'. */ object: "memory_store.deleted"; /** The name of the memory store. */ name: string; /** Whether the memory store was successfully deleted. */ deleted: boolean; } export declare function deleteMemoryStoreResponseDeserializer(item: any): DeleteMemoryStoreResponse; /** Memory search response. */ export interface MemoryStoreSearchResponse { /** The unique ID of this search request. Use this value as previous_search_id in subsequent requests to perform incremental searches. */ search_id: string; /** Related memory items found during the search operation. */ memories: MemorySearchItem[]; /** Usage statistics associated with the memory search operation. */ usage: MemoryStoreOperationUsage; } export declare function memoryStoreSearchResponseDeserializer(item: any): MemoryStoreSearchResponse; export declare function memorySearchItemArrayDeserializer(result: Array): any[]; /** A retrieved memory item from memory search. */ export interface MemorySearchItem { /** Retrieved memory item. */ memory_item: MemoryItemUnion; } export declare function memorySearchItemDeserializer(item: any): MemorySearchItem; /** A single memory item stored in the memory store, containing content and metadata. */ export interface MemoryItem { /** The unique ID of the memory item. */ memory_id: string; /** The last update time of the memory item. */ updated_at: Date; /** The namespace that logically groups and isolates memories, such as a user ID. */ scope: string; /** The content of the memory. */ content: string; /** The kind of the memory item. */ /** The discriminator possible values: user_profile, chat_summary */ kind: MemoryItemKind; } export declare function memoryItemDeserializer(item: any): MemoryItem; /** Alias for MemoryItemUnion */ export type MemoryItemUnion = UserProfileMemoryItem | ChatSummaryMemoryItem | MemoryItem; export declare function memoryItemUnionDeserializer(item: any): MemoryItemUnion; /** Memory item kind. */ export type MemoryItemKind = "user_profile" | "chat_summary"; /** A memory item specifically containing user profile information extracted from conversations, such as preferences, interests, and personal details. */ export interface UserProfileMemoryItem extends MemoryItem { /** The kind of the memory item. */ kind: "user_profile"; } export declare function userProfileMemoryItemDeserializer(item: any): UserProfileMemoryItem; /** A memory item containing a summary extracted from conversations. */ export interface ChatSummaryMemoryItem extends MemoryItem { /** The kind of the memory item. */ kind: "chat_summary"; } export declare function chatSummaryMemoryItemDeserializer(item: any): ChatSummaryMemoryItem; /** Usage statistics of a memory store operation. */ export interface MemoryStoreOperationUsage { /** The number of embedding tokens. */ embedding_tokens: number; /** The number of input tokens. */ input_tokens: number; /** A detailed breakdown of the input tokens. */ input_tokens_details: ResponseUsageInputTokensDetails; /** The number of output tokens. */ output_tokens: number; /** A detailed breakdown of the output tokens. */ output_tokens_details: ResponseUsageOutputTokensDetails; /** The total number of tokens used. */ total_tokens: number; } export declare function memoryStoreOperationUsageDeserializer(item: any): MemoryStoreOperationUsage; /** model interface ResponseUsageInputTokensDetails */ export interface ResponseUsageInputTokensDetails { /** The number of cached input tokens used. */ cached_tokens: number; } export declare function responseUsageInputTokensDetailsDeserializer(item: any): ResponseUsageInputTokensDetails; /** model interface ResponseUsageOutputTokensDetails */ export interface ResponseUsageOutputTokensDetails { /** The number of output tokens used for reasoning. */ reasoning_tokens: number; } export declare function responseUsageOutputTokensDetailsDeserializer(item: any): ResponseUsageOutputTokensDetails; /** Provides the status of a memory store update operation. */ export interface MemoryStoreUpdateResponse { /** The unique ID of this update request. Use this value as previous_update_id in subsequent requests to perform incremental updates. */ update_id: string; /** The status of the memory update operation. One of "queued", "in_progress", "completed", "failed", or "superseded". */ status: MemoryStoreUpdateStatus; /** The update_id the operation was superseded by when status is "superseded". */ superseded_by?: string; /** The result of memory store update operation when status is "completed". */ result?: MemoryStoreUpdateCompletedResult; /** Error object that describes the error when status is "failed". */ error?: ErrorModel; } export declare function memoryStoreUpdateResponseDeserializer(item: any): MemoryStoreUpdateResponse; /** Status of a memory store update operation. */ export type MemoryStoreUpdateStatus = "queued" | "in_progress" | "completed" | "failed" | "superseded"; /** Memory update result. */ export interface MemoryStoreUpdateCompletedResult { /** A list of individual memory operations that were performed during the update. */ memory_operations: MemoryOperation[]; /** Usage statistics associated with the memory update operation. */ usage: MemoryStoreOperationUsage; } export declare function memoryStoreUpdateCompletedResultDeserializer(item: any): MemoryStoreUpdateCompletedResult; export declare function memoryOperationArrayDeserializer(result: Array): any[]; /** Represents a single memory operation (create, update, or delete) performed on a memory item. */ export interface MemoryOperation { /** The type of memory operation being performed. */ kind: MemoryOperationKind; /** The memory item to create, update, or delete. */ memory_item: MemoryItemUnion; } export declare function memoryOperationDeserializer(item: any): MemoryOperation; /** Memory operation kind. */ export type MemoryOperationKind = "create" | "update" | "delete"; /** Response for deleting memories from a scope. */ export interface MemoryStoreDeleteScopeResponse { /** The object type. Always 'memory_store.scope.deleted'. */ object: "memory_store.scope.deleted"; /** The name of the memory store. */ name: string; /** The scope from which memories were deleted. */ scope: string; /** Whether the deletion operation was successful. */ deleted: boolean; } export declare function memoryStoreDeleteScopeResponseDeserializer(item: any): MemoryStoreDeleteScopeResponse; /** Red team details. */ export interface RedTeam { /** Identifier of the red team run. */ readonly name: string; /** Name of the red-team run. */ displayName?: string; /** Number of simulation rounds. */ numTurns?: number; /** List of attack strategies or nested lists of attack strategies. */ attackStrategies?: AttackStrategy[]; /** Simulation-only or Simulation + Evaluation. Default false, if true the scan outputs conversation not evaluation result. */ simulationOnly?: boolean; /** List of risk categories to generate attack objectives for. */ riskCategories?: RiskCategory[]; /** Application scenario for the red team operation, to generate scenario specific attacks. */ applicationScenario?: string; /** Red team's tags. Unlike properties, tags are fully mutable. */ tags?: Record; /** Red team's properties. Unlike tags, properties are add-only. Once added, a property cannot be removed. */ properties?: Record; /** Status of the red-team. It is set by service and is read-only. */ readonly status?: string; /** Target configuration for the red-team run. */ target?: TargetConfigUnion; } export declare function redTeamSerializer(item: RedTeam): any; export declare function redTeamDeserializer(item: any): RedTeam; /** Strategies for attacks. */ export type AttackStrategy = "easy" | "moderate" | "difficult" | "ascii_art" | "ascii_smuggler" | "atbash" | "base64" | "binary" | "caesar" | "character_space" | "jailbreak" | "ansi_attack" | "character_swap" | "suffix_append" | "string_join" | "unicode_confusable" | "unicode_substitution" | "diacritic" | "flip" | "leetspeak" | "rot13" | "morse" | "url" | "baseline" | "indirect_jailbreak" | "tense" | "multi_turn" | "crescendo"; /** Abstract class for target configuration. */ export interface TargetConfig { /** Type of the model configuration. */ /** The discriminator possible values: AzureOpenAIModel */ type: string; } export declare function targetConfigSerializer(item: TargetConfig): any; export declare function targetConfigDeserializer(item: any): TargetConfig; /** Alias for TargetConfigUnion */ export type TargetConfigUnion = AzureOpenAIModelConfiguration | TargetConfig; export declare function targetConfigUnionSerializer(item: TargetConfigUnion): any; export declare function targetConfigUnionDeserializer(item: any): TargetConfigUnion; /** Azure OpenAI model configuration. The API version would be selected by the service for querying the model. */ export interface AzureOpenAIModelConfiguration extends TargetConfig { /** The type discriminator, always 'AzureOpenAIModel'. */ type: "AzureOpenAIModel"; /** Deployment name for AOAI model. Example: gpt-4o if in AIServices or connection based `connection_name/deployment_name` (e.g. `my-aoai-connection/gpt-4o`). */ modelDeploymentName: string; } export declare function azureOpenAIModelConfigurationSerializer(item: AzureOpenAIModelConfiguration): any; export declare function azureOpenAIModelConfigurationDeserializer(item: any): AzureOpenAIModelConfiguration; /** Paged collection of RedTeam items */ export interface _PagedRedTeam { /** The RedTeam items on this page */ value: RedTeam[]; /** The link to the next page of items */ nextLink?: string; } export declare function _pagedRedTeamDeserializer(item: any): _PagedRedTeam; export declare function redTeamArraySerializer(result: Array): any[]; export declare function redTeamArrayDeserializer(result: Array): any[]; /** Schedule model. */ export interface Schedule { /** Identifier of the schedule. */ readonly schedule_id?: string; /** Name of the schedule. */ displayName?: string; /** Description of the schedule. */ description?: string; /** Enabled status of the schedule. */ enabled: boolean; /** Provisioning status of the schedule. */ readonly provisioningStatus?: ScheduleProvisioningStatus; /** Trigger for the schedule. */ trigger: TriggerUnion; /** Task for the schedule. */ task: ScheduleTaskUnion; /** Schedule's tags. Unlike properties, tags are fully mutable. */ tags?: Record; /** Schedule's properties. Unlike tags, properties are add-only. Once added, a property cannot be removed. */ properties?: Record; /** System metadata for the resource. */ readonly systemData?: Record; } export declare function scheduleSerializer(item: Schedule): any; export declare function scheduleDeserializer(item: any): Schedule; /** Schedule provisioning status. */ export type ScheduleProvisioningStatus = "Creating" | "Updating" | "Deleting" | "Succeeded" | "Failed"; /** Base model for Trigger of the schedule. */ export interface Trigger { /** Type of the trigger. */ /** The discriminator possible values: Cron, Recurrence, OneTime */ type: TriggerType; } export declare function triggerSerializer(item: Trigger): any; export declare function triggerDeserializer(item: any): Trigger; /** Alias for TriggerUnion */ export type TriggerUnion = CronTrigger | RecurrenceTrigger | OneTimeTrigger | Trigger; export declare function triggerUnionSerializer(item: TriggerUnion): any; export declare function triggerUnionDeserializer(item: any): TriggerUnion; /** Type of the trigger. */ export type TriggerType = "Cron" | "Recurrence" | "OneTime"; /** Cron based trigger. */ export interface CronTrigger extends Trigger { /** The type discriminator, always 'Cron'. */ type: "Cron"; /** Cron expression that defines the schedule frequency. */ expression: string; /** Time zone for the cron schedule. */ timeZone?: string; /** Start time for the cron schedule in ISO 8601 format. */ startTime?: string; /** End time for the cron schedule in ISO 8601 format. */ endTime?: string; } export declare function cronTriggerSerializer(item: CronTrigger): any; export declare function cronTriggerDeserializer(item: any): CronTrigger; /** Recurrence based trigger. */ export interface RecurrenceTrigger extends Trigger { /** Type of the trigger. */ type: "Recurrence"; /** Start time for the recurrence schedule in ISO 8601 format. */ startTime?: string; /** End time for the recurrence schedule in ISO 8601 format. */ endTime?: string; /** Time zone for the recurrence schedule. */ timeZone?: string; /** Interval for the recurrence schedule. */ interval: number; /** Recurrence schedule for the recurrence trigger. */ schedule: RecurrenceScheduleUnion; } export declare function recurrenceTriggerSerializer(item: RecurrenceTrigger): any; export declare function recurrenceTriggerDeserializer(item: any): RecurrenceTrigger; /** Recurrence schedule model. */ export interface RecurrenceSchedule { /** Recurrence type for the recurrence schedule. */ /** The discriminator possible values: Hourly, Daily, Weekly, Monthly */ type: RecurrenceType; } export declare function recurrenceScheduleSerializer(item: RecurrenceSchedule): any; export declare function recurrenceScheduleDeserializer(item: any): RecurrenceSchedule; /** Alias for RecurrenceScheduleUnion */ export type RecurrenceScheduleUnion = HourlyRecurrenceSchedule | DailyRecurrenceSchedule | WeeklyRecurrenceSchedule | MonthlyRecurrenceSchedule | RecurrenceSchedule; export declare function recurrenceScheduleUnionSerializer(item: RecurrenceScheduleUnion): any; export declare function recurrenceScheduleUnionDeserializer(item: any): RecurrenceScheduleUnion; /** Recurrence type. */ export type RecurrenceType = "Hourly" | "Daily" | "Weekly" | "Monthly"; /** Hourly recurrence schedule. */ export interface HourlyRecurrenceSchedule extends RecurrenceSchedule { /** The type discriminator, always 'Hourly'. */ type: "Hourly"; } export declare function hourlyRecurrenceScheduleSerializer(item: HourlyRecurrenceSchedule): any; export declare function hourlyRecurrenceScheduleDeserializer(item: any): HourlyRecurrenceSchedule; /** Daily recurrence schedule. */ export interface DailyRecurrenceSchedule extends RecurrenceSchedule { /** Daily recurrence type. */ type: "Daily"; /** Hours for the recurrence schedule. */ hours: number[]; } export declare function dailyRecurrenceScheduleSerializer(item: DailyRecurrenceSchedule): any; export declare function dailyRecurrenceScheduleDeserializer(item: any): DailyRecurrenceSchedule; /** Weekly recurrence schedule. */ export interface WeeklyRecurrenceSchedule extends RecurrenceSchedule { /** Weekly recurrence type. */ type: "Weekly"; /** Days of the week for the recurrence schedule. */ daysOfWeek: DayOfWeek[]; } export declare function weeklyRecurrenceScheduleSerializer(item: WeeklyRecurrenceSchedule): any; export declare function weeklyRecurrenceScheduleDeserializer(item: any): WeeklyRecurrenceSchedule; /** Days of the week for recurrence schedule. */ export type DayOfWeek = "Sunday" | "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday"; /** Monthly recurrence schedule. */ export interface MonthlyRecurrenceSchedule extends RecurrenceSchedule { /** Monthly recurrence type. */ type: "Monthly"; /** Days of the month for the recurrence schedule. */ daysOfMonth: number[]; } export declare function monthlyRecurrenceScheduleSerializer(item: MonthlyRecurrenceSchedule): any; export declare function monthlyRecurrenceScheduleDeserializer(item: any): MonthlyRecurrenceSchedule; /** One-time trigger. */ export interface OneTimeTrigger extends Trigger { /** The type discriminator, always 'OneTime'. */ type: "OneTime"; /** Date and time for the one-time trigger in ISO 8601 format. */ triggerAt: string; /** Time zone for the one-time trigger. */ timeZone?: string; } export declare function oneTimeTriggerSerializer(item: OneTimeTrigger): any; export declare function oneTimeTriggerDeserializer(item: any): OneTimeTrigger; /** Schedule task model. */ export interface ScheduleTask { /** Type of the task. */ /** The discriminator possible values: Evaluation, Insight */ type: ScheduleTaskType; /** Configuration for the task. */ configuration?: Record; } export declare function scheduleTaskSerializer(item: ScheduleTask): any; export declare function scheduleTaskDeserializer(item: any): ScheduleTask; /** Alias for ScheduleTaskUnion */ export type ScheduleTaskUnion = EvaluationScheduleTask | InsightScheduleTask | ScheduleTask; export declare function scheduleTaskUnionSerializer(item: ScheduleTaskUnion): any; export declare function scheduleTaskUnionDeserializer(item: any): ScheduleTaskUnion; /** Type of the task. */ export type ScheduleTaskType = "Evaluation" | "Insight"; /** Evaluation task for the schedule. */ export interface EvaluationScheduleTask extends ScheduleTask { /** Type of the task, which is always 'Evaluation'. */ type: "Evaluation"; /** Identifier of the evaluation group. */ evalId: string; /** The evaluation run payload. */ evalRun: Record; } export declare function evaluationScheduleTaskSerializer(item: EvaluationScheduleTask): any; export declare function evaluationScheduleTaskDeserializer(item: any): EvaluationScheduleTask; /** model interface _EvaluationScheduleTaskEvalRun */ export interface _EvaluationScheduleTaskEvalRun { [key: string]: unknown; } export declare function _evaluationScheduleTaskEvalRunSerializer(_item: _EvaluationScheduleTaskEvalRun): any; export declare function _evaluationScheduleTaskEvalRunDeserializer(item: any): _EvaluationScheduleTaskEvalRun; /** Insight task for the schedule. */ export interface InsightScheduleTask extends ScheduleTask { /** Type of the task, which is always 'Insight'. */ type: "Insight"; /** The insight payload. */ insight: Insight; } export declare function insightScheduleTaskSerializer(item: InsightScheduleTask): any; export declare function insightScheduleTaskDeserializer(item: any): InsightScheduleTask; /** Paged collection of Schedule items */ export interface _PagedSchedule { /** The Schedule items on this page */ value: Schedule[]; /** The link to the next page of items */ nextLink?: string; } export declare function _pagedScheduleDeserializer(item: any): _PagedSchedule; export declare function scheduleArraySerializer(result: Array): any[]; export declare function scheduleArrayDeserializer(result: Array): any[]; /** Schedule run model. */ export interface ScheduleRun { /** Identifier of the schedule run. */ readonly runId: string; /** Identifier of the schedule. */ scheduleId: string; /** Trigger success status of the schedule run. */ readonly success: boolean; /** Trigger time of the schedule run. */ triggerTime?: string; /** Error information for the schedule run. */ readonly error?: string; /** Properties of the schedule run. */ readonly properties: Record; } export declare function scheduleRunDeserializer(item: any): ScheduleRun; /** Paged collection of ScheduleRun items */ export interface _PagedScheduleRun { /** The ScheduleRun items on this page */ value: ScheduleRun[]; /** The link to the next page of items */ nextLink?: string; } export declare function _pagedScheduleRunDeserializer(item: any): _PagedScheduleRun; export declare function scheduleRunArrayDeserializer(result: Array): any[]; /** Policy configuration for a toolbox, including content safety and other governance settings. */ export interface ToolboxPolicies { /** Responsible AI content filtering configuration. */ rai_config?: RaiConfig; } export declare function toolboxPoliciesSerializer(item: ToolboxPolicies): any; export declare function toolboxPoliciesDeserializer(item: any): ToolboxPolicies; /** A specific version of a toolbox. */ export interface ToolboxVersionObject { /** * Set of 16 key-value pairs that can be attached to an object. This can be * useful for storing additional information about the object in a structured * format, and querying for objects via API or the dashboard. * * Keys are strings with a maximum length of 64 characters. Values are strings * with a maximum length of 512 characters. */ metadata: Record; /** The unique identifier of the toolbox version. */ id: string; /** The name of the toolbox. */ name: string; /** The version identifier of the toolbox. Toolbox versions are immutable and every update creates a new version. */ version: string; /** A human-readable description of the toolbox. */ description?: string; /** The Unix timestamp (seconds) when the toolbox version was created. */ created_at: Date; /** The list of tools contained in this toolbox version. */ tools: ToolUnion[]; /** Policy configuration for the toolbox version. */ policies?: ToolboxPolicies; } export declare function toolboxVersionObjectDeserializer(item: any): ToolboxVersionObject; /** A toolbox that stores reusable tool definitions for agents. */ export interface ToolboxObject { /** The unique identifier of the toolbox. */ id: string; /** The name of the toolbox. */ name: string; /** The version identifier that the toolbox currently points to. Defaults to the latest version. Can be changed via updateToolbox. */ default_version: string; } export declare function toolboxObjectDeserializer(item: any): ToolboxObject; /** The response data for a requested list of items. */ export interface _AgentsPagedResultToolboxObject { /** The requested list of items. */ data: ToolboxObject[]; /** The first ID represented in this list. */ first_id?: string; /** The last ID represented in this list. */ last_id?: string; /** A value indicating whether there are additional values available not captured in this list. */ has_more: boolean; } export declare function _agentsPagedResultToolboxObjectDeserializer(item: any): _AgentsPagedResultToolboxObject; export declare function toolboxObjectArrayDeserializer(result: Array): any[]; /** The response data for a requested list of items. */ export interface _AgentsPagedResultToolboxVersionObject { /** The requested list of items. */ data: ToolboxVersionObject[]; /** The first ID represented in this list. */ first_id?: string; /** The last ID represented in this list. */ last_id?: string; /** A value indicating whether there are additional values available not captured in this list. */ has_more: boolean; } export declare function _agentsPagedResultToolboxVersionObjectDeserializer(item: any): _AgentsPagedResultToolboxVersionObject; export declare function toolboxVersionObjectArrayDeserializer(result: Array): any[]; /** A skill object. */ export interface SkillObject { /** The unique identifier of the skill. */ skill_id: string; /** Whether the skill was created from a zip blob package. */ has_blob: boolean; /** The unique name of the skill. */ name: string; /** A human-readable description of the skill. */ description?: string; /** * Set of 16 key-value pairs that can be attached to an object. This can be * useful for storing additional information about the object in a structured * format, and querying for objects via API or the dashboard. * * Keys are strings with a maximum length of 64 characters. Values are strings * with a maximum length of 512 characters. */ metadata?: Record; } export declare function skillObjectDeserializer(item: any): SkillObject; /** The response data for a requested list of items. */ export interface _AgentsPagedResultSkillObject { /** The requested list of items. */ data: SkillObject[]; /** The first ID represented in this list. */ first_id?: string; /** The last ID represented in this list. */ last_id?: string; /** A value indicating whether there are additional values available not captured in this list. */ has_more: boolean; } export declare function _agentsPagedResultSkillObjectDeserializer(item: any): _AgentsPagedResultSkillObject; export declare function skillObjectArrayDeserializer(result: Array): any[]; /** A deleted skill Object */ export interface DeleteSkillResponse { /** The unique name of the skill. */ name: string; /** Whether the skill was successfully deleted. */ deleted: boolean; } export declare function deleteSkillResponseDeserializer(item: any): DeleteSkillResponse; /** model interface UpdateToolboxRequest */ export interface UpdateToolboxRequest { /** The name of the toolbox to update. */ toolbox_name: string; /** The version identifier that the toolbox should point to. When set, the toolbox's default version will resolve to this version instead of the latest. */ default_version: string; } export declare function updateToolboxRequestSerializer(item: UpdateToolboxRequest): any; /** Alias for _ListVersionsRequestType */ export type _ListVersionsRequestType = EvaluatorType | "all"; export declare function _listVersionsRequestTypeSerializer(item: _ListVersionsRequestType): any; /** Type of AgentType */ export type AgentType = "agent" | "agent.version" | "agent.deleted" | "agent.version.deleted" | "agent.container"; /** Feature opt-in keys for agent definition operations supporting hosted or workflow agents. */ export type AgentDefinitionOptInKeys = "HostedAgents=V1Preview" | "WorkflowAgents=V1Preview" | "ContainerAgents=V1Preview" | "AgentEndpoints=V1Preview"; /** Type of PageOrder */ export type PageOrder = "asc" | "desc"; /** Type of FoundryFeaturesOptInKeys */ export type FoundryFeaturesOptInKeys = "Skills=V1Preview" | "Evaluations=V1Preview" | "Schedules=V1Preview" | "RedTeams=V1Preview" | "Insights=V1Preview" | "MemoryStores=V1Preview" | "Toolboxes=V1Preview"; /** The type of pending upload. */ export type PendingUploadType = "None" | "BlobReference"; /** Type of MemoryStoreType */ export type MemoryStoreType = "memory_store" | "memory_store.deleted" | "memory_store.scope.deleted"; /** Microsoft Foundry API versions */ export declare enum KnownApiVersions { /** Microsoft Foundry API version v1. */ v1 = "v1" } export type BetaSkillsDownloadResponse = { /** * BROWSER ONLY * * The response body as a browser Blob. * Always `undefined` in node.js. */ blobBody?: Promise; /** * NODEJS ONLY * * The response body as a node.js Readable stream. * Always `undefined` in the browser. */ readableStreamBody?: NodeJS.ReadableStream; }; export type BetaAgentsDownloadSessionFileResponse = { /** * BROWSER ONLY * * The response body as a browser Blob. * Always `undefined` in node.js. */ blobBody?: Promise; /** * NODEJS ONLY * * The response body as a node.js Readable stream. * Always `undefined` in the browser. */ readableStreamBody?: NodeJS.ReadableStream; }; //# sourceMappingURL=models.d.ts.map