/**
 * Custom hook for fetching available appointment slots
 *
 * Uses the Block API Client for type-safe API calls.
 * Must be used within a BlockApiProvider.
 */
import { type TimeSlot } from '../api';
export type { TimeSlot };
type UseAvailableSlotsOptions = {
    siteId: string;
    serviceId: string | undefined;
    resourceId: string | undefined;
    selectedDate: string;
    timezone: string;
};
type UseAvailableSlotsResult = {
    slots: TimeSlot[];
    isLoading: boolean;
    error: string | null;
};
/**
 * Fetches available appointment slots for a given date
 *
 * Automatically refetches when dependencies change.
 * Returns empty slots array until a date is selected.
 *
 * @example
 * ```tsx
 * function SlotSelector({ siteId, serviceId }) {
 *   const { slots, isLoading, error } = useAvailableSlots({
 *     siteId,
 *     serviceId,
 *     resourceId: selectedResource,
 *     selectedDate: '2024-01-15',
 *     timezone: 'America/New_York',
 *   });
 * }
 * ```
 */
export declare function useAvailableSlots({ siteId: _siteId, // siteId now comes from BlockApiProvider context
serviceId, resourceId, selectedDate, timezone, }: UseAvailableSlotsOptions): UseAvailableSlotsResult;
