import type { AgentSession } from "../../core/runtime/agent-session.js"; import type { AgentLoopPolicyOptions } from "@catui/agent-core"; import type { RpcSessionState, RpcLoopPolicyOptions, RpcSlashCommand } from "./rpc-types.js"; export type { RpcCommand, RpcExtensionUIRequest, RpcExtensionUIResponse, RpcResponse, RpcSessionState, RpcLoopPolicyOptions, } from "./rpc-types.js"; type RpcSlashCommandCatalogSession = Pick; type RpcStateSession = Pick; export declare function buildRpcSlashCommands(session: RpcSlashCommandCatalogSession): RpcSlashCommand[]; export declare function buildRpcSessionState(session: RpcStateSession): RpcSessionState; export declare function buildRpcLoopPolicyOptions(policy: RpcLoopPolicyOptions): Partial; /** * Run in RPC mode. * Listens for JSON commands on stdin, outputs events and responses on stdout. */ export declare function runRpcMode(session: AgentSession): Promise;