/**
 * `opensquid cache` CLI verb group (CLI.7).
 *
 * Two verbs, backed by the DURABLE.3 `MemoCache`:
 *
 *   stats  — per-primitive hit / size table. Reads `MemoCache.stats()`,
 *            which queries the libsql tier (the authoritative cross-
 *            restart record). The in-memory LRU tier deliberately does
 *            NOT contribute — a restart would otherwise reset reported
 *            hits to zero and trip the "is this thing working" check
 *            (see memo_cache.ts MemoStats comment).
 *   clear  — selective invalidation. `--primitive <name>` purges one
 *            primitive's rows; `--older-than <duration>` purges rows
 *            older than the window; both flags combine via AND. A
 *            zero-filter (full) clear requires `--yes` or interactive
 *            y/N confirmation; non-TTY without `--yes` exits 1.
 *
 * Confirmation policy (locked):
 *   - At least one filter → no confirmation. Output reports row count
 *     removed; the user already declared the scope.
 *   - No filter (full wipe) → `--yes` or TTY confirmation required.
 *     Mirrors the `checkpoints clean` non-TTY refusal pattern.
 *
 * File-size budget: this file ≤ 200 LOC including both verbs (CLI.7
 * deliverable). Pure runtime logic (`MemoCache.stats` / `.clear`)
 * already lives in `runtime/durable/memo_cache.ts`; we just wire
 * commander + format output.
 *
 * Imports from: commander, @libsql/client, ../../runtime/durable/index.js,
 *   ./audit_state.js (parseDurationToMs + defaultAuditDbPath).
 * Imported by: src/cli.ts, src/setup/cli/cache.test.ts.
 */
import type { Client } from '@libsql/client';
import type { Command } from 'commander';
export interface CacheCliDeps {
    openClient?: (dbPath: string) => Client;
    stdout?: (s: string) => void;
    stderr?: (s: string) => void;
    isTty?: () => boolean;
    now?: () => number;
}
/** Register `opensquid cache` on the parent program. */
export declare function registerCache(parent: Command, deps?: CacheCliDeps): Command;
//# sourceMappingURL=cache.d.ts.map