/**
 * Baseline Manager
 * Handles loading, saving, and clearing baseline files
 */
import type { ScanResult, ScanDepth } from '../types';
import type { BaselineData } from './types';
export interface BaselineManagerOptions {
    /** Project root path */
    projectPath: string;
}
export interface LoadBaselineResult {
    /** Whether a baseline was found */
    found: boolean;
    /** The baseline data (if found) */
    baseline?: BaselineData;
    /** Error message (if failed to load) */
    error?: string;
}
export interface SaveBaselineResult {
    /** Whether the save was successful */
    success: boolean;
    /** Path where baseline was saved */
    path: string;
    /** Error message (if failed) */
    error?: string;
}
export interface ClearBaselineResult {
    /** Whether the clear was successful */
    success: boolean;
    /** Whether a baseline existed before clearing */
    existed: boolean;
    /** Error message (if failed) */
    error?: string;
}
/**
 * Manages baseline files for diff mode
 */
export declare class BaselineManager {
    private projectPath;
    private baselinePath;
    constructor(options: BaselineManagerOptions | string);
    /**
     * Get the full path to the baseline file
     */
    getBaselinePath(): string;
    /**
     * Load baseline from .oculum/baseline.json
     */
    loadBaseline(): LoadBaselineResult;
    /**
     * Save current scan result as baseline
     */
    saveBaseline(scanResult: ScanResult, options?: {
        commit?: string;
        branch?: string;
        scanDepth?: ScanDepth;
    }): SaveBaselineResult;
    /**
     * Clear (delete) the baseline file
     */
    clearBaseline(): ClearBaselineResult;
    /**
     * Check if a baseline exists
     */
    hasBaseline(): boolean;
}
//# sourceMappingURL=manager.d.ts.map