{"version":3,"sources":["../../../src/bookings-availability-v1-slot-availability-availability-calendar.http.ts","../../../src/bookings-availability-v1-slot-availability-availability-calendar.types.ts","../../../src/bookings-availability-v1-slot-availability-availability-calendar.meta.ts"],"sourcesContent":["import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveComWixpressBookingsAvailabilityAvailabilityCalendarUrl(\n  opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n  const domainToMappings = {\n    _: [\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n      {\n        srcPath: '/_api/availability-calendar/v2/availability/schedule',\n        destPath: '/v2/availability/schedule',\n      },\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/multislot',\n        destPath: '/v1/availability/multislot',\n      },\n    ],\n    '*.dev.wix-code.com': [\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/multislot',\n        destPath: '/v1/availability/multislot',\n      },\n    ],\n    'editor._base_domain_': [\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/multislot',\n        destPath: '/v1/availability/multislot',\n      },\n      {\n        srcPath: '/v1/availability/multislot',\n        destPath: '/v1/availability/multislot',\n      },\n    ],\n    'blocks._base_domain_': [\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/multislot',\n        destPath: '/v1/availability/multislot',\n      },\n      {\n        srcPath: '/v1/availability/multislot',\n        destPath: '/v1/availability/multislot',\n      },\n    ],\n    'create.editorx': [\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/multislot',\n        destPath: '/v1/availability/multislot',\n      },\n      {\n        srcPath: '/v1/availability/multislot',\n        destPath: '/v1/availability/multislot',\n      },\n    ],\n    'editor.wixapps.net': [\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n    ],\n    'editor-flow.wixapps.net': [\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n    ],\n    'www.wixapis.com': [\n      {\n        srcPath: '/availability-calendar/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n      {\n        srcPath: '/bookings/availability-calendar/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n      {\n        srcPath: '/bookings/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n    ],\n    'manage._base_domain_': [\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n      {\n        srcPath: '/_api/availability-calendar',\n        destPath: '',\n      },\n      {\n        srcPath: '/_api/availability-calendar/v2/availability/schedule',\n        destPath: '/v2/availability/schedule',\n      },\n    ],\n    'www._base_domain_': [\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/multislot',\n        destPath: '/v1/availability/multislot',\n      },\n    ],\n    'bookings.wixapps.net': [\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n    ],\n    'bo._base_domain_': [\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n    ],\n    'wixbo.ai': [\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n    ],\n    'wix-bo.com': [\n      {\n        srcPath: '/_api/availability-calendar/v1/availability/query',\n        destPath: '/v1/availability/query',\n      },\n    ],\n    '*.wixforms.com': [\n      {\n        srcPath: '/_api/availability-calendar',\n        destPath: '',\n      },\n    ],\n    'api._api_base_domain_': [\n      {\n        srcPath: '/availability-calendar',\n        destPath: '',\n      },\n    ],\n  };\n\n  return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_bookings_availability-calendar';\n\n/**\n * Retrieves appointment slots or class events that match specified filters.\n *\n * <blockquote>\n *\n * Query Availability doesn't use a query builder, instead it uses\n * [API query language](https://dev.wix.com/docs/sdk/articles/work-with-the-sdk/api-query-language).\n *\n * </blockquote>\n *\n * ## Course limitations\n *\n * Course events can't be retrieved with this method. Follow this\n * [sample flow](https://dev.wix.com/docs/rest/business-solutions/bookings/end-to-end-booking-flows#book-a-course) to check course availability.\n *\n * ## Query filter\n *\n * You must include `serviceId` in your query filter. For performance, also specify\n * both `startDate` and `endDate`. Refer to the\n * [supported filters article](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/availability-calendar/supported-fields-filters-and-sorting)\n * for a complete list of supported filters.\n *\n * ## Limit the number of slots returned per day\n *\n * To limit the maximum number of appointment slots returned for each date,\n * specify `slotsPerDay`. For example,  specifying `{\"slotsPerDay\": 3}` returns\n * a maximum of 3 appointment slots/class events for each day that's within the query\n * filter's date range.\n *\n * ## Unavailable slots\n *\n * By default, both available and unavailable appointment slots/ class events\n * are returned. To retrieve only available slots/events, specify\n * `{\"bookable\": true}` in the filter.\n *\n * ## Sorting\n *\n * Slots/events can be sorted only by `startDate`. Unavailable slots/events\n * always appear after available ones.\n *\n * ## Availability calculation\n *\n * Wix Bookings calculates availability differently for appointment-based\n * services and classes.\n *\n * ### Appointment availability\n *\n * An appointment slot is `bookable` if:\n * - The slot's `startDate` is later than or equal to `query.filter.startDate`.\n * - The slot's `endDate` is before or equal to `query.filter.endDate`.\n * - The service's `onlineBooking.enabled` is `true`.\n * - The service's early/late booking policies are either not enabled or the\n *   current time is within the defined limits.\n *\n * ### Class event availability\n *\n * A class event is `bookable` if:\n * - The event's `startDate` is later than or equal to `query.filter.startDate`.\n * - The event's `endDate` is before or equal to `query.filter.endDate`.\n * - The event's `remainingCapacity` is greater than `0`.\n * - The service's `onlineBooking.enabled` is `true`.\n * - The service's early/late booking policies are either not enabled or the\n *   current time is within the defined limits.\n *\n * If you want to restrict returned class events to those with a minimum number\n * of remaining spots, specify `openSpots` in the filter. By default, all class\n * events, even those with no open spot, are returned.\n *\n * ## Daylight Savings Time (DST)\n *\n * Due to DST, some local times may not exist or may occur twice. For example,\n * in Santiago, Chile, on September 7, 2025, 0:05 AM doesn't exist because the\n * clock advances from 0:00 AM to 1:00 AM.\n *\n * *Query Availability* automatically adjusts for these gaps. Non-existent times\n * are moved forward by 1 hour, while existing times remain unchanged. For\n * instance, if you call *Query Availability* with a `startDate` of\n * `2025-09-07T00:00:01.000` and an `endDate` of `2025-09-08T00:00:02.000`, the\n * adjusted query will use `2025-09-07T01:00:01.000` as the new start time.\n * @deprecated Depending on your use case, you may also replace the method by calling 1 of the following methods:\n * - Get Availability Time Slot ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/time-slots/availability-time-slots/get-availability-time-slot) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/time-slots-v2/get-availability-time-slot))\n * - List Event Time Slots ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/time-slots/event-time-slots/list-event-time-slots) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/time-slots-v2/list-event-time-slots))\n * - Get Event Time Slot ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/time-slots/event-time-slots/get-event-time-slot) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/time-slots-v2/get-event-time-slot))\n * - List Multi Service Availability Time Slots ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/time-slots/multi-service-availability-time-slots/list-multi-service-availability-time-slots) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/time-slots-v2/list-multi-service-availability-time-slots))\n * - Get Multi Service Availability Time Slot ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/time-slots/multi-service-availability-time-slots/get-multi-service-availability-time-slot) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/time-slots-v2/get-multi-service-availability-time-slot)), it has been replaced with com.wixpress.bookings.availability.v2.AvailabilityTimeSlots.ListAvailabilityTimeSlots(), and will be removed on 2026-03-31.\n */\nexport function queryAvailability(payload: object): RequestOptionsFactory<any> {\n  function __queryAvailability({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.bookings.availability.v1.slot_availability',\n      method: 'POST' as any,\n      methodFqn:\n        'com.wixpress.bookings.availability.AvailabilityCalendar.QueryAvailability',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveComWixpressBookingsAvailabilityAvailabilityCalendarUrl({\n        protoPath: '/v1/availability/query',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __queryAvailability;\n}\n\n/**\n * Returns availability for a given schedule ID\n * The availability for a course is calculated by:\n * - Checking for total spots by the schedule's capacity\n * - Checking for open spots by subtracting the current number of participants from the total spots\n * current number of participants is calculated by summing the number of participants of all bookings booked to the schedule\n * @deprecated\n */\nexport function getScheduleAvailability(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __getScheduleAvailability({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.bookings.availability.v1.slot_availability',\n      method: 'GET' as any,\n      methodFqn:\n        'com.wixpress.bookings.availability.AvailabilityCalendar.GetScheduleAvailability',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveComWixpressBookingsAvailabilityAvailabilityCalendarUrl({\n        protoPath: '/v2/availability/schedule/{scheduleId}',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n    };\n\n    return metadata;\n  }\n\n  return __getScheduleAvailability;\n}\n\n/** @deprecated Will be removed on 2026-03-31. */\nexport function calculateMultiSlotAvailability(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __calculateMultiSlotAvailability({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.bookings.availability.v1.slot_availability',\n      method: 'POST' as any,\n      methodFqn:\n        'com.wixpress.bookings.availability.AvailabilityCalendar.CalculateMultiSlotAvailability',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveComWixpressBookingsAvailabilityAvailabilityCalendarUrl({\n        protoPath: '/v1/availability/multislot',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __calculateMultiSlotAvailability;\n}\n","export interface SlotAvailability {\n  /**\n   * The slot for the corresponding session, when the session is either a single session\n   * or a specific session generated from a recurring session.\n   */\n  slot?: Slot;\n  /**\n   * Whether the slot is bookable. Bookability is determined by checking a\n   * session's open slots and booking policies. Locks are not taken into\n   * account.\n   */\n  bookable?: boolean;\n  /**\n   * Total number of spots for this slot.\n   * For example, if a session has a total of 10 spots and 3 spots are booked,\n   * `spotsTotal` is 10 and `openSpots` is 7.\n   */\n  totalSpots?: number | null;\n  /** Number of open spots for this slot. */\n  openSpots?: number | null;\n  /** An object describing the slot's waitlist and its occupancy. */\n  waitingList?: AvailabilityWaitingList;\n  /** Booking policy violations for the slot. */\n  bookingPolicyViolations?: BookingPolicyViolations;\n  /**\n   * Indicates whether the slot is locked because a waitlist exists.\n   * When a slot frees up, the slot is offered to the next customer on the waitlist. Read-only.\n   */\n  locked?: boolean | null;\n  /**\n   * Deprecated. not in use since 2025-06-15.\n   * @deprecated Deprecated. not in use since 2025-06-15.\n   * @targetRemovalDate 2025-06-15\n   */\n  isFromV2?: boolean;\n}\n\nexport interface Slot {\n  /**\n   * ID for the slot's corresponding session, when the session is either a single session\n   * or a specific session generated from a recurring session.\n   *\n   * Deprecated. Please use `eventId` instead.\n   * @deprecated ID for the slot's corresponding session, when the session is either a single session\n   * or a specific session generated from a recurring session.\n   *\n   * Deprecated. Please use `eventId` instead.\n   * @replacedBy event_id\n   * @targetRemovalDate 2025-09-30\n   */\n  sessionId?: string | null;\n  /** Service ID. */\n  serviceId?: string;\n  /** Schedule ID. */\n  scheduleId?: string;\n  /**\n   * The start time of this slot in [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339)\n   * format.\n   *\n   * If `timezone` is specified,\n   * dates are based on the local date/time. This means that the timezone offset\n   * in the `start_date` is ignored.\n   */\n  startDate?: string | null;\n  /**\n   * The end time of this slot in\n   * [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339) format.\n   *\n   * If `timezone` is specified,\n   * dates are based on the local date/time. This means that the timezone offset\n   * in the `end_date` is ignored.\n   */\n  endDate?: string | null;\n  /**\n   * The timezone for which slot availability is to be calculated.\n   *\n   * Learn more about [handling Daylight Savings Time (DST) for local time zones](https://dev.wix.com/api/rest/wix-bookings/availability-calendar/query-availability#wix-bookings_availability-calendar_query-availability_handling-daylight-savings-time-dst-for-local-time-zones)\n   * when calculating availability.\n   */\n  timezone?: string | null;\n  /**\n   * The resource required for this slot. Currently, the only supported resource\n   * is the relevant staff member for the slot.\n   */\n  resource?: SlotResource;\n  /** Geographic location of the slot. */\n  location?: Location;\n  /**\n   * ID for the slot's corresponding event, when the event is either a single event\n   * or a specific event generated from a recurring event.\n   * @minLength 36\n   * @maxLength 250\n   */\n  eventId?: string | null;\n}\n\nexport interface SlotResource {\n  /**\n   * Resource ID.\n   * @format GUID\n   * @readonly\n   */\n  id?: string | null;\n  /**\n   * Resource name. Read only.\n   * @maxLength 1200\n   */\n  name?: string | null;\n}\n\nexport interface Location {\n  /**\n   * Business location ID. Available only for locations that are business locations,\n   * meaning the `location_type` is `\"OWNER_BUSINESS\"`.\n   * @format GUID\n   */\n  id?: string | null;\n  /** Location name. */\n  name?: string | null;\n  /** The full address of this location. */\n  formattedAddress?: string | null;\n  /**\n   * The full translated address of this location.\n   * @maxLength 512\n   */\n  formattedAddressTranslated?: string | null;\n  /** Location type. */\n  locationType?: LocationTypeWithLiterals;\n}\n\nexport enum LocationType {\n  /** Undefined location type. */\n  UNDEFINED = 'UNDEFINED',\n  /** The business address, as set in the site’s general settings. */\n  OWNER_BUSINESS = 'OWNER_BUSINESS',\n  /** The address as set when creating the service. */\n  OWNER_CUSTOM = 'OWNER_CUSTOM',\n  /** The address as set for the individual session. */\n  CUSTOM = 'CUSTOM',\n}\n\n/** @enumType */\nexport type LocationTypeWithLiterals =\n  | LocationType\n  | 'UNDEFINED'\n  | 'OWNER_BUSINESS'\n  | 'OWNER_CUSTOM'\n  | 'CUSTOM';\n\nexport interface PhoneCall {\n  /** Whether the service is delivered via phone call. */\n  enabled?: boolean | null;\n}\n\nexport interface AvailabilityWaitingList {\n  /**\n   * Total number of spots and open spots for this waitlist.\n   * For example, a Yoga class with 10 waitlist spots and 3 registered\n   * on the waitlist has 10 `total_spots` and 7 `open_spots`.\n   */\n  totalSpots?: number | null;\n  /** Number of open spots for this waitlist. */\n  openSpots?: number | null;\n}\n\nexport interface BookingPolicyViolations {\n  /** Bookings policy violation. Too early to book this slot. */\n  tooEarlyToBook?: boolean | null;\n  /** Bookings policy violation. Too late to book this slot. */\n  tooLateToBook?: boolean | null;\n  /** Bookings policy violation. Online booking is disabled for this slot. */\n  bookOnlineDisabled?: boolean | null;\n  /** Bookings policy violation. Intake Form submission is required for this slot. */\n  validSubmissionRequired?: boolean | null;\n}\n\nexport interface NestedTimeSlot {\n  /** @format GUID */\n  serviceId?: string;\n  /** @maxLength 30 */\n  start?: string;\n  /** @maxLength 30 */\n  end?: string;\n  resource?: SlotResource;\n  /** Schedule ID. */\n  scheduleId?: string;\n}\n\nexport interface QueryAvailabilityRequest {\n  /**\n   * Query options. Refer to the\n   * [supported filters article](https://dev.wix.com/docs/api-reference/business-solutions/bookings/time-slots/availability-calendar/supported-fields-filters-and-sorting)\n   * for a complete list of supported filters.\n   */\n  query: QueryV2;\n  /**\n   * Time zone override for the `endDate` and `startDate` filters, in\n   * [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database), such as\n   * `America/New_York` or `UTC`.\n   *\n   * For example, if you specify `(\"startDate\": \"2025-11-25T17:00:00+01:00\"}` (note\n   * the +01:00 offset) in combination with `{\"timezone\": \"Europe/Bucharest\"}`\n   * (+02:00 offset), *Query Availability* adjusts the effective start time to\n   * reflect the specified time zone. In this case, the start time in UTC would\n   * be `2025-11-25T15:00:00` (using the +02:00 offset).\n   *\n   * Learn more about [handling Daylight Savings Time](https://dev.wix.com/api/rest/wix-bookings/availability-calendar/query-availability#wix-bookings_availability-calendar_query-availability_daylight-savings-time-dst).\n   *\n   * Default: No modification applied to the `endDate` and `startDate` filters.\n   */\n  timezone?: string | null;\n  /**\n   * Maximum number of appointment slots to return for each date. For example, if\n   * you specify `{\"slotsPerDay\": 3}`, a maximum of 3 appointment slots/class events is\n   * returned for each day that's within the query filter's date range.\n   */\n  slotsPerDay?: number | null;\n}\n\nexport interface QueryV2 extends QueryV2PagingMethodOneOf {\n  /**\n   * Filter object. For a list of\n   * fields you can filter by, see [Availability Calendar supported filters](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/availability-calendar/supported-fields-filters-and-sorting).\n   * You must include `serviceId`, `startDate` and `endDate` in the filter. This avoids large results that can impact performance.\n   */\n  filter?: Record<string, any> | null;\n  /**\n   * Sort options.\n   * Currently, only sorting by `startDate` is supported. For details\n   * on sorting, see [Availability Calendar supported sorting](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/availability-calendar/supported-fields-filters-and-sorting#sorting).\n   */\n  sort?: Sorting[];\n}\n\n/** @oneof */\nexport interface QueryV2PagingMethodOneOf {}\n\nexport interface Sorting {\n  /**\n   * Name of the field to sort by.\n   * @maxLength 512\n   */\n  fieldName?: string;\n  /** Sort order. */\n  order?: SortOrderWithLiterals;\n}\n\nexport enum SortOrder {\n  ASC = 'ASC',\n  DESC = 'DESC',\n}\n\n/** @enumType */\nexport type SortOrderWithLiterals = SortOrder | 'ASC' | 'DESC';\n\nexport interface CursorPaging {\n  /**\n   * Maximum number of items to return in the results.\n   * @max 100\n   */\n  limit?: number | null;\n  /**\n   * Pointer to the next or previous page in the list of results.\n   *\n   * Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n   * Not relevant for the first request.\n   * @maxLength 16000\n   */\n  cursor?: string | null;\n}\n\n/** Customer's selected choices during the booking flow. Use these values to calculate service configuration properties such as duration. */\nexport interface V2CustomerChoices {\n  /**\n   * Duration selected by the customer in minutes. Based on the customer's selection from [service options and variants](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/service-options-and-variants/introduction).\n   * When using [add-ons](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction), we recommend passing only `addOnIds` instead of `durationInMinutes`. Wix Bookings then calculates the total duration automatically. If you specify both `addOnIds` and `durationInMinutes`, `durationInMinutes` must equal the service duration plus all selected add-on durations.\n   * @min 1\n   * @max 44639\n   */\n  durationInMinutes?: number | null;\n  /**\n   * IDs of [add-ons](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction) selected by the customer.\n   * When specifying this field, we recommend omitting `durationInMinutes`. Wix Bookings then calculates the total duration based on the service duration plus all selected add-on durations.\n   * @format GUID\n   * @maxSize 21\n   */\n  addOnIds?: string[] | null;\n  /**\n   * ID of the duration choice selected by the customer.\n   * @format GUID\n   */\n  durationChoiceId?: string | null;\n}\n\nexport interface QueryAvailabilityResponse {\n  /** List of appointment slots or class events matching the filter. */\n  availabilityEntries?: SlotAvailability[];\n}\n\nexport interface PagingMetadataV2 {\n  /** Number of items returned in the response. */\n  count?: number | null;\n  /** Offset that was requested. */\n  offset?: number | null;\n  /** Total number of items that match the query. Returned if offset paging is used and the `tooManyToCount` flag is not set. */\n  total?: number | null;\n  /** Flag that indicates the server failed to calculate the `total` field. */\n  tooManyToCount?: boolean | null;\n  /** Cursors to navigate through the result pages using `next` and `prev`. Returned if cursor paging is used. */\n  cursors?: Cursors;\n}\n\nexport interface Cursors {\n  /**\n   * Cursor string pointing to the next page in the list of results.\n   * @maxLength 16000\n   */\n  next?: string | null;\n  /**\n   * Cursor pointing to the previous page in the list of results.\n   * @maxLength 16000\n   */\n  prev?: string | null;\n}\n\nexport interface GetSlotAvailabilityRequest {\n  /** The slot for which the availability is checked. */\n  slot?: Slot;\n  /**\n   * The timezone for which slot availability is to be calculated. If specified,\n   * dates are based on the local date/time, meaning that the timezone offset\n   * in the date's format is ignored.\n   *\n   * Learn more about [handling Daylight Savings Time (DST) for local time zones](https://dev.wix.com/api/rest/wix-bookings/availability-calendar/query-availability#wix-bookings_availability-calendar_query-availability_handling-daylight-savings-time-dst-for-local-time-zones)\n   * when calculating availability.\n   */\n  timezone?: string | null;\n}\n\nexport interface GetSlotAvailabilityResponse {\n  availability?: SlotAvailability;\n  bookingPolicySettings?: BookingPolicySettings;\n}\n\nexport interface BookingPolicySettings {\n  /**\n   * The policy defining the maximum number of participants that can\n   * be booked for a slot or a schedule.\n   */\n  maxParticipantsPerBooking?: number | null;\n}\n\nexport interface GetScheduleAvailabilityRequest {\n  /**\n   * The schedule ID for which availability is being checked.\n   * @format GUID\n   */\n  scheduleId: string;\n}\n\nexport interface GetScheduleAvailabilityResponse {\n  availability?: ScheduleAvailability;\n  bookingPolicySettings?: BookingPolicySettings;\n}\n\nexport interface ScheduleAvailability {\n  /**\n   * The total number of spots defined for the schedule, including\n   * both open and non-available spots.\n   */\n  totalSpots?: number | null;\n  /** The number of open spots defined for the schedule. */\n  openSpots?: number | null;\n  /** Booking policy violations for the schedule. */\n  bookingPolicyViolations?: BookingPolicyViolations;\n}\n\nexport interface CalculateMultiSlotAvailabilityRequest {\n  /** @maxLength 30 */\n  from?: string;\n  /** @maxLength 30 */\n  to?: string;\n  /** @maxLength 30 */\n  timeZone?: string;\n  /** TODO good definition of what bookable means https://github.com/wix-private/scheduler/pull/18267/files?file-filters%5B%5D=.proto&show-viewed-files=true#r1199809006 */\n  bookable?: boolean | null;\n  /**\n   * each nested field is checked on its own. i.e. if `too_early_to_book` is defined and `too_late_to_book` is not defined\n   * we will return slots for which `too_early_to_book` is same as on the request, regardless of `too_late_to_book`.\n   */\n  bookingPolicyViolations?: BookingPolicyViolations;\n  /**\n   * support filtering by location type, or by locationId. Other fields like `name` are ignored\n   * must be set, and must have locationType. If locationType is `OWNER_BUSINESS`, must have location_id\n   */\n  location?: Location;\n  /**\n   * @minSize 1\n   * @maxSize 6\n   */\n  slots?: RuleBasedConstraints[];\n  /**\n   * Maximum number of slots to load for each date. For example, if `slots_per_day` is set to `3`,\n   * at most 3 available slots are returned for each day in the date range specified in the query's\n   * `filter`.\n   *\n   * When a day has both bookable and non-bookable slots, bookable slots are returned first.\n   * Non-bookable slots are returned according to the specified filters, after all\n   * bookable slots are already included.\n   */\n  slotsPerDay?: number | null;\n  cursorPaging?: CursorPaging;\n}\n\nexport interface RuleBasedConstraints {\n  /** @format GUID */\n  serviceId?: string;\n  resourcesFilter?: ResourcesFilter;\n  /** will be passed to availability-2, and to the availability-constraints SPI */\n  customerChoices?: AvailabilityV2CustomerChoices;\n}\n\nexport interface ResourcesFilter {\n  resourceIds?: string[];\n}\n\n/**\n * Selected customer choices.\n *\n * These choices are selected by the customer during the book flow and used to calculate the service's availability configuration.\n */\nexport interface AvailabilityV2CustomerChoices {\n  /**\n   * Selected duration in minutes, based on a [service variant](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/service-options-and-variants/introduction) the customer chose.\n   * When using [add-ons](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction), we recommend passing only `addOnIds` instead of `durationInMinutes`. Wix Bookings then calculates the total duration automatically. If you specify both `addOnIds` and `durationInMinutes`, `durationInMinutes` must equal the service duration plus all selected add-on durations.\n   *\n   * Min: `1` minute\n   * Max: `44639` minutes (30 days, 23 hours, and 59 minutes)\n   * Default: `15` minutes\n   * @min 1\n   * @max 44639\n   */\n  durationInMinutes?: number | null;\n  /**\n   * Selected [add-on](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction) IDs.\n   * When specifying this field, we recommend omitting `durationInMinutes`. Wix Bookings then calculates the total duration based on the service duration plus all selected add-on durations.\n   *\n   * Max: 21 (3 add-on groups × 7 add-ons per group).\n   * @format GUID\n   * @maxSize 21\n   */\n  addOnIds?: string[] | null;\n  /**\n   * Selected duration choice ID.\n   * @format GUID\n   */\n  durationChoiceId?: string | null;\n}\n\nexport interface CalculateMultiSlotAvailabilityResponse {\n  slots?: SlotAvailability[];\n  cursorPagingMetadata?: CursorPagingMetadata;\n}\n\nexport interface CursorPagingMetadata {\n  /** Number of items returned in current page. */\n  count?: number | null;\n  /** Cursor strings that point to the next page, previous page, or both. */\n  cursors?: Cursors;\n  /**\n   * Whether there are more pages to retrieve following the current page.\n   *\n   * + `true`: Another page of results can be retrieved.\n   * + `false`: This is the last page.\n   */\n  hasNext?: boolean | null;\n}\n\nexport interface GetAvailabilityTimeSlotRequest {\n  /**\n   * Service ID of the time slot.\n   * Currently supported only for services of type `APPOINTMENT`.\n   * @format GUID\n   */\n  serviceId?: string;\n  /**\n   * Local start date of the time slot, in ISO-8601 format.\n   * For example, \"2024-01-30T13:30:00\".\n   * @format LOCAL_DATE_TIME\n   */\n  localStartDate?: string;\n  /**\n   * Local end date of the time slot, in ISO-8601 format.\n   * For example, \"2024-01-30T14:30:00\".\n   * @format LOCAL_DATE_TIME\n   */\n  localEndDate?: string;\n  /**\n   * Time zone, in IANA time zone format.\n   * @minLength 1\n   * @maxLength 150\n   */\n  timeZone?: string | null;\n  /**\n   * The location of the time slot.\n   *\n   * You must provide a specific `locationType`.\n   * If locationType is `BUSINESS`, you __must__ also provide a `locationId`.\n   *\n   * <blockquote class=\"warning\">\n   * <p>Supports filtering by location type, or by location ID.\n   * Other fields like <code class=\"grey-background\">name</code> are ignored.</p>\n   * </blockquote>\n   */\n  location?: TimeSlotLocation;\n  /**\n   * Resources to include in response.\n   *\n   * If specified,\n   * the returned `TimeSlot` contains only the available resources out of provided list.\n   * Otherwise, the returned `TimeSlot` returned with all possible `AvailableResources`.\n   * @format GUID\n   * @maxSize 135\n   */\n  resourceIds?: string[];\n  /**\n   * Resource type IDs to include in response, this is in addition to the requested `resourceIds`.\n   *\n   * If specified in request, the returned `TimeSlot` contains only the `AvailableResources` with `ResourceTypeId`\n   * out of those specified, each contains all the available resources of this type.\n   * @format GUID\n   * @maxSize 100\n   */\n  includeResourceTypeIds?: string[];\n  /**\n   * Deprecated. not in use since 2025-06-15.\n   * @deprecated Deprecated. not in use since 2025-06-15.\n   * @targetRemovalDate 2025-06-15\n   */\n  fromV2?: boolean | null;\n}\n\nexport interface TimeSlotLocation {\n  /**\n   * Business Location ID. Present only if the location is a business location.\n   * @format GUID\n   */\n  id?: string | null;\n  /**\n   * The location name.\n   * @maxLength 250\n   */\n  name?: string | null;\n  /**\n   * A string representation for the full address of the location.\n   * @maxLength 300\n   */\n  formattedAddress?: string | null;\n  /**\n   * The type of location:\n   * - `CUSTOM`: The location is specific to this service, and is not derived from the business location.\n   * - `BUSINESS`: A business location, either the default business address, or locations defined for the business by the Business Info.\n   * - `CUSTOMER`: The location is determined by the customer and is not set up beforehand.\n   */\n  locationType?: LocationLocationTypeWithLiterals;\n}\n\nexport enum LocationLocationType {\n  /** A business location, either the default business address, or locations defined for the business by the Business Info. */\n  BUSINESS = 'BUSINESS',\n  /** The location is unique to this service and isn't defined as one of the business locations. */\n  CUSTOM = 'CUSTOM',\n  /** The location can be determined by the customer and is not set up beforehand. */\n  CUSTOMER = 'CUSTOMER',\n}\n\n/** @enumType */\nexport type LocationLocationTypeWithLiterals =\n  | LocationLocationType\n  | 'BUSINESS'\n  | 'CUSTOM'\n  | 'CUSTOMER';\n\nexport interface CustomerChoices {\n  /**\n   * The selected add-ons IDs.\n   * Max: Derived from max amount of Add-On groups * max amount of Add-Ons per group.\n   * @format GUID\n   * @maxSize 21\n   */\n  addOnIds?: string[] | null;\n  /**\n   * The selected duration choice ID.\n   * @format GUID\n   */\n  durationChoiceId?: string | null;\n}\n\nexport interface GetAvailabilityTimeSlotResponse {\n  /** Time slot. */\n  timeSlot?: TimeSlot;\n  /**\n   * Time zone, in IANA time zone format.\n   * @minLength 1\n   * @maxLength 150\n   */\n  timeZone?: string | null;\n}\n\n/**\n * The `TimeSlot` object represents the availability information\n * for an `Appointment` service's specific slot, including:\n *\n * 1. Whether the slot is bookable for the given service?\n *\n * 2. In what location the service is available for this slot?\n *\n * 3. Which available resources can provide the service for this slot?\n *\n * 4. Does booking the slot for the service violates any of the service booking policies?\n *\n * 5. What is the total capacity and remaining capacity of the service at the time of the calculation of the `TimeSlot`?\n *\n * > __Note:__\n * > When the `TimeSlot` has a non empty `NestedTimeSlots`, it represents the availability information\n * > for a given list of `Appointment` services within a specific time slot.\n */\nexport interface TimeSlot {\n  /**\n   * Service ID.\n   *\n   * > Not returned from `MultiServiceAvailabilityTimeSlots` API calls.\n   * > Instead, each nested time slot has its own serviceId.\n   * @format GUID\n   */\n  serviceId?: string | null;\n  /**\n   * Local start date of the time slot in ISO-8601 format.\n   * For example, \"2024-01-30T13:30:00\".\n   * @format LOCAL_DATE_TIME\n   */\n  localStartDate?: string | null;\n  /**\n   * Local end date of the time slot in ISO-8601 format.\n   * For example, \"2024-01-30T14:30:00\".\n   * @format LOCAL_DATE_TIME\n   */\n  localEndDate?: string | null;\n  /**\n   * Whether the slot is bookable according to the service's booking policies.\n   *\n   * If booking this time slot does not violates any of the service's booking policies,\n   * the returned value is `true`. Otherwise, returns `false`.\n   */\n  bookable?: boolean | null;\n  /** The geographic location of the slot. */\n  location?: TimeSlotLocation;\n  /**\n   * Total number of spots for the slot.\n   * @min 1\n   * @max 1000\n   */\n  totalCapacity?: number | null;\n  /**\n   * Remaining number of spots for the slot.\n   * For example, for an appointment service with total capacity of 1 spot and one booked spot, the remaining capacity will be 0.\n   * @max 1000\n   */\n  remainingCapacity?: number | null;\n  /**\n   * Indicators for booking policy violations for the slot.\n   *\n   * Each nested field is checked on its own. i.e. if `tooEarlyToBook` is defined and `bookOnlineDisabled` is not defined\n   * we will return also slots for which `tooEarlyToBook` is same as on the request, regardless of `bookOnlineDisabled`.\n   */\n  bookingPolicyViolations?: Service_availabilityBookingPolicyViolations;\n  /**\n   * List of `AvailableResources` for the time slot.\n   * Each `AvailableResources` contains information about available resources of the same type.\n   *\n   * > Not returned from `MultiServiceAvailabilityTimeSlots` API calls.\n   * > Instead, each nested time slot has its own available resources.\n   */\n  availableResources?: AvailableResources[];\n  /**\n   * > Nested time slots.\n   * > Returned only from `MultiServiceAvailabilityTimeSlots` API calls.\n   * @maxSize 8\n   */\n  nestedTimeSlots?: Service_availabilityNestedTimeSlot[];\n}\n\n/** relevant for event based slots, and not for availability based slots */\nexport interface EventInfo {}\n\nexport interface WaitingList {\n  /**\n   * Total number of spots in this wait list.\n   * @min 1\n   */\n  totalCapacity?: number | null;\n  /**\n   * Number of remaining spots for this wait list.\n   * For example, a Yoga event with 10 waitList spots and 3 registered\n   * on the waitList has 10 `total_capacity` and 7 `remaining_capacity`.\n   */\n  remainingCapacity?: number | null;\n}\n\nexport interface Service_availabilityBookingPolicyViolations {\n  /** Bookings policy violation. Too early to book this slot. */\n  tooEarlyToBook?: boolean | null;\n  /** Bookings policy violation. Too late to book this slot. */\n  tooLateToBook?: boolean | null;\n  /** Bookings policy violation. Online booking is disabled for the `TimeSlot` service. */\n  bookOnlineDisabled?: boolean | null;\n}\n\nexport interface AvailableResources {\n  /**\n   * Resource type ID.\n   * @format GUID\n   */\n  resourceTypeId?: string | null;\n  /**\n   * Available resources for the time slot.\n   *\n   * + When returned from `ListAvailabilityTimeSlots`, empty by default.\n   * + + If you provided `includeResourceTypeIds` or  `resourceIds` in request,\n   * contains __up__ to 10 available resources out of those provided.\n   *\n   * + When returned from `GetAvailabilityTimeSlots`, contains all available resources by default.\n   * + + If you provided `includeResourceTypeIds` or  `resourceIds` in request,\n   * contains all of the available resources out of those provided.\n   *\n   *\n   * > + When returned from `ListMultiServiceAvailabilityTimeSlots`, empty by default.\n   * > + + If you provided `includeResourceTypeIds` or  `resourceIds` in request,\n   * > contains __up__ to 10 available resources out of those provided.\n   *\n   * > + When returned from `GetMultiServiceAvailabilityTimeSlots`, contains all available resources by default.\n   * > + + If you provided `includeResourceTypeIds` or  `resourceIds` in request,\n   * > contains all of the available resources out of those provided.\n   */\n  resources?: Resource[];\n  /**\n   * Whether there are more available resources for the slot that are not listed in `resources` due to size limitations.\n   * @readonly\n   */\n  hasMoreAvailableResources?: boolean | null;\n}\n\nexport interface Resource {\n  /**\n   * Resource ID.\n   * @format GUID\n   */\n  id?: string;\n  /**\n   * Resource name.\n   * @minLength 1\n   * @maxLength 40\n   */\n  name?: string | null;\n}\n\nexport interface Service_availabilityNestedTimeSlot {\n  /**\n   * Service ID of the nested time slot.\n   * @format GUID\n   */\n  serviceId?: string;\n  /**\n   * Local start date of the nested time slot in ISO-8601 format.\n   * For example, \"2024-01-30T13:30:00\".\n   * @format LOCAL_DATE_TIME\n   */\n  localStartDate?: string;\n  /**\n   * Local end date of the nested time slot in ISO-8601 format.\n   * For example, \"2024-01-30T14:30:00\".\n   * @format LOCAL_DATE_TIME\n   */\n  localEndDate?: string;\n  /**\n   * List of `AvailableResources` for the nested time slot.\n   * Each `AvailableResources` contains information about available resources of the same type.\n   * @maxSize 10\n   */\n  availableResources?: AvailableResources[];\n}\n\n/** @docsIgnore */\nexport type GetScheduleAvailabilityApplicationErrors =\n  | {\n      code?: 'FAILED_VALIDATING_AVAILABILITY';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'FAILED_RESOLVING_SCHEDULE';\n      description?: string;\n      data?: Record<string, any>;\n    };\n","import * as ambassadorWixBookingsAvailabilityV1SlotAvailability from './bookings-availability-v1-slot-availability-availability-calendar.http.js';\nimport * as ambassadorWixBookingsAvailabilityV1SlotAvailabilityTypes from './bookings-availability-v1-slot-availability-availability-calendar.types.js';\nimport * as ambassadorWixBookingsAvailabilityV1SlotAvailabilityUniversalTypes from './bookings-availability-v1-slot-availability-availability-calendar.universal.js';\n\nexport type __PublicMethodMetaInfo<\n  K = string,\n  M = unknown,\n  T = unknown,\n  S = unknown,\n  Q = unknown,\n  R = unknown\n> = {\n  getUrl: (context: any) => string;\n  httpMethod: K;\n  path: string;\n  pathParams: M;\n  __requestType: T;\n  __originalRequestType: S;\n  __responseType: Q;\n  __originalResponseType: R;\n};\n\nexport function queryAvailability(): __PublicMethodMetaInfo<\n  'POST',\n  {},\n  ambassadorWixBookingsAvailabilityV1SlotAvailabilityUniversalTypes.QueryAvailabilityRequest,\n  ambassadorWixBookingsAvailabilityV1SlotAvailabilityTypes.QueryAvailabilityRequest,\n  ambassadorWixBookingsAvailabilityV1SlotAvailabilityUniversalTypes.QueryAvailabilityResponse,\n  ambassadorWixBookingsAvailabilityV1SlotAvailabilityTypes.QueryAvailabilityResponse\n> {\n  const payload = {} as any;\n\n  const getRequestOptions =\n    ambassadorWixBookingsAvailabilityV1SlotAvailability.queryAvailability(\n      payload\n    );\n\n  const getUrl = (context: any): string => {\n    const { url } = getRequestOptions(context);\n    return url!;\n  };\n\n  return {\n    getUrl,\n    httpMethod: 'POST',\n    path: '/v1/availability/query',\n    pathParams: {},\n    __requestType: null as any,\n    __originalRequestType: null as any,\n    __responseType: null as any,\n    __originalResponseType: null as any,\n  };\n}\n\nexport function getScheduleAvailability(): __PublicMethodMetaInfo<\n  'GET',\n  { scheduleId: string },\n  ambassadorWixBookingsAvailabilityV1SlotAvailabilityUniversalTypes.GetScheduleAvailabilityRequest,\n  ambassadorWixBookingsAvailabilityV1SlotAvailabilityTypes.GetScheduleAvailabilityRequest,\n  ambassadorWixBookingsAvailabilityV1SlotAvailabilityUniversalTypes.GetScheduleAvailabilityResponse,\n  ambassadorWixBookingsAvailabilityV1SlotAvailabilityTypes.GetScheduleAvailabilityResponse\n> {\n  const payload = { scheduleId: ':scheduleId' } as any;\n\n  const getRequestOptions =\n    ambassadorWixBookingsAvailabilityV1SlotAvailability.getScheduleAvailability(\n      payload\n    );\n\n  const getUrl = (context: any): string => {\n    const { url } = getRequestOptions(context);\n    return url!;\n  };\n\n  return {\n    getUrl,\n    httpMethod: 'GET',\n    path: '/v2/availability/schedule/{scheduleId}',\n    pathParams: { scheduleId: 'scheduleId' },\n    __requestType: null as any,\n    __originalRequestType: null as any,\n    __responseType: null as any,\n    __originalResponseType: null as any,\n  };\n}\n\nexport function calculateMultiSlotAvailability(): __PublicMethodMetaInfo<\n  'POST',\n  {},\n  ambassadorWixBookingsAvailabilityV1SlotAvailabilityUniversalTypes.CalculateMultiSlotAvailabilityRequest,\n  ambassadorWixBookingsAvailabilityV1SlotAvailabilityTypes.CalculateMultiSlotAvailabilityRequest,\n  ambassadorWixBookingsAvailabilityV1SlotAvailabilityUniversalTypes.CalculateMultiSlotAvailabilityResponse,\n  ambassadorWixBookingsAvailabilityV1SlotAvailabilityTypes.CalculateMultiSlotAvailabilityResponse\n> {\n  const payload = {} as any;\n\n  const getRequestOptions =\n    ambassadorWixBookingsAvailabilityV1SlotAvailability.calculateMultiSlotAvailability(\n      payload\n    );\n\n  const getUrl = (context: any): string => {\n    const { url } = getRequestOptions(context);\n    return url!;\n  };\n\n  return {\n    getUrl,\n    httpMethod: 'POST',\n    path: '/v1/availability/multislot',\n    pathParams: {},\n    __requestType: null as any,\n    __originalRequestType: null as any,\n    __responseType: null as any,\n    __originalResponseType: null as any,\n  };\n}\n\nexport {\n  SlotAvailability as SlotAvailabilityOriginal,\n  Slot as SlotOriginal,\n  SlotResource as SlotResourceOriginal,\n  Location as LocationOriginal,\n  LocationType as LocationTypeOriginal,\n  LocationTypeWithLiterals as LocationTypeWithLiteralsOriginal,\n  PhoneCall as PhoneCallOriginal,\n  AvailabilityWaitingList as AvailabilityWaitingListOriginal,\n  BookingPolicyViolations as BookingPolicyViolationsOriginal,\n  NestedTimeSlot as NestedTimeSlotOriginal,\n  QueryAvailabilityRequest as QueryAvailabilityRequestOriginal,\n  QueryV2 as QueryV2Original,\n  QueryV2PagingMethodOneOf as QueryV2PagingMethodOneOfOriginal,\n  Sorting as SortingOriginal,\n  SortOrder as SortOrderOriginal,\n  SortOrderWithLiterals as SortOrderWithLiteralsOriginal,\n  CursorPaging as CursorPagingOriginal,\n  V2CustomerChoices as V2CustomerChoicesOriginal,\n  QueryAvailabilityResponse as QueryAvailabilityResponseOriginal,\n  PagingMetadataV2 as PagingMetadataV2Original,\n  Cursors as CursorsOriginal,\n  GetSlotAvailabilityRequest as GetSlotAvailabilityRequestOriginal,\n  GetSlotAvailabilityResponse as GetSlotAvailabilityResponseOriginal,\n  BookingPolicySettings as BookingPolicySettingsOriginal,\n  GetScheduleAvailabilityRequest as GetScheduleAvailabilityRequestOriginal,\n  GetScheduleAvailabilityResponse as GetScheduleAvailabilityResponseOriginal,\n  ScheduleAvailability as ScheduleAvailabilityOriginal,\n  CalculateMultiSlotAvailabilityRequest as CalculateMultiSlotAvailabilityRequestOriginal,\n  RuleBasedConstraints as RuleBasedConstraintsOriginal,\n  ResourcesFilter as ResourcesFilterOriginal,\n  AvailabilityV2CustomerChoices as AvailabilityV2CustomerChoicesOriginal,\n  CalculateMultiSlotAvailabilityResponse as CalculateMultiSlotAvailabilityResponseOriginal,\n  CursorPagingMetadata as CursorPagingMetadataOriginal,\n  GetAvailabilityTimeSlotRequest as GetAvailabilityTimeSlotRequestOriginal,\n  TimeSlotLocation as TimeSlotLocationOriginal,\n  LocationLocationType as LocationLocationTypeOriginal,\n  LocationLocationTypeWithLiterals as LocationLocationTypeWithLiteralsOriginal,\n  CustomerChoices as CustomerChoicesOriginal,\n  GetAvailabilityTimeSlotResponse as GetAvailabilityTimeSlotResponseOriginal,\n  TimeSlot as TimeSlotOriginal,\n  EventInfo as EventInfoOriginal,\n  WaitingList as WaitingListOriginal,\n  Service_availabilityBookingPolicyViolations as Service_availabilityBookingPolicyViolationsOriginal,\n  AvailableResources as AvailableResourcesOriginal,\n  Resource as ResourceOriginal,\n  Service_availabilityNestedTimeSlot as Service_availabilityNestedTimeSlotOriginal,\n  GetScheduleAvailabilityApplicationErrors as GetScheduleAvailabilityApplicationErrorsOriginal,\n} from './bookings-availability-v1-slot-availability-availability-calendar.types.js';\n"],"mappings":"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","names":["LocationType","SortOrder","LocationLocationType","queryAvailability","getScheduleAvailability","calculateMultiSlotAvailability"]}