export interface PendingReminder { fireAt: Date; text: string; recurrence?: string; routeViaEmail?: boolean; emailTarget?: string; /** Wall-clock ms when this entry was put — used for TTL eviction. */ createdAt: number; } export declare function setPending(threadKey: string, p: Omit): void; export declare function getPending(threadKey: string): PendingReminder | null; export declare function clearPending(threadKey: string): void; export declare function _sizeForTest(): number; export declare function _clearForTest(): void; /** Inspect an inbound message; if there's a pending detection for this * thread AND the message looks like y/n, return the decision. Otherwise * return null and the caller continues normal processing. */ export declare function tryConsumeReply(threadKey: string, text: string): { decision: 'confirm'; pending: PendingReminder; } | { decision: 'cancel'; pending: PendingReminder; } | null; //# sourceMappingURL=pending-reminder.d.ts.map