isAvailableAt() is deprecated in favor of isBookableAt(), isBookableAtTime(), and getBookableSlots(). Use the bookable APIs for all new code.// Check if there is at least one bookable slot on the day
$isBookable = $doctor->isBookableAt('2025-01-15', 60);
// Check if a specific time range is bookable
$isBookable = $doctor->isBookableAtTime('2025-01-15', '09:00', '10:00');
// Get bookable slots
$slots = $doctor->getBookableSlots('2025-01-15', 60, 15);
// Find conflicts
$conflicts = Zap::findConflicts($schedule);
$hasConflicts = Zap::hasConflicts($schedule);
// Query schedules
$doctor->schedulesForDate('2025-01-15')->get();
$doctor->schedulesForDateRange('2025-01-01', '2025-01-31')->get();
// Filter by type
$doctor->appointmentSchedules()->get();
$doctor->availabilitySchedules()->get();
$doctor->blockedSchedules()->get();
// Check schedule type
$schedule->isAvailability();
$schedule->isAppointment();
$schedule->isBlocked();