/**
 * Memory Decay — L2 archival policy for session notes
 *
 * Notes older than MEMORY_DECAY_DAYS are moved to an archive directory.
 * Archived notes can still be loaded on demand but are deprioritized
 * in refresh_task_context (weight 0.3 vs 1.0 for recent).
 *
 * Policy: archive, never delete. Configurable via NODEBENCH_MEMORY_DECAY_DAYS env var.
 */
export declare const DEFAULT_DECAY_DAYS = 30;
export declare const DECAY_WEIGHT_RECENT = 1;
export declare const DECAY_WEIGHT_ARCHIVED = 0.3;
export declare const MAX_ARCHIVE_SCAN = 1000;
export declare const MAX_ARCHIVED_RESULTS = 50;
export declare const NOTES_DIR: string;
export declare const ARCHIVE_DIR: string;
/**
 * Returns the configured decay threshold in days.
 * Reads NODEBENCH_MEMORY_DECAY_DAYS env var, falls back to DEFAULT_DECAY_DAYS.
 */
export declare function getDecayDays(): number;
/**
 * Creates the archive directory if it doesn't exist.
 */
export declare function ensureArchiveDir(): void;
/**
 * Extracts a Date from a note filename.
 * Accepts patterns like `2026-03-18.md` or `2026-03-18-143012-some-title.md`.
 * Returns null if the filename doesn't start with a valid YYYY-MM-DD prefix.
 */
export declare function getNoteDateFromFilename(filename: string): Date | null;
/**
 * Archives notes older than the decay threshold.
 * Moves files from NOTES_DIR to ARCHIVE_DIR — never deletes.
 *
 * @returns count of archived files and errors encountered
 */
export declare function archiveOldNotes(): {
    archived: number;
    errors: number;
};
/**
 * Loads archived notes with optional keyword filtering.
 * All archived notes carry DECAY_WEIGHT_ARCHIVED (0.3).
 *
 * @returns array of archived notes sorted by date descending, capped at MAX_ARCHIVED_RESULTS
 */
export declare function loadArchivedNotes(options?: {
    keyword?: string;
}): Array<{
    date: string;
    content: string;
    weight: number;
}>;
/**
 * Returns the decay weight for a given date string.
 * Recent notes (within decay window) get 1.0, archived get 0.3.
 * On parse error, returns DECAY_WEIGHT_RECENT as a fail-safe.
 */
export declare function getDecayWeight(dateStr: string): number;
/**
 * Returns summary statistics about notes and archive state.
 */
export declare function getDecayStats(): {
    totalNotes: number;
    archivedNotes: number;
    recentNotes: number;
    oldestNote: string | null;
    newestNote: string | null;
};
