/**
 * CLI.5 — `opensquid audit (list|shell|channels|pending|tail|approve|reject)`.
 *
 * Thin commander wiring. Verb bodies in `./audit_actions.ts`; libsql
 * paths + duration parser in `./audit_state.ts`. This file owns commander
 * option routing + libsql client lifecycle (open → action → close).
 *
 * Verb semantics (locked):
 *   - list      — default; newest N across all categories. Filters:
 *                 --since, --decision, --category, --limit.
 *   - shell     — pending_shell rows (queue history).
 *   - channels  — channel_send rows (deliver-only + outbound multicast).
 *   - pending   — pending_shell + decision=prompted (the approval queue).
 *   - tail      — live polling. `--follow` until SIGINT; otherwise exits
 *                 after first batch. AbortController owns lifecycle.
 *   - approve / reject — atomic prompted → terminal. Exit 1 if already
 *                 resolved (race-safe via single UPDATE).
 */
import type { Client } from '@libsql/client';
import type { Command } from 'commander';
export interface AuditCliDeps {
    /** Tests inject in-memory client + force-abort tail deterministically. */
    openClient?: (dbPath: string) => Client;
    stdout?: (s: string) => void;
    stderr?: (s: string) => void;
    now?: () => number;
    abort?: AbortController;
}
export declare function registerAudit(parent: Command, deps?: AuditCliDeps): Command;
//# sourceMappingURL=audit.d.ts.map