import type { AgentDescriptor, ConnectorMessage, MessageContext } from "@/types"; export type IncomingMessageInput = { descriptor: AgentDescriptor; message: ConnectorMessage; context: MessageContext; }; export type IncomingMessageBatch = IncomingMessageInput & { count: number; }; export type IncomingMessagesOptions = { delayMs: number; onFlush: (items: IncomingMessageBatch[]) => Promise; }; /** * Debounces and coalesces connector messages before agent dispatch. * Expects: callers post connector-originated message items only. */ export declare class IncomingMessages { private readonly delayMs; private readonly onFlush; private pending; private timer; private flushing; constructor(options: IncomingMessagesOptions); post(input: IncomingMessageInput): void; /** * Drops queued (not yet flushed) messages for one descriptor. * Expects: caller uses this for command-style control flows like /reset. */ dropForDescriptor(descriptor: AgentDescriptor): number; flush(): Promise; private schedule; private flushOnce; private cancelTimer; } //# sourceMappingURL=incomingMessages.d.ts.map