import type { SolutionRecord } from '../types/solution.types.js';
import type { SolutionRepository } from '../db/repositories/solution.repository.js';
import type { SynapseManager } from '../synapses/synapse-manager.js';
export interface ReportSolutionInput {
    errorId: number;
    description: string;
    commands?: string;
    codeChange?: string;
    source?: string;
}
export interface RateOutcomeInput {
    errorId: number;
    solutionId: number;
    success: boolean;
    terminalId?: number;
    output?: string;
    durationMs?: number;
}
export declare class SolutionService {
    private solutionRepo;
    private synapseManager;
    private logger;
    private eventBus;
    constructor(solutionRepo: SolutionRepository, synapseManager: SynapseManager);
    report(input: ReportSolutionInput): number;
    rateOutcome(input: RateOutcomeInput): void;
    findForError(errorId: number): SolutionRecord[];
    getById(id: number): SolutionRecord | undefined;
    successRate(solutionId: number): number;
    analyzeEfficiency(): {
        avgDurationMs: number;
        slowSolutions: Array<{
            solutionId: number;
            avgDuration: number;
            description: string;
        }>;
        successRateOverall: number;
        totalAttempts: number;
    };
}
