import type { MastraDBMessage } from '@mastra/core/agent'; /** * Date/time utility functions for Observational Memory. * Pure functions for formatting relative timestamps and annotating observations. */ /** * Format a relative time string like "5 days ago", "2 weeks ago", "today", etc. */ export declare function formatRelativeTime(date: Date, currentDate: Date): string; /** * Format the gap between two dates as a human-readable string. * Returns null for consecutive days (no gap marker needed). */ export declare function formatGapBetweenDates(prevDate: Date, currDate: Date): string | null; /** * Parses a date string like "May 30, 2023", "May 27-28, 2023", "late April 2023", etc. * Returns the parsed Date or null if unparseable. */ export declare function parseDateFromContent(dateContent: string): Date | null; /** * Detects if an observation line indicates future intent (will do, plans to, looking forward to, etc.) */ export declare function isFutureIntentObservation(line: string): boolean; /** * Expand inline estimated dates with relative time. * Matches patterns like "(estimated May 27-28, 2023)" or "(meaning May 30, 2023)" * and expands them to "(meaning May 30, 2023 - which was 3 weeks ago)" */ export declare function expandInlineEstimatedDates(observations: string, currentDate: Date): string; /** * Add relative time annotations to observations. * Transforms "Date: May 15, 2023" headers to "Date: May 15, 2023 (5 days ago)" * and expands inline estimated dates with relative time context. */ export declare function addRelativeTimeToObservations(observations: string, currentDate: Date): string; export declare const MIN_TEMPORAL_GAP_MS: number; export declare function formatTemporalGap(diffMs: number): string | null; export declare function formatTemporalTimestamp(date: Date): string; export declare function getMessagePartTimestamp(msg: MastraDBMessage, position: 'first' | 'last'): number; export declare function isTemporalGapMarker(msg: MastraDBMessage): boolean; //# sourceMappingURL=date-utils.d.ts.map