export interface ComponentMutation {
    id: string;
    componentPath: string;
    timestamp: string;
    actor: "human" | "ai" | "system";
    before: string;
    after: string;
    diff: string;
    patch: string;
    chainOfThought?: string;
    confidence?: number;
    riskFlags: string[];
    tests: {
        unit: string[];
        lint: string[];
        typecheck: string[];
        results: {
            unit: {
                passed: number;
                failed: number;
                details: string[];
            };
            lint: {
                passed: boolean;
                details: string[];
            };
            typecheck: {
                passed: boolean;
                details: string[];
            };
        };
    };
    status: "proposed" | "applied" | "rejected";
    appliedAt?: string;
    rejectedAt?: string;
    rejectionReason?: string;
}
export declare class MutationLogger {
    private mutationsDir;
    constructor(contextDir: string);
    private ensureMutationsDir;
    private getComponentMutationsDir;
    private generateMutationId;
    logMutation(mutation: Omit<ComponentMutation, "id" | "timestamp">): Promise<string>;
    getMutationHistory(componentPath: string): Promise<ComponentMutation[]>;
    getLastApprovedVersion(componentPath: string): Promise<ComponentMutation | null>;
    getLastProposedVersion(componentPath: string): Promise<ComponentMutation | null>;
    updateMutationStatus(mutationId: string, status: "applied" | "rejected", reason?: string): Promise<void>;
    private getAllMutations;
    createMutationFromRefinement(componentPath: string, before: string, after: string, chainOfThought: string, confidence: number, riskFlags?: string[]): Promise<string>;
    getMutationById(mutationId: string): Promise<ComponentMutation | null>;
    deleteMutation(mutationId: string): Promise<void>;
}
//# sourceMappingURL=MutationLogger.d.ts.map