import { AxiosInstance } from "axios"; import { AddressesResponse } from "../services/AppointmentService"; import { SendPhoneVerificationOtpPayload, VerifyPhoneVerificationOtpPayload } from "../services/PatientService"; interface MedosClientConfig { apiKey: string; } interface MedosClientSessionConfig { sessionToken: string; } declare class MedosClient { private static instance; private static token; private static refreshHandler; private static isRefreshing; private static pendingRequests; private static initPromise; static init({ apiKey }: MedosClientConfig): Promise; static initWithSession({ sessionToken }: MedosClientSessionConfig): Promise; private static initializeAxiosInstance; static fetchAllAddressesAndDoctors(): Promise; static fetchAppointments(workspaceId: number, addressId: number, doctorId: number, appointmentDate: string): Promise; static sendPhoneVerificationOtp(payload: SendPhoneVerificationOtpPayload): Promise; static verifyPhoneVerificationOtp(payload: VerifyPhoneVerificationOtpPayload): Promise; static fetchTheme(): Promise; static get client(): AxiosInstance; static ensureInitialized(): Promise; static isInitialized(): boolean; private static setToken; static setRefreshHandler(handler: () => Promise): void; } export { MedosClient };