import { KnowledgeService } from './knowledge.service';
import { CreateKnowledgeFixDto, ReviewKnowledgeFixDto, QueryKnowledgeFixDto } from '../dto';
export declare class KnowledgeController {
    private readonly knowledgeService;
    constructor(knowledgeService: KnowledgeService);
    create(dto: CreateKnowledgeFixDto, req: any): Promise<{
        id: string;
        messageId: string;
        correctAnswer: string;
        contributorId: string;
        status: import("@prisma/client").$Enums.AIKnowledgeFixStatus;
        createdAt: Date;
    }>;
    findAll(query: QueryKnowledgeFixDto, req: any): Promise<{
        items: {
            id: string;
            messageId: string;
            originalAnswer: string;
            correctAnswer: string;
            contributor: {
                id: string;
                name: string;
            };
            status: import("@prisma/client").$Enums.AIKnowledgeFixStatus;
            reviewNote: string | null;
            createdAt: Date;
            reviewedAt: Date | null;
        }[];
        total: number;
        page: number;
        limit: number;
        totalPages: number;
        hasNext: boolean;
        hasPrev: boolean;
    }>;
    findOne(id: string): Promise<{
        id: string;
        messageId: string;
        originalAnswer: string;
        correctAnswer: string;
        contributor: {
            id: string;
            name: string;
        };
        status: import("@prisma/client").$Enums.AIKnowledgeFixStatus;
        reviewer: {
            id: string;
            name: string;
        } | null;
        reviewNote: string | null;
        createdAt: Date;
        reviewedAt: Date | null;
        conversation: {
            id: string;
            title: string | null;
        };
    }>;
    review(id: string, dto: ReviewKnowledgeFixDto, req: any): Promise<{
        id: string;
        status: import("@prisma/client").$Enums.AIKnowledgeFixStatus;
        reviewerId: string | null;
        reviewNote: string | null;
        reviewedAt: Date | null;
    }>;
}
