/**
 * `opensquid checkpoints` CLI verb group (CLI.6).
 *
 * Four verbs, all backed by `CheckpointStore` (DURABLE.1) + optional
 * `Resumer` (DURABLE.4):
 *
 *   list    — print interrupted-run summaries. `--limit <n>` caps
 *             (default 20). `--interrupted` is a no-op alias —
 *             `scanInterrupted` already excludes terminated runs.
 *   show    — RAW JSONL dump of one run: manifest line + one line per
 *             checkpoint row (sorted by `stepIdx`) + terminal-marker
 *             line when present. Distinct from `opensquid trace`
 *             (OBSERVE.2), which renders a styled timeline.
 *   resume  — explicit resume that BYPASSES DURABLE.4's 60s window
 *             (`Resumer.resume` is window-free; only `scanInterrupted`
 *             / `resumeOnStartup` consult the window). Confirmation
 *             unless `--yes`. Requires a daemon-wired Resumer.
 *   clean   — prune checkpoints older than a duration (default 30d).
 *             Confirmation unless `--yes`.
 *
 * This file owns commander wiring + dep-building only. Pure handlers
 * live in `./checkpoints_core.ts` (re-exported here so direct-import
 * callers from the DURABLE.4 scaffold keep working). Action bodies +
 * libsql client lifecycle live in `./checkpoints_actions.ts`. Table
 * rendering lives in `./checkpoints_render.ts`.
 *
 * Imports from: commander, @libsql/client, ../../runtime/durable/index.js,
 *   ../../runtime/paths.js, ./checkpoints_actions.js, ./checkpoints_core.js.
 * Imported by: src/setup/cli/checkpoints.test.ts, src/cli.ts.
 */
import type { Client } from '@libsql/client';
import type { Command } from 'commander';
import type { CheckpointStore, Resumer, RuleResolver } from '../../runtime/durable/index.js';
export { clean, list, resume, show, type CleanOpts, type ListEntry, type ListOpts, type ResumeCliResult, type ShowResult, } from './checkpoints_core.js';
export interface CheckpointsCliDeps {
    openClient?: (dbPath: string) => Client;
    stdout?: (s: string) => void;
    stderr?: (s: string) => void;
    isTty?: () => boolean;
    now?: () => number;
    /** Production wires a Resumer with packs loaded; tests inject a stub. */
    resumerFor?: (store: CheckpointStore) => Resumer | null;
}
/** Register `opensquid checkpoints` on the parent program. */
export declare function registerCheckpoints(parent: Command, deps?: CheckpointsCliDeps): Command;
export type { RuleResolver };
//# sourceMappingURL=checkpoints.d.ts.map