/** * Availability Resolver — Source of Truth * * Checks three layers: * 1. property_blocked_dates (iCal syncs, manual blocks) * 2. bookings (confirmed, pending) * 3. booking_locks (temporary holds during checkout) */ import { SupabaseClient } from "@supabase/supabase-js"; export interface AvailabilityResult { propertyId: string; checkIn: string; checkOut: string; available: boolean; reason?: string; } export declare function checkAvailability(supabase: SupabaseClient, propertyId: string, checkIn: string, checkOut: string, excludeBookingId?: string): Promise;