{"version":3,"sources":["../../src/restaurants-v1-availability-exception-availability-exceptions.public.ts","../../src/restaurants-v1-availability-exception-availability-exceptions.universal.ts","../../src/restaurants-v1-availability-exception-availability-exceptions.http.ts","../../src/restaurants-v1-availability-exception-availability-exceptions.context.ts"],"sourcesContent":["import { renameKeysFromRESTResponseToSDKResponse } from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { EventDefinition, HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n  AvailabilityException,\n  AvailabilityExceptionCreatedEnvelope,\n  AvailabilityExceptionDeletedEnvelope,\n  AvailabilityExceptionQuery,\n  AvailabilityExceptionUpdatedEnvelope,\n  AvailabilityExceptionsQueryBuilder,\n  BulkCreateAvailabilityExceptionsOptions,\n  BulkCreateAvailabilityExceptionsResponse,\n  BulkUpdateAvailabilityExceptionTagsApplicationErrors,\n  BulkUpdateAvailabilityExceptionTagsByFilterApplicationErrors,\n  BulkUpdateAvailabilityExceptionTagsByFilterOptions,\n  BulkUpdateAvailabilityExceptionTagsByFilterResponse,\n  BulkUpdateAvailabilityExceptionTagsOptions,\n  BulkUpdateAvailabilityExceptionTagsResponse,\n  BulkUpdateAvailabilityExceptionsOptions,\n  BulkUpdateAvailabilityExceptionsResponse,\n  MaskedAvailabilityException,\n  QueryAvailabilityExceptionsResponse,\n  UpdateAvailabilityException,\n  bulkCreateAvailabilityExceptions as universalBulkCreateAvailabilityExceptions,\n  bulkUpdateAvailabilityExceptionTags as universalBulkUpdateAvailabilityExceptionTags,\n  bulkUpdateAvailabilityExceptionTagsByFilter as universalBulkUpdateAvailabilityExceptionTagsByFilter,\n  bulkUpdateAvailabilityExceptions as universalBulkUpdateAvailabilityExceptions,\n  createAvailabilityException as universalCreateAvailabilityException,\n  deleteAvailabilityException as universalDeleteAvailabilityException,\n  getAvailabilityException as universalGetAvailabilityException,\n  queryAvailabilityExceptions as universalQueryAvailabilityExceptions,\n  typedQueryAvailabilityExceptions as universalTypedQueryAvailabilityExceptions,\n  updateAvailabilityException as universalUpdateAvailabilityException,\n} from './restaurants-v1-availability-exception-availability-exceptions.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/restaurants' };\n\nexport function createAvailabilityException(\n  httpClient: HttpClient\n): CreateAvailabilityExceptionSignature {\n  return (\n    availabilityException: NonNullablePaths<\n      AvailabilityException,\n      | `affectedFulfillmentMethods`\n      | `affectedFulfillmentMethods.affectedMethods`\n      | `available`\n      | `endTime`\n      | `operationId`\n      | `startTime`,\n      3\n    >\n  ) =>\n    universalCreateAvailabilityException(\n      availabilityException,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface CreateAvailabilityExceptionSignature {\n  /**\n   * Creates a new availability exception.\n   * @param - Availability exception details.\n   * @returns The created availability exception.\n   */\n  (\n    availabilityException: NonNullablePaths<\n      AvailabilityException,\n      | `affectedFulfillmentMethods`\n      | `affectedFulfillmentMethods.affectedMethods`\n      | `available`\n      | `endTime`\n      | `operationId`\n      | `startTime`,\n      3\n    >\n  ): Promise<\n    NonNullablePaths<\n      AvailabilityException,\n      | `affectedFulfillmentMethods.specificFulfillmentMethodsOptions.fulfillmentMethodIds`\n      | `affectedFulfillmentMethods.affectedMethods`\n      | `tags.privateTags.tagIds`,\n      4\n    >\n  >;\n}\n\nexport function getAvailabilityException(\n  httpClient: HttpClient\n): GetAvailabilityExceptionSignature {\n  return (availabilityExceptionId: string) =>\n    universalGetAvailabilityException(\n      availabilityExceptionId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface GetAvailabilityExceptionSignature {\n  /**\n   * Retrieves an availability exception.\n   * @param - ID of the availability exception to retrieve.\n   * @returns The requested availability exception.\n   */\n  (availabilityExceptionId: string): Promise<\n    NonNullablePaths<\n      AvailabilityException,\n      | `affectedFulfillmentMethods.specificFulfillmentMethodsOptions.fulfillmentMethodIds`\n      | `affectedFulfillmentMethods.affectedMethods`\n      | `tags.privateTags.tagIds`,\n      4\n    >\n  >;\n}\n\nexport function updateAvailabilityException(\n  httpClient: HttpClient\n): UpdateAvailabilityExceptionSignature {\n  return (\n    _id: string,\n    availabilityException: NonNullablePaths<\n      UpdateAvailabilityException,\n      `revision`,\n      2\n    >\n  ) =>\n    universalUpdateAvailabilityException(\n      _id,\n      availabilityException,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface UpdateAvailabilityExceptionSignature {\n  /**\n   * Updates an availability exception.\n   *\n   * Each time the availability exception is updated, `revision` increments by 1.\n   * The current `revision` must be passed when updating the availability exception.\n   * This ensures you're working with the latest availability exception and prevents unintended overwrites.\n   * @param - Availability exception ID.\n   * @returns Updated availability exception.\n   */\n  (\n    _id: string,\n    availabilityException: NonNullablePaths<\n      UpdateAvailabilityException,\n      `revision`,\n      2\n    >\n  ): Promise<\n    NonNullablePaths<\n      AvailabilityException,\n      | `affectedFulfillmentMethods.specificFulfillmentMethodsOptions.fulfillmentMethodIds`\n      | `affectedFulfillmentMethods.affectedMethods`\n      | `tags.privateTags.tagIds`,\n      4\n    >\n  >;\n}\n\nexport function deleteAvailabilityException(\n  httpClient: HttpClient\n): DeleteAvailabilityExceptionSignature {\n  return (availabilityExceptionId: string) =>\n    universalDeleteAvailabilityException(\n      availabilityExceptionId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface DeleteAvailabilityExceptionSignature {\n  /**\n   * Deletes an availability exception.\n   * @param - ID of the availability exception to delete.\n   */\n  (availabilityExceptionId: string): Promise<void>;\n}\n\nexport function queryAvailabilityExceptions(\n  httpClient: HttpClient\n): QueryAvailabilityExceptionsSignature {\n  return () =>\n    universalQueryAvailabilityExceptions(\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface QueryAvailabilityExceptionsSignature {\n  /**\n   * Creates a query to retrieve a list of availability exceptions.\n   *\n   * The `queryAvailabilityExceptions()` function builds a query to retrieve a list of availability exceptions and returns an `AvailabilityExceptionsQueryBuilder` object.\n   *\n   * The returned object contains the query definition, which is used to run the query using the [`find()`](/availability-exceptions/availability-exceptions-query-builder/find) function.\n   *\n   * You can refine the query by chaining `AvailabilityExceptionsQueryBuilder` functions onto the query. `AvailabilityExceptionsQueryBuilder` functions enable you to filter, sort, and control the results that `queryAvailabilityExceptions()` returns.\n   *\n   * `queryAvailabilityExceptions()` runs with the following `AvailabilityExceptionsQueryBuilder` defaults, which you can override:\n   *\n   * - [`limit(50)`](/availability-exceptions/availability-exceptions-query-builder/limit)\n   * - [`ascending('_id')`](/availability-exceptions/availability-exceptions-query-builder/ascending)\n   *\n   * The following `AvailabilityExceptionsQueryBuilder` functions are supported for `queryAvailabilityExceptions()`. For a full description of the availability exception object, see the object returned for the [`items`](/availability-exceptions/availability-exceptions-query-result/items) property in `AvailabilityExceptionsQueryResult`.\n   */\n  (): AvailabilityExceptionsQueryBuilder;\n}\n\nexport function typedQueryAvailabilityExceptions(\n  httpClient: HttpClient\n): TypedQueryAvailabilityExceptionsSignature {\n  return (query: AvailabilityExceptionQuery) =>\n    universalTypedQueryAvailabilityExceptions(\n      query,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface TypedQueryAvailabilityExceptionsSignature {\n  /** */\n  (query: AvailabilityExceptionQuery): Promise<\n    NonNullablePaths<\n      QueryAvailabilityExceptionsResponse,\n      | `availabilityExceptions`\n      | `availabilityExceptions.${number}.affectedFulfillmentMethods.affectedMethods`,\n      5\n    >\n  >;\n}\n\nexport function bulkCreateAvailabilityExceptions(\n  httpClient: HttpClient\n): BulkCreateAvailabilityExceptionsSignature {\n  return (\n    availabilityExceptions: NonNullablePaths<\n      AvailabilityException,\n      | `affectedFulfillmentMethods`\n      | `affectedFulfillmentMethods.affectedMethods`\n      | `available`\n      | `endTime`\n      | `operationId`\n      | `startTime`,\n      3\n    >[],\n    options?: BulkCreateAvailabilityExceptionsOptions\n  ) =>\n    universalBulkCreateAvailabilityExceptions(\n      availabilityExceptions,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkCreateAvailabilityExceptionsSignature {\n  /**\n   * Creates multiple availability exceptions.\n   * @param - Availability exception details.\n   */\n  (\n    availabilityExceptions: NonNullablePaths<\n      AvailabilityException,\n      | `affectedFulfillmentMethods`\n      | `affectedFulfillmentMethods.affectedMethods`\n      | `available`\n      | `endTime`\n      | `operationId`\n      | `startTime`,\n      3\n    >[],\n    options?: BulkCreateAvailabilityExceptionsOptions\n  ): Promise<\n    NonNullablePaths<\n      BulkCreateAvailabilityExceptionsResponse,\n      | `results`\n      | `results.${number}.itemMetadata.originalIndex`\n      | `results.${number}.itemMetadata.success`\n      | `results.${number}.itemMetadata.error.code`\n      | `results.${number}.itemMetadata.error.description`\n      | `results.${number}.availabilityException.affectedFulfillmentMethods.affectedMethods`\n      | `bulkActionMetadata.totalSuccesses`\n      | `bulkActionMetadata.totalFailures`\n      | `bulkActionMetadata.undetailedFailures`,\n      6\n    >\n  >;\n}\n\nexport function bulkUpdateAvailabilityExceptions(\n  httpClient: HttpClient\n): BulkUpdateAvailabilityExceptionsSignature {\n  return (\n    availabilityExceptions: NonNullablePaths<\n      MaskedAvailabilityException,\n      `availabilityException._id` | `availabilityException.revision`,\n      3\n    >[],\n    options?: BulkUpdateAvailabilityExceptionsOptions\n  ) =>\n    universalBulkUpdateAvailabilityExceptions(\n      availabilityExceptions,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkUpdateAvailabilityExceptionsSignature {\n  /**\n   * Updates multiple availability exceptions.\n   * @param - Availability exceptions entities to update.\n   */\n  (\n    availabilityExceptions: NonNullablePaths<\n      MaskedAvailabilityException,\n      `availabilityException._id` | `availabilityException.revision`,\n      3\n    >[],\n    options?: BulkUpdateAvailabilityExceptionsOptions\n  ): Promise<\n    NonNullablePaths<\n      BulkUpdateAvailabilityExceptionsResponse,\n      | `results`\n      | `results.${number}.itemMetadata.originalIndex`\n      | `results.${number}.itemMetadata.success`\n      | `results.${number}.itemMetadata.error.code`\n      | `results.${number}.itemMetadata.error.description`\n      | `results.${number}.item.affectedFulfillmentMethods.affectedMethods`\n      | `bulkActionMetadata.totalSuccesses`\n      | `bulkActionMetadata.totalFailures`\n      | `bulkActionMetadata.undetailedFailures`,\n      6\n    >\n  >;\n}\n\nexport function bulkUpdateAvailabilityExceptionTags(\n  httpClient: HttpClient\n): BulkUpdateAvailabilityExceptionTagsSignature {\n  return (\n    availabilityExceptionIds: string[],\n    options?: BulkUpdateAvailabilityExceptionTagsOptions\n  ) =>\n    universalBulkUpdateAvailabilityExceptionTags(\n      availabilityExceptionIds,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkUpdateAvailabilityExceptionTagsSignature {\n  /**\n   * Synchronously update tags on multiple availability exceptions.\n   * If you specify a tag in both `assignTags` and `unassignTags`, it is assigned.\n   * @param - IDs of the availability exceptions to update tags for.\n   */\n  (\n    availabilityExceptionIds: string[],\n    options?: BulkUpdateAvailabilityExceptionTagsOptions\n  ): Promise<\n    NonNullablePaths<\n      BulkUpdateAvailabilityExceptionTagsResponse,\n      | `results`\n      | `results.${number}.itemMetadata.originalIndex`\n      | `results.${number}.itemMetadata.success`\n      | `results.${number}.itemMetadata.error.code`\n      | `results.${number}.itemMetadata.error.description`\n      | `bulkActionMetadata.totalSuccesses`\n      | `bulkActionMetadata.totalFailures`\n      | `bulkActionMetadata.undetailedFailures`,\n      6\n    > & {\n      __applicationErrorsType?: BulkUpdateAvailabilityExceptionTagsApplicationErrors;\n    }\n  >;\n}\n\nexport function bulkUpdateAvailabilityExceptionTagsByFilter(\n  httpClient: HttpClient\n): BulkUpdateAvailabilityExceptionTagsByFilterSignature {\n  return (\n    filter: Record<string, any>,\n    options?: BulkUpdateAvailabilityExceptionTagsByFilterOptions\n  ) =>\n    universalBulkUpdateAvailabilityExceptionTagsByFilter(\n      filter,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkUpdateAvailabilityExceptionTagsByFilterSignature {\n  /**\n   * Asynchronously update tags on multiple availability exceptions according to the specified filter.\n   * If a filter isn't specified, this method updates all availability exceptions.\n   * If you specify a tag in both `assignTags` and `unassignTags`, it is assigned.\n   * @param - Filter that determines which availability exceptions to update tags for.\n   */\n  (\n    filter: Record<string, any>,\n    options?: BulkUpdateAvailabilityExceptionTagsByFilterOptions\n  ): Promise<\n    NonNullablePaths<\n      BulkUpdateAvailabilityExceptionTagsByFilterResponse,\n      `jobId`,\n      2\n    > & {\n      __applicationErrorsType?: BulkUpdateAvailabilityExceptionTagsByFilterApplicationErrors;\n    }\n  >;\n}\n\nexport const onAvailabilityExceptionCreated = EventDefinition(\n  'wix.restaurants.v1.availability_exception_created',\n  true,\n  (event: AvailabilityExceptionCreatedEnvelope) =>\n    renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(event, [\n        {\n          transformFn: transformRESTTimestampToSDKTimestamp,\n          paths: [\n            { path: 'entity.createdDate' },\n            { path: 'entity.updatedDate' },\n            { path: 'entity.startTime' },\n            { path: 'entity.endTime' },\n            { path: 'metadata.eventTime' },\n          ],\n        },\n      ])\n    )\n)<AvailabilityExceptionCreatedEnvelope>();\nexport const onAvailabilityExceptionDeleted = EventDefinition(\n  'wix.restaurants.v1.availability_exception_deleted',\n  true,\n  (event: AvailabilityExceptionDeletedEnvelope) =>\n    renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(event, [\n        {\n          transformFn: transformRESTTimestampToSDKTimestamp,\n          paths: [\n            { path: 'entity.createdDate' },\n            { path: 'entity.updatedDate' },\n            { path: 'entity.startTime' },\n            { path: 'entity.endTime' },\n            { path: 'metadata.eventTime' },\n          ],\n        },\n      ])\n    )\n)<AvailabilityExceptionDeletedEnvelope>();\nexport const onAvailabilityExceptionUpdated = EventDefinition(\n  'wix.restaurants.v1.availability_exception_updated',\n  true,\n  (event: AvailabilityExceptionUpdatedEnvelope) =>\n    renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(event, [\n        {\n          transformFn: transformRESTTimestampToSDKTimestamp,\n          paths: [\n            { path: 'entity.createdDate' },\n            { path: 'entity.updatedDate' },\n            { path: 'entity.startTime' },\n            { path: 'entity.endTime' },\n            { path: 'metadata.eventTime' },\n            { path: 'modifiedFields.createdDate' },\n            { path: 'modifiedFields.updatedDate' },\n            { path: 'modifiedFields.startTime' },\n            { path: 'modifiedFields.endTime' },\n          ],\n        },\n      ])\n    )\n)<AvailabilityExceptionUpdatedEnvelope>();\n\nexport {\n  AccountInfo,\n  AccountInfoMetadata,\n  ActionEvent,\n  AffectedFulfillmentMethods,\n  AffectedFulfillmentMethodsAffectedMethodsOptionsOneOf,\n  AffectedMethods,\n  ApplicationError,\n  AvailabilityException,\n  AvailabilityExceptionCreatedEnvelope,\n  AvailabilityExceptionDeletedEnvelope,\n  AvailabilityExceptionQuerySpec,\n  AvailabilityExceptionUpdatedEnvelope,\n  AvailabilityExceptionsQueryBuilder,\n  AvailabilityExceptionsQueryResult,\n  BaseEventMetadata,\n  BulkActionMetadata,\n  BulkAvailabilityExceptionResult,\n  BulkCreateAvailabilityExceptionsOptions,\n  BulkCreateAvailabilityExceptionsRequest,\n  BulkCreateAvailabilityExceptionsResponse,\n  BulkCreateAvailabilityExceptionsResult,\n  BulkUpdateAvailabilityExceptionTagsByFilterOptions,\n  BulkUpdateAvailabilityExceptionTagsByFilterRequest,\n  BulkUpdateAvailabilityExceptionTagsByFilterResponse,\n  BulkUpdateAvailabilityExceptionTagsOptions,\n  BulkUpdateAvailabilityExceptionTagsRequest,\n  BulkUpdateAvailabilityExceptionTagsResponse,\n  BulkUpdateAvailabilityExceptionTagsResult,\n  BulkUpdateAvailabilityExceptionsOptions,\n  BulkUpdateAvailabilityExceptionsRequest,\n  BulkUpdateAvailabilityExceptionsResponse,\n  CreateAvailabilityExceptionRequest,\n  CreateAvailabilityExceptionResponse,\n  CursorPaging,\n  CursorPagingMetadata,\n  CursorQuery,\n  CursorQueryPagingMethodOneOf,\n  Cursors,\n  DeleteAvailabilityExceptionRequest,\n  DeleteAvailabilityExceptionResponse,\n  DomainEvent,\n  DomainEventBodyOneOf,\n  Empty,\n  EntityCreatedEvent,\n  EntityDeletedEvent,\n  EntityUpdatedEvent,\n  EventMetadata,\n  ExtendedFields,\n  GetAvailabilityExceptionRequest,\n  GetAvailabilityExceptionResponse,\n  IdentificationData,\n  IdentificationDataIdOneOf,\n  ItemMetadata,\n  MaskedAvailabilityException,\n  MessageEnvelope,\n  QueryAvailabilityExceptionsRequest,\n  QueryAvailabilityExceptionsResponse,\n  RestoreInfo,\n  SortOrder,\n  Sorting,\n  SpecificFulfillmentMethodsImpactScope,\n  TagList,\n  Tags,\n  Type,\n  UpdateAvailabilityException,\n  UpdateAvailabilityExceptionRequest,\n  UpdateAvailabilityExceptionResponse,\n  WebhookIdentityType,\n  utils,\n} from './restaurants-v1-availability-exception-availability-exceptions.universal.js';\n","import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport { queryBuilder } from '@wix/sdk-runtime/query-builder';\nimport {\n  renameKeysFromSDKRequestToRESTRequest,\n  renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport {\n  HttpClient,\n  HttpResponse,\n  NonNullablePaths,\n  QuerySpec,\n  Query as QuerySdkType,\n} from '@wix/sdk-types';\nimport * as ambassadorWixRestaurantsV1AvailabilityException from './restaurants-v1-availability-exception-availability-exceptions.http.js';\n// @ts-ignore\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { createQueryUtils } from '@wix/sdk-runtime/query-builder-utils';\n\nexport interface AvailabilityException {\n  /**\n   * Availability exception ID.\n   * @format GUID\n   * @readonly\n   */\n  _id?: string | null;\n  /**\n   * Revision number, which increments by 1 each time the availability exception is updated.\n   * To prevent conflicting changes, the current revision must be specified when updating the availability exception.\n   * @readonly\n   */\n  revision?: string | null;\n  /**\n   * Date and time the availability exception was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format.\n   * @readonly\n   */\n  _createdDate?: Date | null;\n  /**\n   * Date and time the availability exception was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format.\n   * @readonly\n   */\n  _updatedDate?: Date | null;\n  /** The start time of the availability exception in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format. */\n  startTime?: Date | null;\n  /** The end time of the availability exception in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format. */\n  endTime?: Date | null;\n  /**\n   * Whether the exception makes the [`start_time`, `end_time`] range available.\n   * If `true`, the exception makes the restaurant available for online ordering during the time range. If `false`, the exception makes the restaurant unavailable for ordering during the time range.\n   * Currently, only `false` is supported.\n   * @readonly\n   */\n  available?: boolean | null;\n  /**\n   * Exception name.\n   * @maxLength 500\n   */\n  name?: string | null;\n  /** Fulfillment methods for which this exception applies. */\n  affectedFulfillmentMethods?: AffectedFulfillmentMethods;\n  /**\n   * ID of the restaurant operation this exception is associated with. (See the Restaurants Operations API for more information.)\n   * @format GUID\n   */\n  operationId?: string | null;\n  /** Extended fields. */\n  extendedFields?: ExtendedFields;\n  /**\n   * Business location ID ([SDK](https://dev.wix.com/docs/sdk/backend-modules/restaurants/wix-restaurants-new/about-business-locations) | [REST](https://dev.wix.com/docs/rest/business-solutions/restaurants/wix-restaurants-new/about-business-locations)) of the operation this availability exception applies to.\n   * @format GUID\n   * @readonly\n   */\n  businessLocationId?: string | null;\n  /** Tags ([SDK](https://dev.wix.com/docs/sdk/backend-modules/tags/tags/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/tags/introduction)) used to classify and sort different types of availability exceptions. */\n  tags?: Tags;\n}\n\nexport interface AffectedFulfillmentMethods\n  extends AffectedFulfillmentMethodsAffectedMethodsOptionsOneOf {\n  /** Settings for specific fulfillment methods. */\n  specificFulfillmentMethodsOptions?: SpecificFulfillmentMethodsImpactScope;\n  /** The type of the fulfillment methods this exception applies to. */\n  affectedMethods?: AffectedMethodsWithLiterals;\n}\n\n/** @oneof */\nexport interface AffectedFulfillmentMethodsAffectedMethodsOptionsOneOf {\n  /** Settings for specific fulfillment methods. */\n  specificFulfillmentMethodsOptions?: SpecificFulfillmentMethodsImpactScope;\n}\n\n/** The scope the exception applied. */\nexport enum AffectedMethods {\n  /** All fulfillment methods of this operation applied for this exception. */\n  ALL_FULFILLMENT_METHODS = 'ALL_FULFILLMENT_METHODS',\n  /** Specific fulfillment methods applied for this exception. */\n  SPECIFIC_FULFILLMENT_METHODS = 'SPECIFIC_FULFILLMENT_METHODS',\n  /** All pickup fulfillment methods applied for this exception. */\n  ALL_PICKUP_FULFILLMENT_METHODS = 'ALL_PICKUP_FULFILLMENT_METHODS',\n  /** All delivery fulfillment methods applied for this exception. */\n  ALL_DELIVERY_FULFILLMENT_METHODS = 'ALL_DELIVERY_FULFILLMENT_METHODS',\n}\n\n/** @enumType */\nexport type AffectedMethodsWithLiterals =\n  | AffectedMethods\n  | 'ALL_FULFILLMENT_METHODS'\n  | 'SPECIFIC_FULFILLMENT_METHODS'\n  | 'ALL_PICKUP_FULFILLMENT_METHODS'\n  | 'ALL_DELIVERY_FULFILLMENT_METHODS';\n\n/** Details of the specific fulfillment methods this exception applies to. */\nexport interface SpecificFulfillmentMethodsImpactScope {\n  /**\n   * IDs of the fulfillment methods this exception applies to.\n   * @format GUID\n   * @maxSize 500\n   */\n  fulfillmentMethodIds?: string[] | null;\n}\n\nexport interface ExtendedFields {\n  /**\n   * Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\n   * The value of each key is structured according to the schema defined when the extended fields were configured.\n   *\n   * You can only access fields for which you have the appropriate permissions.\n   *\n   * Learn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).\n   */\n  namespaces?: Record<string, Record<string, any>>;\n}\n\nexport enum Type {\n  /** Unspecified Availability exception type. */\n  UNSPECIFIED_AVAILABILITY_EXCEPTION_TYPE = 'UNSPECIFIED_AVAILABILITY_EXCEPTION_TYPE',\n  /** Ordering paused. */\n  ORDERING_PAUSED = 'ORDERING_PAUSED',\n  /** The restaurant may be closed completely or only partially. For example, a restaurant may be closed only for pickup orders, only for delivery orders, or only for orders from a specific delivery area. */\n  CLOSURE = 'CLOSURE',\n}\n\n/** @enumType */\nexport type TypeWithLiterals =\n  | Type\n  | 'UNSPECIFIED_AVAILABILITY_EXCEPTION_TYPE'\n  | 'ORDERING_PAUSED'\n  | 'CLOSURE';\n\n/**\n * Common object for tags.\n * Should be use as in this example:\n * message Foo {\n * string id = 1;\n * ...\n * Tags tags = 5\n * }\n * example of taggable entity\n * {\n * id: \"123\"\n * tags: {\n * tags: {\n * tag_ids:[\"11\",\"22\"]\n * },\n * private_tags: {\n * tag_ids: [\"33\", \"44\"]\n * }\n * }\n * }\n */\nexport interface Tags {\n  /** Tags that require an additional permission in order to access them, normally not given to site members or visitors. */\n  privateTags?: TagList;\n  /** Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors. */\n  tags?: TagList;\n}\n\nexport interface TagList {\n  /**\n   * List of tag IDs\n   * @maxSize 100\n   * @maxLength 5\n   */\n  tagIds?: string[];\n}\n\nexport interface CreateAvailabilityExceptionRequest {\n  /** Availability exception details. */\n  availabilityException: AvailabilityException;\n}\n\nexport interface CreateAvailabilityExceptionResponse {\n  /** The created availability exception. */\n  availabilityException?: AvailabilityException;\n}\n\nexport interface GetAvailabilityExceptionRequest {\n  /**\n   * ID of the availability exception to retrieve.\n   * @format GUID\n   */\n  availabilityExceptionId: string;\n}\n\nexport interface GetAvailabilityExceptionResponse {\n  /** The requested availability exception. */\n  availabilityException?: AvailabilityException;\n}\n\nexport interface UpdateAvailabilityExceptionRequest {\n  /** Availability exception to update. */\n  availabilityException: AvailabilityException;\n}\n\nexport interface UpdateAvailabilityExceptionResponse {\n  /** Updated availability exception. */\n  availabilityException?: AvailabilityException;\n}\n\nexport interface DeleteAvailabilityExceptionRequest {\n  /**\n   * ID of the availability exception to delete.\n   * @format GUID\n   */\n  availabilityExceptionId: string;\n}\n\nexport interface DeleteAvailabilityExceptionResponse {}\n\nexport interface QueryAvailabilityExceptionsRequest {\n  /** WQL expression. */\n  query?: CursorQuery;\n}\n\nexport interface CursorQuery extends CursorQueryPagingMethodOneOf {\n  /** Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `filter` or `sort`. */\n  cursorPaging?: CursorPaging;\n  /**\n   * Filter object in the following format:\n   * `\"filter\" : {\n   * \"fieldName1\": \"value1\",\n   * \"fieldName2\":{\"$operator\":\"value2\"}\n   * }`\n   * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains`\n   */\n  filter?: Record<string, any> | null;\n  /**\n   * Sort object in the following format:\n   * `[{\"fieldName\":\"sortField1\",\"order\":\"ASC\"},{\"fieldName\":\"sortField2\",\"order\":\"DESC\"}]`\n   * @maxSize 4\n   */\n  sort?: Sorting[];\n}\n\n/** @oneof */\nexport interface CursorQueryPagingMethodOneOf {\n  /** Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `filter` or `sort`. */\n  cursorPaging?: CursorPaging;\n}\n\nexport interface Sorting {\n  /**\n   * Name of the field to sort by.\n   * @maxLength 64\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   * Number of items to load.\n   * @max 100\n   */\n  limit?: number | null;\n  /**\n   * Pointer to the next or previous page in the list of results.\n   *\n   * You can get the relevant cursor token\n   * 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\nexport interface QueryAvailabilityExceptionsResponse {\n  /** List of availability exceptions. */\n  availabilityExceptions?: AvailabilityException[];\n  /** Paging metadata */\n  pagingMetadata?: CursorPagingMetadata;\n}\n\nexport interface CursorPagingMetadata {\n  /** Number of items returned in the response. */\n  count?: number | null;\n  /** Offset that was requested. */\n  cursors?: Cursors;\n  /**\n   * Indicates if there are more results after the current page.\n   * If `true`, another page of results can be retrieved.\n   * If `false`, this is the last page.\n   */\n  hasNext?: boolean | null;\n}\n\nexport interface Cursors {\n  /**\n   * Cursor pointing to next page in the list of results.\n   * @maxLength 16000\n   */\n  next?: string | null;\n  /**\n   * Cursor pointing to previous page in the list of results.\n   * @maxLength 16000\n   */\n  prev?: string | null;\n}\n\nexport interface BulkCreateAvailabilityExceptionsRequest {\n  /**\n   * Availability exception details.\n   * @minSize 1\n   * @maxSize 20\n   */\n  availabilityExceptions: AvailabilityException[];\n  /** Whether the full availability exception entity is returned. Defaults to `true`. */\n  returnEntity?: boolean;\n}\n\nexport interface BulkCreateAvailabilityExceptionsResponse {\n  /** Information about the created availability exception. */\n  results?: BulkCreateAvailabilityExceptionsResult[];\n  /** Metadata for the API call. */\n  bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkCreateAvailabilityExceptionsResult {\n  /** Metadata for availability exception creation. */\n  itemMetadata?: ItemMetadata;\n  /** Created availability exception. */\n  availabilityException?: AvailabilityException;\n}\n\nexport interface ItemMetadata {\n  /**\n   * Item ID. Should always be available, unless it's impossible (for example, when failing to create an item).\n   * @format GUID\n   */\n  _id?: string | null;\n  /** Index of the item within the request array. Allows for correlation between request and response items. */\n  originalIndex?: number;\n  /** Whether the requested action was successful for this item. When `false`, the `error` field is populated. */\n  success?: boolean;\n  /** Details about the error in case of failure. */\n  error?: ApplicationError;\n}\n\nexport interface ApplicationError {\n  /** Error code. */\n  code?: string;\n  /** Description of the error. */\n  description?: string;\n  /** Data related to the error. */\n  data?: Record<string, any> | null;\n}\n\nexport interface BulkActionMetadata {\n  /** Number of items that were successfully processed. */\n  totalSuccesses?: number;\n  /** Number of items that couldn't be processed. */\n  totalFailures?: number;\n  /** Number of failures without details because detailed failure threshold was exceeded. */\n  undetailedFailures?: number;\n}\n\nexport interface BulkUpdateAvailabilityExceptionsRequest {\n  /**\n   * Availability exceptions entities to update.\n   * @minSize 1\n   * @maxSize 100\n   */\n  availabilityExceptions: MaskedAvailabilityException[];\n  /** Whether to receive the entity in the response. */\n  returnEntity?: boolean;\n}\n\nexport interface MaskedAvailabilityException {\n  /** Availability exception entity to update. */\n  availabilityException?: AvailabilityException;\n  /** Explicit list of fields to update. */\n  mask?: string[];\n}\n\nexport interface BulkUpdateAvailabilityExceptionsResponse {\n  /** Information about the updated availability exceptions. */\n  results?: BulkAvailabilityExceptionResult[];\n  /** Bulk Update Availability Exceptions metadata. */\n  bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkAvailabilityExceptionResult {\n  /** Metadata of the availability exception update. */\n  itemMetadata?: ItemMetadata;\n  /** Availability exception (present when return_entity is true). */\n  item?: AvailabilityException;\n}\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n  createdEvent?: EntityCreatedEvent;\n  updatedEvent?: EntityUpdatedEvent;\n  deletedEvent?: EntityDeletedEvent;\n  actionEvent?: ActionEvent;\n  /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n  _id?: string;\n  /**\n   * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n   * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n   */\n  entityFqdn?: string;\n  /**\n   * Event action name, placed at the top level to make it easier for users to dispatch messages.\n   * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n   */\n  slug?: string;\n  /** ID of the entity associated with the event. */\n  entityId?: string;\n  /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n  eventTime?: Date | null;\n  /**\n   * Whether the event was triggered as a result of a privacy regulation application\n   * (for example, GDPR).\n   */\n  triggeredByAnonymizeRequest?: boolean | null;\n  /** If present, indicates the action that triggered the event. */\n  originatedFrom?: string | null;\n  /**\n   * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n   * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n   */\n  entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n  createdEvent?: EntityCreatedEvent;\n  updatedEvent?: EntityUpdatedEvent;\n  deletedEvent?: EntityDeletedEvent;\n  actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n  entity?: string;\n}\n\nexport interface RestoreInfo {\n  deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n  /**\n   * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n   * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n   * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n   */\n  currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n  /** Entity that was deleted. */\n  deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n  body?: string;\n}\n\nexport interface Empty {}\n\nexport interface BulkUpdateAvailabilityExceptionTagsRequest {\n  /**\n   * IDs of the availability exceptions to update tags for.\n   * @format GUID\n   * @maxSize 100\n   */\n  availabilityExceptionIds: string[];\n  /** Tags to assign to the availability exceptions. */\n  assignTags?: Tags;\n  /** Tags to unassign from the availability exceptions. */\n  unassignTags?: Tags;\n}\n\nexport interface BulkUpdateAvailabilityExceptionTagsResponse {\n  /**\n   * Results of the bulk update.\n   * @minSize 1\n   * @maxSize 100\n   */\n  results?: BulkUpdateAvailabilityExceptionTagsResult[];\n  /** Metadata for the bulk update. */\n  bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkUpdateAvailabilityExceptionTagsResult {\n  /** Metadata for the updated availability exception. */\n  itemMetadata?: ItemMetadata;\n}\n\nexport interface BulkUpdateAvailabilityExceptionTagsByFilterRequest {\n  /** Filter that determines which availability exceptions to update tags for. */\n  filter: Record<string, any> | null;\n  /** Tags to assign to the availability exceptions. */\n  assignTags?: Tags;\n  /** Tags to unassign from the availability exceptions. */\n  unassignTags?: Tags;\n}\n\nexport interface BulkUpdateAvailabilityExceptionTagsByFilterResponse {\n  /**\n   * Job ID. Pass this ID to Get Async Job ([SDK](https://dev.wix.com/docs/sdk/backend-modules/async-jobs/get-async-job) | [REST](https://dev.wix.com/docs/rest/business-management/async-job/get-async-job)) to track the job's status.\n   * @format GUID\n   */\n  jobId?: string;\n}\n\nexport interface MessageEnvelope {\n  /**\n   * App instance ID.\n   * @format GUID\n   */\n  instanceId?: string | null;\n  /**\n   * Event type.\n   * @maxLength 150\n   */\n  eventType?: string;\n  /** The identification type and identity data. */\n  identity?: IdentificationData;\n  /** Stringify payload. */\n  data?: string;\n  /** Details related to the account */\n  accountInfo?: AccountInfo;\n}\n\nexport interface IdentificationData extends IdentificationDataIdOneOf {\n  /**\n   * ID of a site visitor that has not logged in to the site.\n   * @format GUID\n   */\n  anonymousVisitorId?: string;\n  /**\n   * ID of a site visitor that has logged in to the site.\n   * @format GUID\n   */\n  memberId?: string;\n  /**\n   * ID of a Wix user (site owner, contributor, etc.).\n   * @format GUID\n   */\n  wixUserId?: string;\n  /**\n   * ID of an app.\n   * @format GUID\n   */\n  appId?: string;\n  /** @readonly */\n  identityType?: WebhookIdentityTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface IdentificationDataIdOneOf {\n  /**\n   * ID of a site visitor that has not logged in to the site.\n   * @format GUID\n   */\n  anonymousVisitorId?: string;\n  /**\n   * ID of a site visitor that has logged in to the site.\n   * @format GUID\n   */\n  memberId?: string;\n  /**\n   * ID of a Wix user (site owner, contributor, etc.).\n   * @format GUID\n   */\n  wixUserId?: string;\n  /**\n   * ID of an app.\n   * @format GUID\n   */\n  appId?: string;\n}\n\nexport enum WebhookIdentityType {\n  UNKNOWN = 'UNKNOWN',\n  ANONYMOUS_VISITOR = 'ANONYMOUS_VISITOR',\n  MEMBER = 'MEMBER',\n  WIX_USER = 'WIX_USER',\n  APP = 'APP',\n}\n\n/** @enumType */\nexport type WebhookIdentityTypeWithLiterals =\n  | WebhookIdentityType\n  | 'UNKNOWN'\n  | 'ANONYMOUS_VISITOR'\n  | 'MEMBER'\n  | 'WIX_USER'\n  | 'APP';\n\nexport interface AccountInfo {\n  /**\n   * ID of the Wix account associated with the event.\n   * @format GUID\n   */\n  accountId?: string | null;\n  /**\n   * ID of the parent Wix account. Only included when accountId belongs to a child account.\n   * @format GUID\n   */\n  parentAccountId?: string | null;\n  /**\n   * ID of the Wix site associated with the event. Only included when the event is tied to a specific site.\n   * @format GUID\n   */\n  siteId?: string | null;\n}\n\n/** @docsIgnore */\nexport type BulkUpdateAvailabilityExceptionTagsApplicationErrors = {\n  code?: 'EMPTY_ASSIGN_AND_UNASSIGN_LISTS';\n  description?: string;\n  data?: Record<string, any>;\n};\n/** @docsIgnore */\nexport type BulkUpdateAvailabilityExceptionTagsByFilterApplicationErrors = {\n  code?: 'EMPTY_ASSIGN_AND_UNASSIGN_LISTS';\n  description?: string;\n  data?: Record<string, any>;\n};\n\nexport interface BaseEventMetadata {\n  /**\n   * App instance ID.\n   * @format GUID\n   */\n  instanceId?: string | null;\n  /**\n   * Event type.\n   * @maxLength 150\n   */\n  eventType?: string;\n  /** The identification type and identity data. */\n  identity?: IdentificationData;\n  /** Details related to the account */\n  accountInfo?: AccountInfo;\n}\n\nexport interface EventMetadata extends BaseEventMetadata {\n  /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n  _id?: string;\n  /**\n   * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n   * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n   */\n  entityFqdn?: string;\n  /**\n   * Event action name, placed at the top level to make it easier for users to dispatch messages.\n   * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n   */\n  slug?: string;\n  /** ID of the entity associated with the event. */\n  entityId?: string;\n  /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n  eventTime?: Date | null;\n  /**\n   * Whether the event was triggered as a result of a privacy regulation application\n   * (for example, GDPR).\n   */\n  triggeredByAnonymizeRequest?: boolean | null;\n  /** If present, indicates the action that triggered the event. */\n  originatedFrom?: string | null;\n  /**\n   * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n   * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n   */\n  entityEventSequence?: string | null;\n  accountInfo?: AccountInfoMetadata;\n}\n\nexport interface AccountInfoMetadata {\n  /** ID of the Wix account associated with the event */\n  accountId: string;\n  /** ID of the Wix site associated with the event. Only included when the event is tied to a specific site. */\n  siteId?: string;\n  /** ID of the parent Wix account. Only included when 'accountId' belongs to a child account. */\n  parentAccountId?: string;\n}\n\nexport interface AvailabilityExceptionCreatedEnvelope {\n  entity: AvailabilityException;\n  metadata: EventMetadata;\n}\n\n/**\n * Triggered when an availability exception is created.\n * @permissionScope Manage Restaurants - all permissions\n * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES\n * @permissionId RESTAURANTS.AVAILABILITY_EXCEPTION_READ\n * @webhook\n * @eventType wix.restaurants.v1.availability_exception_created\n * @slug created\n */\nexport declare function onAvailabilityExceptionCreated(\n  handler: (event: AvailabilityExceptionCreatedEnvelope) => void | Promise<void>\n): void;\n\nexport interface AvailabilityExceptionDeletedEnvelope {\n  entity: AvailabilityException;\n  metadata: EventMetadata;\n}\n\n/**\n * Triggered when an availability exception is deleted.\n * @permissionScope Manage Restaurants - all permissions\n * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES\n * @permissionId RESTAURANTS.AVAILABILITY_EXCEPTION_READ\n * @webhook\n * @eventType wix.restaurants.v1.availability_exception_deleted\n * @serviceIdentifier wix.restaurants.v1.AvailabilityExceptionsService\n * @slug deleted\n */\nexport declare function onAvailabilityExceptionDeleted(\n  handler: (event: AvailabilityExceptionDeletedEnvelope) => void | Promise<void>\n): void;\n\nexport interface AvailabilityExceptionUpdatedEnvelope {\n  entity: AvailabilityException;\n  metadata: EventMetadata;\n  /** @hidden */\n  modifiedFields: Record<string, any>;\n}\n\n/**\n * Triggered when an availability exception is updated.\n * @permissionScope Manage Restaurants - all permissions\n * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES\n * @permissionId RESTAURANTS.AVAILABILITY_EXCEPTION_READ\n * @webhook\n * @eventType wix.restaurants.v1.availability_exception_updated\n * @slug updated\n */\nexport declare function onAvailabilityExceptionUpdated(\n  handler: (event: AvailabilityExceptionUpdatedEnvelope) => void | Promise<void>\n): void;\n\n/**\n * Creates a new availability exception.\n * @param availabilityException - Availability exception details.\n * @public\n * @requiredField availabilityException\n * @requiredField availabilityException.affectedFulfillmentMethods\n * @requiredField availabilityException.affectedFulfillmentMethods.affectedMethods\n * @requiredField availabilityException.available\n * @requiredField availabilityException.endTime\n * @requiredField availabilityException.operationId\n * @requiredField availabilityException.startTime\n * @permissionId RESTAURANTS.AVAILABILITY_EXCEPTION_CREATE\n * @applicableIdentity APP\n * @returns The created availability exception.\n * @fqn wix.restaurants.v1.AvailabilityExceptionsService.CreateAvailabilityException\n */\nexport async function createAvailabilityException(\n  availabilityException: NonNullablePaths<\n    AvailabilityException,\n    | `affectedFulfillmentMethods`\n    | `affectedFulfillmentMethods.affectedMethods`\n    | `available`\n    | `endTime`\n    | `operationId`\n    | `startTime`,\n    3\n  >\n): Promise<\n  NonNullablePaths<\n    AvailabilityException,\n    | `affectedFulfillmentMethods.specificFulfillmentMethodsOptions.fulfillmentMethodIds`\n    | `affectedFulfillmentMethods.affectedMethods`\n    | `tags.privateTags.tagIds`,\n    4\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    availabilityException: availabilityException,\n  });\n\n  const reqOpts =\n    ambassadorWixRestaurantsV1AvailabilityException.createAvailabilityException(\n      payload\n    );\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)\n      ?.availabilityException!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { availabilityException: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['availabilityException']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Retrieves an availability exception.\n * @param availabilityExceptionId - ID of the availability exception to retrieve.\n * @public\n * @requiredField availabilityExceptionId\n * @permissionId RESTAURANTS.AVAILABILITY_EXCEPTION_READ\n * @applicableIdentity APP\n * @returns The requested availability exception.\n * @fqn wix.restaurants.v1.AvailabilityExceptionsService.GetAvailabilityException\n */\nexport async function getAvailabilityException(\n  availabilityExceptionId: string\n): Promise<\n  NonNullablePaths<\n    AvailabilityException,\n    | `affectedFulfillmentMethods.specificFulfillmentMethodsOptions.fulfillmentMethodIds`\n    | `affectedFulfillmentMethods.affectedMethods`\n    | `tags.privateTags.tagIds`,\n    4\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    availabilityExceptionId: availabilityExceptionId,\n  });\n\n  const reqOpts =\n    ambassadorWixRestaurantsV1AvailabilityException.getAvailabilityException(\n      payload\n    );\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)\n      ?.availabilityException!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { availabilityExceptionId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['availabilityExceptionId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Updates an availability exception.\n *\n * Each time the availability exception is updated, `revision` increments by 1.\n * The current `revision` must be passed when updating the availability exception.\n * This ensures you're working with the latest availability exception and prevents unintended overwrites.\n * @param _id - Availability exception ID.\n * @public\n * @requiredField _id\n * @requiredField availabilityException\n * @requiredField availabilityException.revision\n * @permissionId RESTAURANTS.AVAILABILITY_EXCEPTION_UPDATE\n * @applicableIdentity APP\n * @returns Updated availability exception.\n * @fqn wix.restaurants.v1.AvailabilityExceptionsService.UpdateAvailabilityException\n */\nexport async function updateAvailabilityException(\n  _id: string,\n  availabilityException: NonNullablePaths<\n    UpdateAvailabilityException,\n    `revision`,\n    2\n  >\n): Promise<\n  NonNullablePaths<\n    AvailabilityException,\n    | `affectedFulfillmentMethods.specificFulfillmentMethodsOptions.fulfillmentMethodIds`\n    | `affectedFulfillmentMethods.affectedMethods`\n    | `tags.privateTags.tagIds`,\n    4\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    availabilityException: { ...availabilityException, id: _id },\n  });\n\n  const reqOpts =\n    ambassadorWixRestaurantsV1AvailabilityException.updateAvailabilityException(\n      payload\n    );\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)\n      ?.availabilityException!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: { availabilityException: '$[1]' },\n        explicitPathsToArguments: { 'availabilityException.id': '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['_id', 'availabilityException']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface UpdateAvailabilityException {\n  /**\n   * Availability exception ID.\n   * @format GUID\n   * @readonly\n   */\n  _id?: string | null;\n  /**\n   * Revision number, which increments by 1 each time the availability exception is updated.\n   * To prevent conflicting changes, the current revision must be specified when updating the availability exception.\n   * @readonly\n   */\n  revision?: string | null;\n  /**\n   * Date and time the availability exception was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format.\n   * @readonly\n   */\n  _createdDate?: Date | null;\n  /**\n   * Date and time the availability exception was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format.\n   * @readonly\n   */\n  _updatedDate?: Date | null;\n  /** The start time of the availability exception in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format. */\n  startTime?: Date | null;\n  /** The end time of the availability exception in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format. */\n  endTime?: Date | null;\n  /**\n   * Whether the exception makes the [`start_time`, `end_time`] range available.\n   * If `true`, the exception makes the restaurant available for online ordering during the time range. If `false`, the exception makes the restaurant unavailable for ordering during the time range.\n   * Currently, only `false` is supported.\n   * @readonly\n   */\n  available?: boolean | null;\n  /**\n   * Exception name.\n   * @maxLength 500\n   */\n  name?: string | null;\n  /** Fulfillment methods for which this exception applies. */\n  affectedFulfillmentMethods?: AffectedFulfillmentMethods;\n  /**\n   * ID of the restaurant operation this exception is associated with. (See the Restaurants Operations API for more information.)\n   * @format GUID\n   */\n  operationId?: string | null;\n  /** Extended fields. */\n  extendedFields?: ExtendedFields;\n  /**\n   * Business location ID ([SDK](https://dev.wix.com/docs/sdk/backend-modules/restaurants/wix-restaurants-new/about-business-locations) | [REST](https://dev.wix.com/docs/rest/business-solutions/restaurants/wix-restaurants-new/about-business-locations)) of the operation this availability exception applies to.\n   * @format GUID\n   * @readonly\n   */\n  businessLocationId?: string | null;\n  /** Tags ([SDK](https://dev.wix.com/docs/sdk/backend-modules/tags/tags/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/tags/introduction)) used to classify and sort different types of availability exceptions. */\n  tags?: Tags;\n}\n\n/**\n * Deletes an availability exception.\n * @param availabilityExceptionId - ID of the availability exception to delete.\n * @public\n * @requiredField availabilityExceptionId\n * @permissionId RESTAURANTS.AVAILABILITY_EXCEPTION_DELETE\n * @applicableIdentity APP\n * @fqn wix.restaurants.v1.AvailabilityExceptionsService.DeleteAvailabilityException\n */\nexport async function deleteAvailabilityException(\n  availabilityExceptionId: string\n): Promise<void> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    availabilityExceptionId: availabilityExceptionId,\n  });\n\n  const reqOpts =\n    ambassadorWixRestaurantsV1AvailabilityException.deleteAvailabilityException(\n      payload\n    );\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { availabilityExceptionId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['availabilityExceptionId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Creates a query to retrieve a list of availability exceptions.\n *\n * The `queryAvailabilityExceptions()` function builds a query to retrieve a list of availability exceptions and returns an `AvailabilityExceptionsQueryBuilder` object.\n *\n * The returned object contains the query definition, which is used to run the query using the [`find()`](/availability-exceptions/availability-exceptions-query-builder/find) function.\n *\n * You can refine the query by chaining `AvailabilityExceptionsQueryBuilder` functions onto the query. `AvailabilityExceptionsQueryBuilder` functions enable you to filter, sort, and control the results that `queryAvailabilityExceptions()` returns.\n *\n * `queryAvailabilityExceptions()` runs with the following `AvailabilityExceptionsQueryBuilder` defaults, which you can override:\n *\n * - [`limit(50)`](/availability-exceptions/availability-exceptions-query-builder/limit)\n * - [`ascending('_id')`](/availability-exceptions/availability-exceptions-query-builder/ascending)\n *\n * The following `AvailabilityExceptionsQueryBuilder` functions are supported for `queryAvailabilityExceptions()`. For a full description of the availability exception object, see the object returned for the [`items`](/availability-exceptions/availability-exceptions-query-result/items) property in `AvailabilityExceptionsQueryResult`.\n * @public\n * @permissionId RESTAURANTS.AVAILABILITY_EXCEPTION_READ\n * @applicableIdentity APP\n * @fqn wix.restaurants.v1.AvailabilityExceptionsService.QueryAvailabilityExceptions\n */\nexport function queryAvailabilityExceptions(): AvailabilityExceptionsQueryBuilder {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[0] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  return queryBuilder<\n    AvailabilityException,\n    'CURSOR',\n    QueryAvailabilityExceptionsRequest,\n    QueryAvailabilityExceptionsResponse\n  >({\n    func: async (payload: QueryAvailabilityExceptionsRequest) => {\n      const reqOpts =\n        ambassadorWixRestaurantsV1AvailabilityException.queryAvailabilityExceptions(\n          payload\n        );\n\n      sideEffects?.onSiteCall?.();\n      try {\n        const result = await httpClient.request(reqOpts);\n        sideEffects?.onSuccess?.(result);\n        return result;\n      } catch (err) {\n        sideEffects?.onError?.(err);\n        throw err;\n      }\n    },\n    requestTransformer: (\n      query: QueryAvailabilityExceptionsRequest['query']\n    ) => {\n      const args = [query, {}] as [\n        QueryAvailabilityExceptionsRequest['query'],\n        {}\n      ];\n      return renameKeysFromSDKRequestToRESTRequest({\n        ...args?.[1],\n        query: args?.[0],\n      });\n    },\n    responseTransformer: ({\n      data,\n    }: HttpResponse<QueryAvailabilityExceptionsResponse>) => {\n      const transformedData = renameKeysFromRESTResponseToSDKResponse(\n        transformPaths(data, [])\n      );\n\n      return {\n        items: transformedData?.availabilityExceptions,\n        pagingMetadata: transformedData?.pagingMetadata,\n      };\n    },\n    errorTransformer: (err: unknown) => {\n      const transformedError = sdkTransformError(err, {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { query: '$[0]' },\n        singleArgumentUnchanged: false,\n      });\n\n      throw transformedError;\n    },\n    pagingMethod: 'CURSOR',\n    transformationPaths: {},\n  });\n}\n\ninterface QueryCursorResult {\n  cursors: Cursors;\n  hasNext: () => boolean;\n  hasPrev: () => boolean;\n  length: number;\n  pageSize: number;\n}\n\nexport interface AvailabilityExceptionsQueryResult extends QueryCursorResult {\n  items: AvailabilityException[];\n  query: AvailabilityExceptionsQueryBuilder;\n  next: () => Promise<AvailabilityExceptionsQueryResult>;\n  prev: () => Promise<AvailabilityExceptionsQueryResult>;\n}\n\nexport interface AvailabilityExceptionsQueryBuilder {\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   */\n  eq: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'startTime'\n      | 'endTime'\n      | 'available'\n      | 'name'\n      | 'affectedFulfillmentMethods.specificFulfillmentMethodsOptions.fulfillmentMethodIds'\n      | 'affectedFulfillmentMethods.affectedMethods',\n    value: any\n  ) => AvailabilityExceptionsQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   */\n  ne: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'startTime'\n      | 'endTime'\n      | 'available'\n      | 'name'\n      | 'affectedFulfillmentMethods.specificFulfillmentMethodsOptions.fulfillmentMethodIds'\n      | 'affectedFulfillmentMethods.affectedMethods',\n    value: any\n  ) => AvailabilityExceptionsQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   */\n  ge: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'startTime'\n      | 'endTime'\n      | 'name',\n    value: any\n  ) => AvailabilityExceptionsQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   */\n  gt: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'startTime'\n      | 'endTime'\n      | 'name',\n    value: any\n  ) => AvailabilityExceptionsQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   */\n  le: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'startTime'\n      | 'endTime'\n      | 'name',\n    value: any\n  ) => AvailabilityExceptionsQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   */\n  lt: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'startTime'\n      | 'endTime'\n      | 'name',\n    value: any\n  ) => AvailabilityExceptionsQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `string`.\n   * @param string - String to compare against. Case-insensitive.\n   */\n  startsWith: (\n    propertyName: '_id' | 'name',\n    value: string\n  ) => AvailabilityExceptionsQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `values`.\n   * @param values - List of values to compare against.\n   */\n  hasSome: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'startTime'\n      | 'endTime'\n      | 'available'\n      | 'name'\n      | 'affectedFulfillmentMethods.specificFulfillmentMethodsOptions.fulfillmentMethodIds'\n      | 'affectedFulfillmentMethods.affectedMethods',\n    value: any[]\n  ) => AvailabilityExceptionsQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `values`.\n   * @param values - List of values to compare against.\n   */\n  hasAll: (\n    propertyName: 'affectedFulfillmentMethods.specificFulfillmentMethodsOptions.fulfillmentMethodIds',\n    value: any[]\n  ) => AvailabilityExceptionsQueryBuilder;\n  in: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'startTime'\n      | 'endTime'\n      | 'available'\n      | 'name'\n      | 'affectedFulfillmentMethods.specificFulfillmentMethodsOptions.fulfillmentMethodIds'\n      | 'affectedFulfillmentMethods.affectedMethods',\n    value: any\n  ) => AvailabilityExceptionsQueryBuilder;\n  exists: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'startTime'\n      | 'endTime'\n      | 'available'\n      | 'name'\n      | 'affectedFulfillmentMethods.specificFulfillmentMethodsOptions.fulfillmentMethodIds'\n      | 'affectedFulfillmentMethods.affectedMethods',\n    value: boolean\n  ) => AvailabilityExceptionsQueryBuilder;\n  /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */\n  ascending: (\n    ...propertyNames: Array<\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'startTime'\n      | 'endTime'\n      | 'available'\n      | 'name'\n      | 'affectedFulfillmentMethods.specificFulfillmentMethodsOptions.fulfillmentMethodIds'\n      | 'affectedFulfillmentMethods.affectedMethods'\n    >\n  ) => AvailabilityExceptionsQueryBuilder;\n  /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */\n  descending: (\n    ...propertyNames: Array<\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'startTime'\n      | 'endTime'\n      | 'available'\n      | 'name'\n      | 'affectedFulfillmentMethods.specificFulfillmentMethodsOptions.fulfillmentMethodIds'\n      | 'affectedFulfillmentMethods.affectedMethods'\n    >\n  ) => AvailabilityExceptionsQueryBuilder;\n  /** @param limit - Number of items to return, which is also the `pageSize` of the results object. */\n  limit: (limit: number) => AvailabilityExceptionsQueryBuilder;\n  /** @param cursor - A pointer to specific record */\n  skipTo: (cursor: string) => AvailabilityExceptionsQueryBuilder;\n  find: () => Promise<AvailabilityExceptionsQueryResult>;\n}\n\n/**\n * @hidden\n * @fqn wix.restaurants.v1.AvailabilityExceptionsService.QueryAvailabilityExceptions\n * @requiredField query\n */\nexport async function typedQueryAvailabilityExceptions(\n  query: AvailabilityExceptionQuery\n): Promise<\n  NonNullablePaths<\n    QueryAvailabilityExceptionsResponse,\n    | `availabilityExceptions`\n    | `availabilityExceptions.${number}.affectedFulfillmentMethods.affectedMethods`,\n    5\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({ query: query });\n\n  const reqOpts =\n    ambassadorWixRestaurantsV1AvailabilityException.queryAvailabilityExceptions(\n      payload\n    );\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { query: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['query']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface AvailabilityExceptionQuerySpec extends QuerySpec {\n  paging: 'cursor';\n  wql: [\n    {\n      fields: [\n        'affectedFulfillmentMethods.specificFulfillmentMethodsOptions.fulfillmentMethodIds'\n      ];\n      operators: ['$hasAll', '$hasSome'];\n      sort: 'BOTH';\n    },\n    {\n      fields: [\n        '_createdDate',\n        '_id',\n        '_updatedDate',\n        'affectedFulfillmentMethods.affectedMethods',\n        'available',\n        'endTime',\n        'name',\n        'startTime'\n      ];\n      operators: '*';\n      sort: 'BOTH';\n    }\n  ];\n}\n\nexport type CommonQueryWithEntityContext = QuerySdkType<\n  AvailabilityException,\n  AvailabilityExceptionQuerySpec\n>;\nexport type AvailabilityExceptionQuery = {\n  /** \n  Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `filter` or `sort`.  \n  */\n  cursorPaging?: {\n    /** \n  Number of items to load. \n  @max: 100 \n  */\n    limit?:\n      | NonNullable<CommonQueryWithEntityContext['cursorPaging']>['limit']\n      | null;\n    /** \n  Pointer to the next or previous page in the list of results.\n\n  You can get the relevant cursor token\n  from the `pagingMetadata` object in the previous call's response.\n  Not relevant for the first request. \n  @maxLength: 16000 \n  */\n    cursor?:\n      | NonNullable<CommonQueryWithEntityContext['cursorPaging']>['cursor']\n      | null;\n  };\n  /** \n  Filter object in the following format:\n  `\"filter\" : {\n  \"fieldName1\": \"value1\",\n  \"fieldName2\":{\"$operator\":\"value2\"}\n  }`\n  Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains`  \n  */\n  filter?: CommonQueryWithEntityContext['filter'] | null;\n  /** \n  Sort object in the following format:\n  `[{\"fieldName\":\"sortField1\",\"order\":\"ASC\"},{\"fieldName\":\"sortField2\",\"order\":\"DESC\"}]` \n  @maxSize: 4 \n  */\n  sort?: {\n    /** \n  Name of the field to sort by. \n  @maxLength: 64 \n  */\n    fieldName?: NonNullable<\n      CommonQueryWithEntityContext['sort']\n    >[number]['fieldName'];\n    /** \n  Sort order.  \n  */\n    order?: NonNullable<CommonQueryWithEntityContext['sort']>[number]['order'];\n  }[];\n};\n\nexport const utils = {\n  query: {\n    ...createQueryUtils<\n      AvailabilityException,\n      AvailabilityExceptionQuerySpec,\n      AvailabilityExceptionQuery\n    >(),\n  },\n};\n\n/**\n * Creates multiple availability exceptions.\n * @param availabilityExceptions - Availability exception details.\n * @public\n * @requiredField availabilityExceptions\n * @requiredField availabilityExceptions.affectedFulfillmentMethods\n * @requiredField availabilityExceptions.affectedFulfillmentMethods.affectedMethods\n * @requiredField availabilityExceptions.available\n * @requiredField availabilityExceptions.endTime\n * @requiredField availabilityExceptions.operationId\n * @requiredField availabilityExceptions.startTime\n * @permissionId RESTAURANTS.AVAILABILITY_EXCEPTION_CREATE\n * @applicableIdentity APP\n * @fqn wix.restaurants.v1.AvailabilityExceptionsService.BulkCreateAvailabilityExceptions\n */\nexport async function bulkCreateAvailabilityExceptions(\n  availabilityExceptions: NonNullablePaths<\n    AvailabilityException,\n    | `affectedFulfillmentMethods`\n    | `affectedFulfillmentMethods.affectedMethods`\n    | `available`\n    | `endTime`\n    | `operationId`\n    | `startTime`,\n    3\n  >[],\n  options?: BulkCreateAvailabilityExceptionsOptions\n): Promise<\n  NonNullablePaths<\n    BulkCreateAvailabilityExceptionsResponse,\n    | `results`\n    | `results.${number}.itemMetadata.originalIndex`\n    | `results.${number}.itemMetadata.success`\n    | `results.${number}.itemMetadata.error.code`\n    | `results.${number}.itemMetadata.error.description`\n    | `results.${number}.availabilityException.affectedFulfillmentMethods.affectedMethods`\n    | `bulkActionMetadata.totalSuccesses`\n    | `bulkActionMetadata.totalFailures`\n    | `bulkActionMetadata.undetailedFailures`,\n    6\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    availabilityExceptions: availabilityExceptions,\n    returnEntity: options?.returnEntity,\n  });\n\n  const reqOpts =\n    ambassadorWixRestaurantsV1AvailabilityException.bulkCreateAvailabilityExceptions(\n      payload\n    );\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          availabilityExceptions: '$[0]',\n          returnEntity: '$[1].returnEntity',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['availabilityExceptions', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface BulkCreateAvailabilityExceptionsOptions {\n  /** Whether the full availability exception entity is returned. Defaults to `true`. */\n  returnEntity?: boolean;\n}\n\n/**\n * Updates multiple availability exceptions.\n * @param availabilityExceptions - Availability exceptions entities to update.\n * @public\n * @requiredField availabilityExceptions\n * @requiredField availabilityExceptions.availabilityException._id\n * @requiredField availabilityExceptions.availabilityException.revision\n * @permissionId RESTAURANTS.AVAILABILITY_EXCEPTION_UPDATE\n * @applicableIdentity APP\n * @fqn wix.restaurants.v1.AvailabilityExceptionsService.BulkUpdateAvailabilityExceptions\n */\nexport async function bulkUpdateAvailabilityExceptions(\n  availabilityExceptions: NonNullablePaths<\n    MaskedAvailabilityException,\n    `availabilityException._id` | `availabilityException.revision`,\n    3\n  >[],\n  options?: BulkUpdateAvailabilityExceptionsOptions\n): Promise<\n  NonNullablePaths<\n    BulkUpdateAvailabilityExceptionsResponse,\n    | `results`\n    | `results.${number}.itemMetadata.originalIndex`\n    | `results.${number}.itemMetadata.success`\n    | `results.${number}.itemMetadata.error.code`\n    | `results.${number}.itemMetadata.error.description`\n    | `results.${number}.item.affectedFulfillmentMethods.affectedMethods`\n    | `bulkActionMetadata.totalSuccesses`\n    | `bulkActionMetadata.totalFailures`\n    | `bulkActionMetadata.undetailedFailures`,\n    6\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    availabilityExceptions: availabilityExceptions,\n    returnEntity: options?.returnEntity,\n  });\n\n  const reqOpts =\n    ambassadorWixRestaurantsV1AvailabilityException.bulkUpdateAvailabilityExceptions(\n      payload\n    );\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          availabilityExceptions: '$[0]',\n          returnEntity: '$[1].returnEntity',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['availabilityExceptions', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface BulkUpdateAvailabilityExceptionsOptions {\n  /** Whether to receive the entity in the response. */\n  returnEntity?: boolean;\n}\n\n/**\n * Synchronously update tags on multiple availability exceptions.\n * If you specify a tag in both `assignTags` and `unassignTags`, it is assigned.\n * @param availabilityExceptionIds - IDs of the availability exceptions to update tags for.\n * @public\n * @requiredField availabilityExceptionIds\n * @permissionId RESTAURANTS.AVAILABILITY_EXCEPTION_UPDATE_TAGS\n * @applicableIdentity APP\n * @fqn wix.restaurants.v1.AvailabilityExceptionsService.BulkUpdateAvailabilityExceptionTags\n */\nexport async function bulkUpdateAvailabilityExceptionTags(\n  availabilityExceptionIds: string[],\n  options?: BulkUpdateAvailabilityExceptionTagsOptions\n): Promise<\n  NonNullablePaths<\n    BulkUpdateAvailabilityExceptionTagsResponse,\n    | `results`\n    | `results.${number}.itemMetadata.originalIndex`\n    | `results.${number}.itemMetadata.success`\n    | `results.${number}.itemMetadata.error.code`\n    | `results.${number}.itemMetadata.error.description`\n    | `bulkActionMetadata.totalSuccesses`\n    | `bulkActionMetadata.totalFailures`\n    | `bulkActionMetadata.undetailedFailures`,\n    6\n  > & {\n    __applicationErrorsType?: BulkUpdateAvailabilityExceptionTagsApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    availabilityExceptionIds: availabilityExceptionIds,\n    assignTags: options?.assignTags,\n    unassignTags: options?.unassignTags,\n  });\n\n  const reqOpts =\n    ambassadorWixRestaurantsV1AvailabilityException.bulkUpdateAvailabilityExceptionTags(\n      payload\n    );\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          availabilityExceptionIds: '$[0]',\n          assignTags: '$[1].assignTags',\n          unassignTags: '$[1].unassignTags',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['availabilityExceptionIds', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface BulkUpdateAvailabilityExceptionTagsOptions {\n  /** Tags to assign to the availability exceptions. */\n  assignTags?: Tags;\n  /** Tags to unassign from the availability exceptions. */\n  unassignTags?: Tags;\n}\n\n/**\n * Asynchronously update tags on multiple availability exceptions according to the specified filter.\n * If a filter isn't specified, this method updates all availability exceptions.\n * If you specify a tag in both `assignTags` and `unassignTags`, it is assigned.\n * @param filter - Filter that determines which availability exceptions to update tags for.\n * @public\n * @requiredField filter\n * @permissionId RESTAURANTS.AVAILABILITY_EXCEPTION_UPDATE_TAGS\n * @applicableIdentity APP\n * @fqn wix.restaurants.v1.AvailabilityExceptionsService.BulkUpdateAvailabilityExceptionTagsByFilter\n */\nexport async function bulkUpdateAvailabilityExceptionTagsByFilter(\n  filter: Record<string, any>,\n  options?: BulkUpdateAvailabilityExceptionTagsByFilterOptions\n): Promise<\n  NonNullablePaths<\n    BulkUpdateAvailabilityExceptionTagsByFilterResponse,\n    `jobId`,\n    2\n  > & {\n    __applicationErrorsType?: BulkUpdateAvailabilityExceptionTagsByFilterApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    filter: filter,\n    assignTags: options?.assignTags,\n    unassignTags: options?.unassignTags,\n  });\n\n  const reqOpts =\n    ambassadorWixRestaurantsV1AvailabilityException.bulkUpdateAvailabilityExceptionTagsByFilter(\n      payload\n    );\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          filter: '$[0]',\n          assignTags: '$[1].assignTags',\n          unassignTags: '$[1].unassignTags',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['filter', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface BulkUpdateAvailabilityExceptionTagsByFilterOptions {\n  /** Tags to assign to the availability exceptions. */\n  assignTags?: Tags;\n  /** Tags to unassign from the availability exceptions. */\n  unassignTags?: Tags;\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformSDKTimestampToRESTTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformSDKFieldMaskToRESTFieldMask } from '@wix/sdk-runtime/transformations/field-mask';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixRestaurantsV1AvailabilityExceptionsServiceUrl(\n  opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n  const domainToMappings = {\n    'bo._base_domain_': [\n      {\n        srcPath: '/restaurants-availability-exceptions',\n        destPath: '',\n      },\n    ],\n    'wixbo.ai': [\n      {\n        srcPath: '/restaurants-availability-exceptions',\n        destPath: '',\n      },\n    ],\n    'wix-bo.com': [\n      {\n        srcPath: '/restaurants-availability-exceptions',\n        destPath: '',\n      },\n    ],\n    'api._api_base_domain_': [\n      {\n        srcPath: '/restaurants-availability-exceptions',\n        destPath: '',\n      },\n    ],\n    'editor._base_domain_': [\n      {\n        srcPath: '/_api/restaurants-availability-exceptions',\n        destPath: '',\n      },\n    ],\n    'blocks._base_domain_': [\n      {\n        srcPath: '/_api/restaurants-availability-exceptions',\n        destPath: '',\n      },\n    ],\n    'create.editorx': [\n      {\n        srcPath: '/_api/restaurants-availability-exceptions',\n        destPath: '',\n      },\n    ],\n    '*.dev.wix-code.com': [\n      {\n        srcPath: '/_api/restaurants-availability-exceptions',\n        destPath: '',\n      },\n    ],\n    _: [\n      {\n        srcPath: '/_api/restaurants-availability-exceptions',\n        destPath: '',\n      },\n    ],\n    _base_domain_: [\n      {\n        srcPath: '/_api/restaurants-availability-exceptions',\n        destPath: '',\n      },\n    ],\n    'editor.wixapps.net': [\n      {\n        srcPath: '/_api/restaurants-availability-exceptions',\n        destPath: '',\n      },\n    ],\n    'manage._base_domain_': [\n      {\n        srcPath: '/_api/restaurants-availability-exceptions',\n        destPath: '',\n      },\n    ],\n    'users._base_domain_': [\n      {\n        srcPath: '/_api/restaurants-availability-exceptions',\n        destPath: '',\n      },\n    ],\n    'www._base_domain_': [\n      {\n        srcPath: '/_api/restaurants-availability-exceptions',\n        destPath: '',\n      },\n    ],\n    'www.wixapis.com': [\n      {\n        srcPath: '/restaurants-availability-exceptions',\n        destPath: '',\n      },\n    ],\n  };\n\n  return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_restaurants_availability-exceptions';\n\n/** Creates a new availability exception. */\nexport function createAvailabilityException(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __createAvailabilityException({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [\n          { path: 'availabilityException.createdDate' },\n          { path: 'availabilityException.updatedDate' },\n          { path: 'availabilityException.startTime' },\n          { path: 'availabilityException.endTime' },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.restaurants.v1.availability_exception',\n      method: 'POST' as any,\n      methodFqn:\n        'wix.restaurants.v1.AvailabilityExceptionsService.CreateAvailabilityException',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixRestaurantsV1AvailabilityExceptionsServiceUrl({\n        protoPath: '/v1/availability-exceptions',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'availabilityException.createdDate' },\n              { path: 'availabilityException.updatedDate' },\n              { path: 'availabilityException.startTime' },\n              { path: 'availabilityException.endTime' },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __createAvailabilityException;\n}\n\n/** Retrieves an availability exception. */\nexport function getAvailabilityException(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __getAvailabilityException({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.restaurants.v1.availability_exception',\n      method: 'GET' as any,\n      methodFqn:\n        'wix.restaurants.v1.AvailabilityExceptionsService.GetAvailabilityException',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixRestaurantsV1AvailabilityExceptionsServiceUrl({\n        protoPath: '/v1/availability-exceptions/{availabilityExceptionId}',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'availabilityException.createdDate' },\n              { path: 'availabilityException.updatedDate' },\n              { path: 'availabilityException.startTime' },\n              { path: 'availabilityException.endTime' },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __getAvailabilityException;\n}\n\n/**\n * Updates an availability exception.\n *\n * Each time the availability exception is updated, `revision` increments by 1.\n * The current `revision` must be passed when updating the availability exception.\n * This ensures you're working with the latest availability exception and prevents unintended overwrites.\n */\nexport function updateAvailabilityException(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __updateAvailabilityException({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKFieldMaskToRESTFieldMask,\n        paths: [{ path: 'fieldMask' }],\n      },\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [\n          { path: 'availabilityException.createdDate' },\n          { path: 'availabilityException.updatedDate' },\n          { path: 'availabilityException.startTime' },\n          { path: 'availabilityException.endTime' },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.restaurants.v1.availability_exception',\n      method: 'PATCH' as any,\n      methodFqn:\n        'wix.restaurants.v1.AvailabilityExceptionsService.UpdateAvailabilityException',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixRestaurantsV1AvailabilityExceptionsServiceUrl({\n        protoPath: '/v1/availability-exceptions/{availabilityException.id}',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'availabilityException.createdDate' },\n              { path: 'availabilityException.updatedDate' },\n              { path: 'availabilityException.startTime' },\n              { path: 'availabilityException.endTime' },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __updateAvailabilityException;\n}\n\n/** Deletes an availability exception. */\nexport function deleteAvailabilityException(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __deleteAvailabilityException({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.restaurants.v1.availability_exception',\n      method: 'DELETE' as any,\n      methodFqn:\n        'wix.restaurants.v1.AvailabilityExceptionsService.DeleteAvailabilityException',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixRestaurantsV1AvailabilityExceptionsServiceUrl({\n        protoPath: '/v1/availability-exceptions/{availabilityExceptionId}',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n    };\n\n    return metadata;\n  }\n\n  return __deleteAvailabilityException;\n}\n\n/**\n * Creates a query to retrieve a list of availability exceptions.\n *\n * The `queryAvailabilityExceptions()` function builds a query to retrieve a list of availability exceptions and returns an `AvailabilityExceptionsQueryBuilder` object.\n *\n * The returned object contains the query definition, which is used to run the query using the [`find()`](/availability-exceptions/availability-exceptions-query-builder/find) function.\n *\n * You can refine the query by chaining `AvailabilityExceptionsQueryBuilder` functions onto the query. `AvailabilityExceptionsQueryBuilder` functions enable you to filter, sort, and control the results that `queryAvailabilityExceptions()` returns.\n *\n * `queryAvailabilityExceptions()` runs with the following `AvailabilityExceptionsQueryBuilder` defaults, which you can override:\n *\n * - [`limit(50)`](/availability-exceptions/availability-exceptions-query-builder/limit)\n * - [`ascending('_id')`](/availability-exceptions/availability-exceptions-query-builder/ascending)\n *\n * The following `AvailabilityExceptionsQueryBuilder` functions are supported for `queryAvailabilityExceptions()`. For a full description of the availability exception object, see the object returned for the [`items`](/availability-exceptions/availability-exceptions-query-result/items) property in `AvailabilityExceptionsQueryResult`.\n */\nexport function queryAvailabilityExceptions(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __queryAvailabilityExceptions({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.restaurants.v1.availability_exception',\n      method: 'POST' as any,\n      methodFqn:\n        'wix.restaurants.v1.AvailabilityExceptionsService.QueryAvailabilityExceptions',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixRestaurantsV1AvailabilityExceptionsServiceUrl({\n        protoPath: '/v1/availability-exceptions/query',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'availabilityExceptions.createdDate' },\n              { path: 'availabilityExceptions.updatedDate' },\n              { path: 'availabilityExceptions.startTime' },\n              { path: 'availabilityExceptions.endTime' },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __queryAvailabilityExceptions;\n}\n\n/** Creates multiple availability exceptions. */\nexport function bulkCreateAvailabilityExceptions(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __bulkCreateAvailabilityExceptions({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [\n          { path: 'availabilityExceptions.createdDate' },\n          { path: 'availabilityExceptions.updatedDate' },\n          { path: 'availabilityExceptions.startTime' },\n          { path: 'availabilityExceptions.endTime' },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.restaurants.v1.availability_exception',\n      method: 'POST' as any,\n      methodFqn:\n        'wix.restaurants.v1.AvailabilityExceptionsService.BulkCreateAvailabilityExceptions',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixRestaurantsV1AvailabilityExceptionsServiceUrl({\n        protoPath: '/v1/bulk/availability-exceptions/create',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'results.availabilityException.createdDate' },\n              { path: 'results.availabilityException.updatedDate' },\n              { path: 'results.availabilityException.startTime' },\n              { path: 'results.availabilityException.endTime' },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __bulkCreateAvailabilityExceptions;\n}\n\n/** Updates multiple availability exceptions. */\nexport function bulkUpdateAvailabilityExceptions(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __bulkUpdateAvailabilityExceptions({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKFieldMaskToRESTFieldMask,\n        paths: [{ path: 'availabilityExceptions.mask' }],\n      },\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [\n          { path: 'availabilityExceptions.availabilityException.createdDate' },\n          { path: 'availabilityExceptions.availabilityException.updatedDate' },\n          { path: 'availabilityExceptions.availabilityException.startTime' },\n          { path: 'availabilityExceptions.availabilityException.endTime' },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.restaurants.v1.availability_exception',\n      method: 'POST' as any,\n      methodFqn:\n        'wix.restaurants.v1.AvailabilityExceptionsService.BulkUpdateAvailabilityExceptions',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixRestaurantsV1AvailabilityExceptionsServiceUrl({\n        protoPath: '/v1/bulk/availability-exceptions/update',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'results.item.createdDate' },\n              { path: 'results.item.updatedDate' },\n              { path: 'results.item.startTime' },\n              { path: 'results.item.endTime' },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __bulkUpdateAvailabilityExceptions;\n}\n\n/**\n * Synchronously update tags on multiple availability exceptions.\n * If you specify a tag in both `assignTags` and `unassignTags`, it is assigned.\n */\nexport function bulkUpdateAvailabilityExceptionTags(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __bulkUpdateAvailabilityExceptionTags({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.restaurants.v1.availability_exception',\n      method: 'POST' as any,\n      methodFqn:\n        'wix.restaurants.v1.AvailabilityExceptionsService.BulkUpdateAvailabilityExceptionTags',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixRestaurantsV1AvailabilityExceptionsServiceUrl({\n        protoPath: '/v1/bulk/availability-exceptions/update-tags',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __bulkUpdateAvailabilityExceptionTags;\n}\n\n/**\n * Asynchronously update tags on multiple availability exceptions according to the specified filter.\n * If a filter isn't specified, this method updates all availability exceptions.\n * If you specify a tag in both `assignTags` and `unassignTags`, it is assigned.\n */\nexport function bulkUpdateAvailabilityExceptionTagsByFilter(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __bulkUpdateAvailabilityExceptionTagsByFilter({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.restaurants.v1.availability_exception',\n      method: 'POST' as any,\n      methodFqn:\n        'wix.restaurants.v1.AvailabilityExceptionsService.BulkUpdateAvailabilityExceptionTagsByFilter',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixRestaurantsV1AvailabilityExceptionsServiceUrl({\n        protoPath: '/v1/bulk/availability-exceptions/update-tags-by-filter',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __bulkUpdateAvailabilityExceptionTagsByFilter;\n}\n","import {\n  createAvailabilityException as publicCreateAvailabilityException,\n  getAvailabilityException as publicGetAvailabilityException,\n  updateAvailabilityException as publicUpdateAvailabilityException,\n  deleteAvailabilityException as publicDeleteAvailabilityException,\n  queryAvailabilityExceptions as publicQueryAvailabilityExceptions,\n  typedQueryAvailabilityExceptions as publicTypedQueryAvailabilityExceptions,\n  bulkCreateAvailabilityExceptions as publicBulkCreateAvailabilityExceptions,\n  bulkUpdateAvailabilityExceptions as publicBulkUpdateAvailabilityExceptions,\n  bulkUpdateAvailabilityExceptionTags as publicBulkUpdateAvailabilityExceptionTags,\n  bulkUpdateAvailabilityExceptionTagsByFilter as publicBulkUpdateAvailabilityExceptionTagsByFilter,\n} from './restaurants-v1-availability-exception-availability-exceptions.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { createEventModule } from '@wix/sdk-runtime/event-definition-modules';\nimport {\n  BuildRESTFunction,\n  MaybeContext,\n  BuildEventDefinition,\n} from '@wix/sdk-types';\nimport { HttpClient } from '@wix/sdk-types';\nimport { createQueryOverloadRouter } from '@wix/sdk-runtime/query-method-router';\nimport {\n  AvailabilityExceptionQuery,\n  AvailabilityExceptionsQueryBuilder,\n  typedQueryAvailabilityExceptions as universalTypedQueryAvailabilityExceptions,\n} from './restaurants-v1-availability-exception-availability-exceptions.universal.js';\nimport { onAvailabilityExceptionCreated as publicOnAvailabilityExceptionCreated } from './restaurants-v1-availability-exception-availability-exceptions.public.js';\nimport { onAvailabilityExceptionDeleted as publicOnAvailabilityExceptionDeleted } from './restaurants-v1-availability-exception-availability-exceptions.public.js';\nimport { onAvailabilityExceptionUpdated as publicOnAvailabilityExceptionUpdated } from './restaurants-v1-availability-exception-availability-exceptions.public.js';\n\nfunction customQueryAvailabilityExceptions(httpClient: HttpClient) {\n  const router = createQueryOverloadRouter({\n    builderQueryFunction: () => publicQueryAvailabilityExceptions(httpClient)(),\n    typedQueryFunction: (query: AvailabilityExceptionQuery) =>\n      publicTypedQueryAvailabilityExceptions(httpClient)(query),\n    hasOptionsParameter: false,\n  });\n\n  function overloadedQuery(): AvailabilityExceptionsQueryBuilder;\n  function overloadedQuery(\n    query: AvailabilityExceptionQuery\n  ): ReturnType<typeof universalTypedQueryAvailabilityExceptions>;\n  function overloadedQuery(query?: AvailabilityExceptionQuery): any {\n    return router(...arguments);\n  }\n\n  return overloadedQuery;\n}\n\nexport const createAvailabilityException: MaybeContext<\n  BuildRESTFunction<typeof publicCreateAvailabilityException> &\n    typeof publicCreateAvailabilityException\n> = /*#__PURE__*/ createRESTModule(publicCreateAvailabilityException);\nexport const getAvailabilityException: MaybeContext<\n  BuildRESTFunction<typeof publicGetAvailabilityException> &\n    typeof publicGetAvailabilityException\n> = /*#__PURE__*/ createRESTModule(publicGetAvailabilityException);\nexport const updateAvailabilityException: MaybeContext<\n  BuildRESTFunction<typeof publicUpdateAvailabilityException> &\n    typeof publicUpdateAvailabilityException\n> = /*#__PURE__*/ createRESTModule(publicUpdateAvailabilityException);\nexport const deleteAvailabilityException: MaybeContext<\n  BuildRESTFunction<typeof publicDeleteAvailabilityException> &\n    typeof publicDeleteAvailabilityException\n> = /*#__PURE__*/ createRESTModule(publicDeleteAvailabilityException);\nexport const bulkCreateAvailabilityExceptions: MaybeContext<\n  BuildRESTFunction<typeof publicBulkCreateAvailabilityExceptions> &\n    typeof publicBulkCreateAvailabilityExceptions\n> = /*#__PURE__*/ createRESTModule(publicBulkCreateAvailabilityExceptions);\nexport const bulkUpdateAvailabilityExceptions: MaybeContext<\n  BuildRESTFunction<typeof publicBulkUpdateAvailabilityExceptions> &\n    typeof publicBulkUpdateAvailabilityExceptions\n> = /*#__PURE__*/ createRESTModule(publicBulkUpdateAvailabilityExceptions);\nexport const bulkUpdateAvailabilityExceptionTags: MaybeContext<\n  BuildRESTFunction<typeof publicBulkUpdateAvailabilityExceptionTags> &\n    typeof publicBulkUpdateAvailabilityExceptionTags\n> = /*#__PURE__*/ createRESTModule(publicBulkUpdateAvailabilityExceptionTags);\nexport const bulkUpdateAvailabilityExceptionTagsByFilter: MaybeContext<\n  BuildRESTFunction<typeof publicBulkUpdateAvailabilityExceptionTagsByFilter> &\n    typeof publicBulkUpdateAvailabilityExceptionTagsByFilter\n> = /*#__PURE__*/ createRESTModule(\n  publicBulkUpdateAvailabilityExceptionTagsByFilter\n);\nexport const queryAvailabilityExceptions: MaybeContext<\n  BuildRESTFunction<typeof customQueryAvailabilityExceptions> &\n    typeof customQueryAvailabilityExceptions\n> = /*#__PURE__*/ createRESTModule(customQueryAvailabilityExceptions);\n/**\n * Triggered when an availability exception is created.\n */\nexport const onAvailabilityExceptionCreated: BuildEventDefinition<\n  typeof publicOnAvailabilityExceptionCreated\n> &\n  typeof publicOnAvailabilityExceptionCreated = createEventModule(\n  publicOnAvailabilityExceptionCreated\n);\n/**\n * Triggered when an availability exception is deleted.\n */\nexport const onAvailabilityExceptionDeleted: BuildEventDefinition<\n  typeof publicOnAvailabilityExceptionDeleted\n> &\n  typeof publicOnAvailabilityExceptionDeleted = createEventModule(\n  publicOnAvailabilityExceptionDeleted\n);\n/**\n * Triggered when an availability exception is updated.\n */\nexport const onAvailabilityExceptionUpdated: BuildEventDefinition<\n  typeof publicOnAvailabilityExceptionUpdated\n> &\n  typeof publicOnAvailabilityExceptionUpdated = createEventModule(\n  publicOnAvailabilityExceptionUpdated\n);\n\nexport {\n  AffectedMethods,\n  Type,\n  SortOrder,\n  WebhookIdentityType,\n} from './restaurants-v1-availability-exception-availability-exceptions.universal.js';\nexport {\n  AvailabilityException,\n  AffectedFulfillmentMethods,\n  AffectedFulfillmentMethodsAffectedMethodsOptionsOneOf,\n  SpecificFulfillmentMethodsImpactScope,\n  ExtendedFields,\n  Tags,\n  TagList,\n  CreateAvailabilityExceptionRequest,\n  CreateAvailabilityExceptionResponse,\n  GetAvailabilityExceptionRequest,\n  GetAvailabilityExceptionResponse,\n  UpdateAvailabilityExceptionRequest,\n  UpdateAvailabilityExceptionResponse,\n  DeleteAvailabilityExceptionRequest,\n  DeleteAvailabilityExceptionResponse,\n  QueryAvailabilityExceptionsRequest,\n  CursorQuery,\n  CursorQueryPagingMethodOneOf,\n  Sorting,\n  CursorPaging,\n  QueryAvailabilityExceptionsResponse,\n  CursorPagingMetadata,\n  Cursors,\n  BulkCreateAvailabilityExceptionsRequest,\n  BulkCreateAvailabilityExceptionsResponse,\n  BulkCreateAvailabilityExceptionsResult,\n  ItemMetadata,\n  ApplicationError,\n  BulkActionMetadata,\n  BulkUpdateAvailabilityExceptionsRequest,\n  MaskedAvailabilityException,\n  BulkUpdateAvailabilityExceptionsResponse,\n  BulkAvailabilityExceptionResult,\n  DomainEvent,\n  DomainEventBodyOneOf,\n  EntityCreatedEvent,\n  RestoreInfo,\n  EntityUpdatedEvent,\n  EntityDeletedEvent,\n  ActionEvent,\n  Empty,\n  BulkUpdateAvailabilityExceptionTagsRequest,\n  BulkUpdateAvailabilityExceptionTagsResponse,\n  BulkUpdateAvailabilityExceptionTagsResult,\n  BulkUpdateAvailabilityExceptionTagsByFilterRequest,\n  BulkUpdateAvailabilityExceptionTagsByFilterResponse,\n  MessageEnvelope,\n  IdentificationData,\n  IdentificationDataIdOneOf,\n  AccountInfo,\n  BaseEventMetadata,\n  EventMetadata,\n  AccountInfoMetadata,\n  AvailabilityExceptionCreatedEnvelope,\n  AvailabilityExceptionDeletedEnvelope,\n  AvailabilityExceptionUpdatedEnvelope,\n  UpdateAvailabilityException,\n  AvailabilityExceptionsQueryResult,\n  AvailabilityExceptionsQueryBuilder,\n  AvailabilityExceptionQuerySpec,\n  BulkCreateAvailabilityExceptionsOptions,\n  BulkUpdateAvailabilityExceptionsOptions,\n  BulkUpdateAvailabilityExceptionTagsOptions,\n  BulkUpdateAvailabilityExceptionTagsByFilterOptions,\n} from './restaurants-v1-availability-exception-availability-exceptions.universal.js';\nexport { utils } from './restaurants-v1-availability-exception-availability-exceptions.universal.js';\nexport {\n  AffectedMethodsWithLiterals,\n  TypeWithLiterals,\n  SortOrderWithLiterals,\n  WebhookIdentityTypeWithLiterals,\n  BulkUpdateAvailabilityExceptionTagsApplicationErrors,\n  BulkUpdateAvailabilityExceptionTagsByFilterApplicationErrors,\n  CommonQueryWithEntityContext,\n  AvailabilityExceptionQuery,\n} from './restaurants-v1-availability-exception-availability-exceptions.universal.js';\n"],"mappings":"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","names":["renameKeysFromRESTResponseToSDKResponse","transformRESTTimestampToSDKTimestamp","transformPaths","payload","transformPaths","AffectedMethods","Type","SortOrder","WebhookIdentityType","createAvailabilityException","getAvailabilityException","updateAvailabilityException","deleteAvailabilityException","queryAvailabilityExceptions","bulkCreateAvailabilityExceptions","bulkUpdateAvailabilityExceptions","bulkUpdateAvailabilityExceptionTags","bulkUpdateAvailabilityExceptionTagsByFilter","createAvailabilityException","getAvailabilityException","updateAvailabilityException","deleteAvailabilityException","queryAvailabilityExceptions","typedQueryAvailabilityExceptions","bulkCreateAvailabilityExceptions","bulkUpdateAvailabilityExceptions","bulkUpdateAvailabilityExceptionTags","bulkUpdateAvailabilityExceptionTagsByFilter","renameKeysFromRESTResponseToSDKResponse","transformPaths","transformRESTTimestampToSDKTimestamp","queryAvailabilityExceptions","typedQueryAvailabilityExceptions","createAvailabilityException","getAvailabilityException","updateAvailabilityException","deleteAvailabilityException","bulkCreateAvailabilityExceptions","bulkUpdateAvailabilityExceptions","bulkUpdateAvailabilityExceptionTags","bulkUpdateAvailabilityExceptionTagsByFilter","onAvailabilityExceptionCreated","onAvailabilityExceptionDeleted","onAvailabilityExceptionUpdated"]}