import type { AgentsSession } from "../session/types.js"; import type { Agent, AgentConfig } from "./schema.js"; /** List every agent (predefined + custom) visible to the session. */ export declare const listAgents: (session: AgentsSession) => Promise; /** Find one agent by `id` or `slug`. Returns `undefined` if not found. */ export declare const getAgent: (session: AgentsSession, idOrSlug: string) => Promise; export interface CreateAgentInput { name: string; description?: string; prompt?: string; tags?: string[]; config: AgentConfig; } /** Create a custom agent. Requires the caller's account to hold the Builder role. */ export declare const createAgent: (session: AgentsSession, input: CreateAgentInput) => Promise; export interface UpdateAgentInput { id: string; name: string; description?: string; config: AgentConfig; } /** Update an agent in place (`PUT /api/agents`, full-replacement of config). */ export declare const updateAgent: (session: AgentsSession, input: UpdateAgentInput) => Promise; /** Duplicate an agent under a new name (`POST /api/agents/{id}`). */ export declare const duplicateAgent: (session: AgentsSession, id: string, name: string) => Promise; /** Delete an agent (`DELETE /api/agents/{id}`). */ export declare const deleteAgent: (session: AgentsSession, id: string) => Promise;