export interface MailboxMessage {
    from: string;
    text: string;
    timestamp: string;
    read: boolean;
    color?: string;
    /** When true, the recipient should deliver this message as a steering interrupt
     *  even if the agent is mid-turn, rather than queueing for the next idle window. */
    urgent?: boolean;
}
export declare function getInboxPath(teamDir: string, namespace: string, agentName: string): string;
/** Append a message to an agent's inbox. */
export declare function writeToMailbox(teamDir: string, namespace: string, recipient: string, msg: Omit<MailboxMessage, "read"> & {
    read?: boolean;
}): Promise<void>;
/**
 * Read unread messages and mark them as read in a single locked transaction.
 * This is the worker/leader poll primitive.
 */
export declare function popUnreadMessages(teamDir: string, namespace: string, agentName: string): Promise<MailboxMessage[]>;
