import { EventStream } from "../lib/event-streams.js";
import { ClientSDK, RequestOptions } from "../lib/sdks.js";
import * as operations from "../models/operations/index.js";
import { OrqResponses } from "./orqresponses.js";
export declare class Agents extends ClientSDK {
    private _responses?;
    get responses(): OrqResponses;
    /**
     * Create agent
     *
     * @remarks
     * Creates a new agent with the specified configuration, including model selection, instructions, tools, and knowledge bases. Agents are intelligent assistants that can execute tasks, interact with tools, and maintain context through memory stores. The agent can be configured with a primary model and optional fallback models for automatic failover, custom instructions for behavior control, and various settings to control execution limits and tool usage.
     */
    create(request: operations.CreateAgentRequestRequestBody, options?: RequestOptions): Promise<operations.CreateAgentRequestResponseBody>;
    /**
     * List agents
     *
     * @remarks
     * Retrieves a comprehensive list of agents configured in your workspace. Supports pagination for large datasets and returns agents sorted by creation date (newest first). Each agent in the response includes its complete configuration: model settings with fallback options, instructions, tools, knowledge bases, memory stores, and execution parameters. Use pagination parameters to efficiently navigate through large collections of agents.
     */
    list(limit?: number | undefined, startingAfter?: string | undefined, endingBefore?: string | undefined, type?: operations.QueryParamType | undefined, options?: RequestOptions): Promise<operations.ListAgentsResponseBody>;
    /**
     * Delete agent
     *
     * @remarks
     * Permanently removes an agent from the workspace. This operation is irreversible and will delete all associated configuration including model assignments, tools, knowledge bases, memory stores, and cached data. Active agent sessions will be terminated, and the agent key will become available for reuse.
     */
    delete(agentKey: string, options?: RequestOptions): Promise<void>;
    /**
     * Retrieve agent
     *
     * @remarks
     * Retrieves detailed information about a specific agent identified by its unique key or identifier. Returns the complete agent manifest including configuration settings, model assignments (primary and fallback), tools, knowledge bases, memory stores, instructions, and execution parameters. Use this endpoint to fetch the current state and configuration of an individual agent.
     */
    retrieve(agentKey: string, options?: RequestOptions): Promise<operations.RetrieveAgentRequestResponseBody>;
    /**
     * Update agent
     *
     * @remarks
     * Modifies an existing agent's configuration with partial updates. Supports updating any aspect of the agent including model assignments (primary and fallback), instructions, tools, knowledge bases, memory stores, and execution parameters. Only the fields provided in the request body will be updated; all other fields remain unchanged. Changes take effect immediately for new agent invocations.
     */
    update(requestBody: operations.UpdateAgentRequestBody, agentKey: string, options?: RequestOptions): Promise<operations.UpdateAgentResponseBody>;
    /**
     * Execute an agent task
     *
     * @remarks
     * Invokes an agent to perform a task with the provided input message. The agent will process the request using its configured model and tools, maintaining context through memory stores if configured. Supports automatic model fallback on primary model failure, tool execution, knowledge base retrieval, and continuation of previous conversations. Returns a task response that can be used to track execution status and retrieve results.
     *
     * @deprecated method: This will be removed in a future release, please migrate away from it as soon as possible.
     */
    invoke(key: string, requestBody?: operations.InvokeAgentRequestBody | undefined, options?: RequestOptions): Promise<operations.InvokeAgentA2ATaskResponse>;
    /**
     * Run an agent with configuration
     *
     * @remarks
     * Executes an agent using inline configuration or references an existing agent. Supports dynamic agent creation where the system automatically manages agent versioning - reusing existing agents with matching configurations or creating new versions when configurations differ. Ideal for programmatic agent execution with flexible configuration management. The agent processes messages in A2A format with support for memory context, tool execution, and automatic model fallback on failure.
     *
     * @deprecated method: This will be removed in a future release, please migrate away from it as soon as possible.
     */
    run(request: operations.RunAgentRequestBody, options?: RequestOptions): Promise<operations.RunAgentA2ATaskResponse>;
    /**
     * Run agent with streaming response
     *
     * @remarks
     * Dynamically configures and executes an agent while streaming the interaction in real-time via Server-Sent Events (SSE). Intelligently manages agent versioning by reusing existing agents with matching configurations or creating new versions when configurations differ. Combines the flexibility of inline configuration with real-time streaming, making it ideal for dynamic agent interactions with live feedback. The stream provides continuous updates including message chunks, tool executions, and status changes until completion or timeout.
     *
     * @deprecated method: This will be removed in a future release, please migrate away from it as soon as possible.
     */
    streamRun(request: operations.StreamRunAgentRequestBody, options?: RequestOptions): Promise<EventStream<operations.StreamRunAgentResponseBody>>;
    /**
     * Stream agent execution in real-time
     *
     * @remarks
     * Executes an agent and streams the interaction in real-time using Server-Sent Events (SSE). Provides live updates as the agent processes the request, including message chunks, tool calls, and execution status. Perfect for building responsive chat interfaces and monitoring agent progress. The stream continues until the agent completes its task, encounters an error, or reaches the configured timeout (default 30 minutes, configurable 1-3600 seconds).
     *
     * @deprecated method: This will be removed in a future release, please migrate away from it as soon as possible.
     */
    stream(requestBody: operations.StreamAgentRequestBody, key: string, options?: RequestOptions): Promise<EventStream<operations.StreamAgentResponseBody>>;
    /**
     * Refresh A2A agent card
     *
     * @remarks
     * Fetches the latest agent card from the external A2A agent and updates the cached card in the database. Similar to MCP server refresh functionality.
     */
    refreshKeyCard(request: operations.PostV2AgentsKeyCardRefreshRequest, options?: RequestOptions): Promise<operations.PostV2AgentsKeyCardRefreshResponseBody>;
}
//# sourceMappingURL=agents.d.ts.map