import { Repository } from 'typeorm';
import { CreateAdmissionAppointmentDto } from './dto/create-admission-appointment.dto';
import { AdmissionAppointment } from './entities/admission-appointment.entity';
import { LoggerService } from "../services/logger/logger.service";
import { AdminUpdateAdmissionAppointmentDto } from './dto/admin-update-admission-appointment.dto';
import { FilterAdmissionAppointmentDto } from './dto/filter-admission-appointment.dto';
import { CreateAdmissionAppointmentResponse } from './interfaces/create-admission-appointment-response.interface';
import { PeriodService } from "../period/period.service";
export declare class AdmissionAppointmentService {
    private readonly admissionAppointmentRepository;
    private readonly periodService;
    private readonly logger;
    constructor(admissionAppointmentRepository: Repository<AdmissionAppointment>, periodService: PeriodService, logger: LoggerService);
    create(createAdmissionAppointmentDto: CreateAdmissionAppointmentDto): Promise<CreateAdmissionAppointmentResponse>;
    findAll(filterDto: FilterAdmissionAppointmentDto): Promise<{
        total: number;
        limit: number;
        offset: number;
        appointments: AdmissionAppointment[];
    }>;
    findOne(id: number): Promise<AdmissionAppointment>;
    update(id: number, adminUpdateAdmissionAppointmentDto: AdminUpdateAdmissionAppointmentDto): Promise<AdmissionAppointment>;
    remove(id: number): Promise<{
        message: string;
    }>;
    private resolvePeriod;
    private handleDBExceptions;
}
