import { FilterTestResultService } from './filter-test-result.service';
import { CreateFilterTestResultDtoV2 } from './dto/create-filter-test-result.dto';
import { Response } from 'express';
export declare class FilterTestResultController {
    private readonly filterTestResultService;
    constructor(filterTestResultService: FilterTestResultService);
    create(body: CreateFilterTestResultDtoV2, res: Response): Promise<{
        totalPrompts: number;
        passedPrompts: number;
        failedPrompts: number;
        detailsResults: import("./filter-test-result.interface").IFilterTestResultDetails[];
        role: "user" | "admin";
    }>;
    rerunTest(testId: string, res: Response): Promise<{
        totalPrompts: number;
        passedPrompts: number;
        failedPrompts: number;
        detailsResults: import("./filter-test-result.interface").IFilterTestResultDetails[];
        role: "user" | "admin";
    }>;
    findAll(query: Record<string, unknown>): Promise<{
        data: import("./filter-test-result.model").FilterTestResult[];
        meta: Record<string, unknown>;
    }>;
    findOne(id: string): Promise<{
        questionFilter: import("mongoose").Document<unknown, {}, import("../filter-instruction/filter-instruction.model").FilterInstruction, {}, {}> & import("../filter-instruction/filter-instruction.model").FilterInstruction & Required<{
            _id: string | import("mongoose").Types.ObjectId;
        }> & {
            __v: number;
        };
        answerFilter: import("mongoose").Document<unknown, {}, import("../filter-instruction/filter-instruction.model").FilterInstruction, {}, {}> & import("../filter-instruction/filter-instruction.model").FilterInstruction & Required<{
            _id: string | import("mongoose").Types.ObjectId;
        }> & {
            __v: number;
        };
        _id: string | import("mongoose").Types.ObjectId;
        totalPrompts: number;
        passedPrompts: number;
        failedPrompts: number;
        detailsResults: import("mongoose").FlattenMaps<{
            prompt: string;
            expectedResult: "pass" | "fail";
            actualResult: "pass" | "fail";
            reason: string;
            blockedCategories?: string[];
            rawResponse?: any;
            blockedType?: "question" | "answer";
        }>[];
        testMeta: any;
        createdAt: Date;
        updatedAt: Date;
        __v: number;
    }>;
    remove(id: string): Promise<boolean>;
}
