import type { Experiment, ExperimentResult, ExperimentReviewCounts, CreateExperimentInput, UpdateExperimentInput, AddExperimentResultInput, UpdateExperimentResultInput, ListExperimentsInput, ListExperimentsOutput, ListExperimentResultsInput, ListExperimentResultsOutput } from '../../types.js';
import type { InMemoryDB } from '../inmemory-db.js';
import { ExperimentsStorage } from './base.js';
export declare class ExperimentsInMemory extends ExperimentsStorage {
    private db;
    constructor({ db }: {
        db: InMemoryDB;
    });
    dangerouslyClearAll(): Promise<void>;
    createExperiment(input: CreateExperimentInput): Promise<Experiment>;
    updateExperiment(input: UpdateExperimentInput): Promise<Experiment>;
    getExperimentById(args: {
        id: string;
    }): Promise<Experiment | null>;
    listExperiments(args: ListExperimentsInput): Promise<ListExperimentsOutput>;
    deleteExperiment(args: {
        id: string;
    }): Promise<void>;
    addExperimentResult(input: AddExperimentResultInput): Promise<ExperimentResult>;
    updateExperimentResult(input: UpdateExperimentResultInput): Promise<ExperimentResult>;
    getExperimentResultById(args: {
        id: string;
    }): Promise<ExperimentResult | null>;
    listExperimentResults(args: ListExperimentResultsInput): Promise<ListExperimentResultsOutput>;
    deleteExperimentResults(args: {
        experimentId: string;
    }): Promise<void>;
    getReviewSummary(): Promise<ExperimentReviewCounts[]>;
}
//# sourceMappingURL=inmemory.d.ts.map