/**
 * Stage 1: Sanitize VisionClaw JSONL logs.
 *
 * Applies:
 *  1. Remove lines containing noise substrings ([compact], [image-pruner])
 *  2. Remove lines whose message starts with specific prefixes
 *  3. Replace leaked API key strings
 *  4. Redact obs domain URLs
 *
 * When outputDir is provided, writes sanitized copies there (non-destructive).
 * Otherwise modifies files in-place (legacy `sanitize-logs` CLI behavior).
 */
export interface SanitizeOptions {
    logsDir: string;
    /** When set, write sanitized files here instead of modifying originals. */
    outputDir?: string;
}
export interface SanitizeResult {
    filesProcessed: number;
    filesChanged: number;
    linesBefore: number;
    linesAfter: number;
    removedSubstring: number;
    removedPrefix: number;
    replacedApikey: number;
    redactedObsDomain: number;
}
export declare function sanitize(opts: SanitizeOptions): SanitizeResult;
export declare function runSanitize(args: string[]): void;
//# sourceMappingURL=sanitize.d.ts.map