import { MasterQuestionRepository } from './master-question.repository';
import { MasterFormSectionRepository } from 'src/master-form-section/master-form-section.repository';
import { CreateMasterQuestionDto } from './dto/create-master-question.dto';
import { UpdateMasterQuestionDto } from './dto/update-master-question.dto';
import { FilterMasterQuestionDto } from './dto/filter-master-question.dto';
import { AppLoggerService } from 'src/common/services/logger.service';
export declare class MasterQuestionService {
    private readonly masterQuestionRepo;
    private readonly masterFormSectionRepo;
    private readonly logger;
    constructor(masterQuestionRepo: MasterQuestionRepository, masterFormSectionRepo: MasterFormSectionRepository, logger: AppLoggerService);
    findAll(filters: FilterMasterQuestionDto): Promise<{
        data: import("../common/entities").MasterQuestion[];
        pagination: {
            totalPages: number;
            pageNumber: number;
            pageSize: number;
            totalRecords: number;
        };
    }>;
    findById(id: number): Promise<import("../common/entities").MasterQuestion>;
    findBySection(sectionId: number): Promise<import("../common/entities").MasterQuestion[]>;
    create(createDto: CreateMasterQuestionDto): Promise<import("../common/entities").MasterQuestion>;
    update(id: number, updateDto: UpdateMasterQuestionDto): Promise<import("../common/entities").MasterQuestion | null>;
    delete(id: number, userId?: number): Promise<void>;
    private validateOptionConfig;
    private validateConfig;
}
