/**
 * Read side of the per-project inbox (v0.7.1 Phase E).
 *
 * Daemon writes to ~/.opensquid/projects/<uuid>/inbox/<platform>.jsonl;
 * MCP servers (via the `chat_poll_inbox` tool) read here. Each line is
 * a self-contained `InboxMessage` (see inbox.ts for the schema).
 *
 * `pollInbox` reads the tail of the file. For v0.7.1 the implementation
 * is "read the whole file, take last N lines after `since`" — simple
 * and correct for our expected file sizes (a few KB per project per
 * day). Tail-with-offset can replace this when files routinely exceed
 * 1 MB.
 */
import type { InboxMessage } from "./inbox.js";
import type { ChatPlatform } from "../gateway.js";
export interface PollInboxParams {
    /** Project uuid whose inbox to read. */
    projectUuid: string;
    /** If set, only this platform; else all platforms with inbox files. */
    platform?: ChatPlatform;
    /** Cap on returned messages. Default 20. */
    limit?: number;
    /** Drop messages with `enqueued_at` ≤ this ISO timestamp. */
    since?: string;
    /** Override data root (tests). */
    dataRoot?: string;
}
export interface PollInboxResult {
    /** Messages in chronological order (oldest first). */
    messages: InboxMessage[];
    /** Platforms whose inbox files were scanned. */
    scanned_platforms: ChatPlatform[];
}
export declare function pollInbox(params: PollInboxParams): Promise<PollInboxResult>;
//# sourceMappingURL=inbox-read.d.ts.map