import type { QuickAvailabilityCheck } from "../components/hooks/useSlots";
type DateInBookerTimeZone = string;
type SlotInIsoFormat = string;
type SlotsInIso = {
    time: SlotInIsoFormat;
}[];
type ScheduleData = {
    /**
     * `slots` is a map of date in Booker's timezone to an array of time slots in ISO format
     * So, `DateInBookerTimeZone` could be on a different day number than the slot date in ISO format
     * For example, if Booker's timezone is UTC+5:30, and timeslot is 2025-01-02T21:00:00Z, then `DateInBookerTimeZone` could be 2025-01-03 as it is 02:30 AM next day in IST
     */
    slots: Record<DateInBookerTimeZone, SlotsInIso>;
};
/**
 * Checks if a given time slot is available in the schedule
 * It should never give false negative, false positives are fine.
 * It could be unavailable for any number of reasons including the slot being reserved and not actually booked
 * @returns boolean - true if the slot is available, false otherwise.
 */
export declare const isTimeSlotAvailable: ({ scheduleData, slotToCheckInIso, quickAvailabilityChecks, }: {
    scheduleData: ScheduleData | null;
    slotToCheckInIso: SlotInIsoFormat;
    quickAvailabilityChecks: QuickAvailabilityCheck[];
}) => boolean;
export {};
//# sourceMappingURL=isTimeslotAvailable.d.ts.map