import type { GatewayPaths } from './paths.js'; export type SessionArchiveItem = { name: string; createdAt: string; }; export declare function listSessionArchives(archivePath: string, options?: { limit?: number; cursor?: unknown; }): { items: SessionArchiveItem[]; nextCursor: string | null; }; /** Moves the active session into the canonical archive using a listable name. */ export declare function archiveActiveSession(paths: Pick, now?: Date): string; export type ArchiveCleanupResult = { deleted: string[]; retained: number; skipped: number; }; /** * Deletes only valid reset-created directories strictly older than the retention * boundary. A zero retention disables cleanup. Entries are identity-checked, * atomically parked beneath the archive root, and lstat-checked again directly * before recursive removal. fs.rm removes symlink nodes rather than following * them, including symlinks found inside an archived session. */ export declare function cleanupSessionArchives(archivePath: string, retentionDays: number, options?: { now?: Date; beforeDelete?: (path: string) => void; remove?: (path: string) => void; }): ArchiveCleanupResult;