/** * Local cache for tour JSON fetched from web-ade. * * Sibling of `./trail-cache.ts`, but simpler: tours don't carry a `repos[]` * Purl, and the only id we have on a read is the bare tour id, so the cache is * a flat `~/.principal/tours/by-id/.json` layout — writes and reads use the * same slot, so a recent fetch is actually reused by the next `view`. */ export interface CacheLocation { /** Absolute filesystem path to the cached JSON. */ path: string; } /** * Write a tour's raw JSON body to its cache slot. Stored verbatim — no * re-serialization — so the cached file matches what the server returned. */ export declare function write(id: string, body: string): CacheLocation; /** * Read a cached tour by id. Returns `null` when the file is missing or older * than `maxAgeMs`. The caller fetches + writes a fresh copy on a miss. */ export declare function read(id: string, maxAgeMs: number): { body: string; path: string; } | null; //# sourceMappingURL=tour-cache.d.ts.map