import type { Config } from '../../config/schema.js'; import type { AgentIPCMessage } from './types.js'; export declare class AgentInbox { private readonly pendingDir; private readonly processedDir; private watcher?; constructor(agentDir: string); /** * Static factory using agent ID (paths from config). */ static forAgent(config: Config, agentId: string): AgentInbox; /** * Enqueue a message */ enqueue(message: AgentIPCMessage): Promise; /** * Dequeue the oldest pending message */ dequeue(): Promise; /** * Peek at pending messages without removing them */ peek(limit?: number): Promise; /** * Count pending messages */ count(): Promise; /** * Watch for new messages */ watch(handler: (msg: AgentIPCMessage) => Promise): Promise<() => void>; /** * Stop watching */ stopWatching(): void; /** * Clear all processed messages */ clearProcessed(olderThanMs?: number): Promise; private processPending; }