/** * Builds the request payload(s) for a single APPOINTMENT service whose * duration is configured as a DAY range. * * The slot list comes from availability — the user picks a start + end date * and the picker emits one slot per day in `rangeTimeSlots`. The client just * packages them as one Booking each. Routing is decided by `bookings.length` * in `createBookingsForCart`: * - length 1 -> `bulkCreateBooking` * - length 2-8 -> `createMultiServiceBooking` * * The 8-day cap is enforced server-side; the builder does not gate on it. */ import type { Booking, ParticipantNotification } from '@wix/auto_sdk_bookings_bookings'; import type { FormValues } from '@wix/forms/components'; import type { BookActionParams } from './types.js'; export interface BuildDayRangeBookingRequest { /** * One Booking per picked per-day slot. Length 1 routes to bulkCreateBooking, * length >=2 routes to createMultiServiceBooking. */ bookings: Booking[]; /** Notification settings forwarded to the server. */ participantNotification?: ParticipantNotification; /** Whether to send SMS reminder. */ sendSmsReminder: boolean; /** Form submission data forwarded to booking creation. */ formSubmission?: FormValues | null; } /** * Builds N Bookings from a DAY-range selection. * * The base Booking (service, resource, location, payment, participants) is * produced by `buildBookingRequest` from the singular `timeSlot`; per-slot * cloning then overrides only `bookedEntity.slot.startDate` / `endDate` from * the multi-slot input. * * @throws if no service selection or no slots are available. */ export declare function buildDayRangeBookingRequest(params: BookActionParams): BuildDayRangeBookingRequest;