import { Repository } from 'typeorm';
import { SatisfactionForm } from './entities/satisfaction-form.entity';
import { SatisfactionResponse } from './entities/satisfaction-response.entity';
import { ContentModule } from '../content-modules/entities/content-module.entity';
import { Speaker } from '../speakers/entities/speaker.entity';
import { CreateSatisfactionResponseDto } from './dto/create-satisfaction-response.dto';
import { ExcelExportService } from '../common/services/excel-export.service';
import { PdfExportService } from '../common/services/pdf-export.service';
export declare class SatisfactionFormsService {
    private readonly formRepository;
    private readonly responseRepository;
    private readonly moduleRepository;
    private readonly speakerRepository;
    private readonly excelExportService;
    private readonly pdfExportService;
    constructor(formRepository: Repository<SatisfactionForm>, responseRepository: Repository<SatisfactionResponse>, moduleRepository: Repository<ContentModule>, speakerRepository: Repository<Speaker>, excelExportService: ExcelExportService, pdfExportService: PdfExportService);
    ensureForModule(contentModule: ContentModule): Promise<void>;
    findByModuleId(moduleId: string): Promise<{
        form: SatisfactionForm;
        module: ContentModule;
    } | null>;
    private findFormOrThrow;
    submitResponse(formId: string, dto: CreateSatisfactionResponseDto): Promise<void>;
    listResponses(formId: string): Promise<SatisfactionResponse[]>;
    exportResponsesXlsx(formId: string): Promise<Buffer>;
    exportReportPdf(formId: string): Promise<Buffer>;
}
