/**
 * Agent Stream Controller
 *
 * SSE endpoint that streams real-time agent execution events to the frontend.
 * Clients connect via GET /api/agents/:sessionName/stream and receive
 * text_chunk, tool_call_start, tool_call_finish, and step_finish events.
 *
 * @module controllers/agent-stream/agent-stream.controller
 */
import type { Request, Response } from 'express';
/**
 * SSE endpoint handler for streaming agent execution events.
 *
 * Sets up an SSE connection that:
 * 1. Sends a 'connected' event on initial connection
 * 2. Forwards all AgentStreamService events for the requested sessionName
 * 3. Sends heartbeat events every 15s to prevent connection timeout
 * 4. Cleans up listeners on client disconnect
 *
 * @param req - Express request with sessionName param
 * @param res - Express response configured for SSE
 */
export declare function streamAgentEvents(req: Request, res: Response): void;
/**
 * Get a list of session names that currently have active streams.
 *
 * **Async** — the `InProcessLogBuffer` module is loaded LAZILY via ESM
 * dynamic `import()` to avoid a top-level circular import. The
 * dynamic-import migration replaced the previous `nodeRequire(...)`
 * (entry-script-anchored CJS `createRequire`) which broke relative-path
 * resolution at runtime. See `backend/src/utils/node-require.utils.ts`
 * JSDoc for the full lessons-banked context.
 *
 * @param _req - Express request
 * @param res - Express response
 */
export declare function getStreamableSessions(_req: Request, res: Response): Promise<void>;
//# sourceMappingURL=agent-stream.controller.d.ts.map