/**
 * Pure handlers for `opensquid checkpoints` (CLI.6 + DURABLE.4 scaffold) —
 * split out of checkpoints.ts for the file-size budget.
 *
 * Commander-agnostic. Direct-import callers (tests, future programmatic
 * tooling) use these. The commander wiring in `./checkpoints.ts` calls
 * these through `./checkpoints_actions.ts`.
 *
 * Imports from: ../../runtime/durable/index.js.
 * Imported by: ./checkpoints.ts (re-exports public surface),
 *   ./checkpoints_actions.ts (verb handlers).
 */
import type { CheckpointStore, Resumer } from '../../runtime/durable/index.js';
/** One row in the `list` verb's output. */
export interface ListEntry {
    runId: string;
    packId: string;
    skill: string;
    ruleId: string;
    lastCompletedStep: number;
    lastCompletedAtMs: number;
    ageMs: number;
}
export interface ListOpts {
    store: CheckpointStore;
    /** Window in ms; `null` / `Infinity` disables. */
    windowMs?: number | null;
    nowMs?: () => number;
}
/** Inspect interrupted runs (manifest-orphan checkpoints are dropped). */
export declare function list(opts: ListOpts): Promise<ListEntry[]>;
export interface ShowResult {
    manifest: Awaited<ReturnType<CheckpointStore['getRunManifest']>>;
    checkpoints: Awaited<ReturnType<CheckpointStore['fetchRun']>>;
    hasTerminalMarker: boolean;
}
/** Inspect one run: manifest + every checkpoint row + terminal state. */
export declare function show(store: CheckpointStore, runId: string): Promise<ShowResult>;
export interface ResumeCliResult {
    resumed: boolean;
    reason?: string;
    manifestMissing?: true;
}
/** Explicit resume — bypasses DURABLE.4's resume window
 *  (`Resumer.resume` itself never consults the window; only
 *  `scanInterrupted` / `resumeOnStartup` do). */
export declare function resume(resumer: Resumer, store: CheckpointStore, runId: string): Promise<ResumeCliResult>;
export interface CleanOpts {
    store: CheckpointStore;
    olderThanMs: number;
    nowMs?: () => number;
}
/** Prune old checkpoint rows. Pass-through to `pruneOlderThan`. */
export declare function clean(opts: CleanOpts): Promise<{
    removed: number;
}>;
//# sourceMappingURL=checkpoints_core.d.ts.map