export declare const CHAT_TEXT_MAX_BYTES = 4096; export declare const HUMAN_SUMMARY = "HQ chat inbox, read by Ben (the human) in HQ. Send status reports and replies here."; export interface ChatMessage { id: number; ts: string; dir: 'in' | 'out'; /** in: the sender. */ peer_id?: string; /** out: a peer id, or "all". */ to?: string; project_id?: string; cwd?: string; text: string; } export declare function chatLogPath(): string; export declare function readChat(since?: number, limit?: number): { messages: ChatMessage[]; human_peer_id: string | null; peer_live: boolean; }; export declare class ChatError extends Error { readonly status: number; readonly code: string; constructor(status: number, code: string, message: string); } export declare function sendChat(to: unknown, text: unknown): Promise<{ ok: boolean; delivered: string[]; failed: Array<{ peer_id: string; error: string; }>; }>; /** * Every inbound message in the on-disk log, not just the in-memory window. * For artifacts.backfill_chat; unreadable lines are skipped as in loadLog. */ export declare function readAllInbound(): ChatMessage[]; /** Start the chat peer and its loops (daemon mode). Returns a stop function. */ export declare function startChat(opts?: { pollMs?: number; heartbeatMs?: number; presenceMs?: number; }): () => void; /** Test seam: forget in-memory state so a test can point HOME elsewhere. */ export declare function _resetChat(): void; //# sourceMappingURL=chat.d.ts.map