• Get cache statistics.

    Returns { size: number; entries: number; oldestEntry: number; newestEntry: number }

    An object containing cache size, entries, and age information.

    export function getCacheStats(): {
    size: number;
    entries: number;
    oldestEntry: number;
    newestEntry: number;
    } {
    const keys = Object.keys(mangaCache);

    if (keys.length === 0) {
    return {
    size: 0,
    entries: 0,
    oldestEntry: 0,
    newestEntry: 0,
    };
    }

    // Calculate total cached manga entries
    let totalEntries = 0;
    let oldestTimestamp = Date.now();
    let newestTimestamp = 0;

    keys.forEach((key) => {
    const entry = mangaCache[key];
    totalEntries += entry.manga.length;

    if (entry.timestamp < oldestTimestamp) {
    oldestTimestamp = entry.timestamp;
    }

    if (entry.timestamp > newestTimestamp) {
    newestTimestamp = entry.timestamp;
    }
    });

    return {
    size: keys.length,
    entries: totalEntries,
    oldestEntry: Math.floor((Date.now() - oldestTimestamp) / 1000 / 60), // minutes ago
    newestEntry: Math.floor((Date.now() - newestTimestamp) / 1000 / 60), // minutes ago
    };
    }