import { DataSource } from "typeorm";
import { Appointment } from "./entities/appointment.entity";
import { DynamicDatabaseService } from "src/dynamic_db.service";
import { EventEmitter2 } from "@nestjs/event-emitter";
import { CountDto, UpcomingCountDto, PastCountDto } from "./dto/appointment.dto";
import { CryptoService } from "src/qr-encrpyt/qr-encrpyt.service";
export declare class AppointmentService {
    private readonly connection;
    private readonly eventEmitter;
    private readonly dynamicDbService;
    private readonly EncryptedService;
    constructor(connection: DataSource, eventEmitter: EventEmitter2, dynamicDbService: DynamicDatabaseService, EncryptedService: CryptoService);
    private privateKey;
    private decrypt;
    handleOrderCreatedEvent(smsData: any, emailData: any): void;
    sendnotificationApptUpdateEvent(verifyData: any, emailData: any): void;
    sendnotificationApptDeleteEvent(verifyData: any, emailData: any): void;
    sendnotificationTempApptCreateEvent(verifyData: any, emailData: any): void;
    TransferToSubmerchant(payment_id: any, getPaymentGatewayDetails: any): void;
    findAllPast(patient_id: number): Promise<any>;
    findAllUpcoming(patient_id: number): Promise<any>;
    findDoctors(search: string): Promise<any>;
    findOneDoctors(id: number): Promise<any>;
    convertTo12HourFormat(time: any): Promise<any>;
    findOne(appointment_id: number, auth_token: any): Promise<any>;
    findOneQR(appointment_id: string): Promise<any>;
    EncryptfindOneQR(appointment_id: string): Promise<any>;
    V2EncryptfindOneQR(appointment_id: string): Promise<any>;
    update(id: number, AppointmentEntity: Appointment): Promise<any>;
    remove(id: number): Promise<any>;
    updateCancelApp(id: number, AppointmentEntity: Appointment): Promise<any>;
    create(AppointmentEntity: Appointment): Promise<any>;
    findAllPastlist(patient_id: number, limit: number, page: number, filters: string, dateRange: string): Promise<PastCountDto>;
    findAllUpcominglist(patient_id: number, limit: number, page: number, filters: string, dateRange: string): Promise<UpcomingCountDto>;
    findDoctorslist(search: string, limit: number, page: number): Promise<CountDto>;
    findLastOneAppointment(patient_id: number, limit: number, page: number): Promise<PastCountDto>;
}
