{"version":3,"sources":["../../src/table-reservations-v1-time-slot-time-slots.schemas.ts"],"sourcesContent":["import * as z from 'zod';\n\nexport const GetTimeSlotsRequest = z.object({\n  reservationLocationId: z\n    .string()\n    .describe(\n      'ID of the reservation location for which to retrieve time slots.'\n    )\n    .regex(\n      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n      'Must be a valid GUID'\n    ),\n  date: z\n    .date()\n    .describe(\n      'Date and time for which to retrieve a time slot in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601#coordinated_Universal_Time_(UTC)) format.'\n    ),\n  partySize: z\n    .number()\n    .int()\n    .describe(\n      'Size of the party that needs to be seated during this time slot.\\n\\nMin: `1`'\n    )\n    .min(1)\n    .max(10000),\n  options: z\n    .object({\n      duration: z\n        .number()\n        .int()\n        .describe('Duration in minutes of the time slot.\\n\\nMin: `5`')\n        .min(5)\n        .max(1000)\n        .optional()\n        .nullable(),\n      slotsBefore: z\n        .number()\n        .int()\n        .describe(\n          'The number of time slots to retrieve before the specified `date`.'\n        )\n        .min(0)\n        .max(50)\n        .optional()\n        .nullable(),\n      slotsAfter: z\n        .number()\n        .int()\n        .describe(\n          'The number of time slots to retrieve after the specified `date`.'\n        )\n        .min(0)\n        .max(50)\n        .optional()\n        .nullable(),\n    })\n    .describe('Options for retrieving the time slots.')\n    .optional(),\n});\nexport const GetTimeSlotsResponse = z.object({\n  timeSlots: z\n    .array(\n      z.object({\n        startDate: z\n          .date()\n          .describe('Start date and time of this time slot.')\n          .optional()\n          .nullable(),\n        duration: z\n          .number()\n          .int()\n          .describe('Duration in minutes of this time slot.')\n          .optional(),\n        status: z\n          .enum(['AVAILABLE', 'UNAVAILABLE', 'NON_WORKING_HOURS'])\n          .describe('Availability status of this time slot.')\n          .optional(),\n        manualApproval: z\n          .boolean()\n          .describe(\n            'Whether manual approval is required to make a reservation in this time slot.'\n          )\n          .optional()\n          .nullable(),\n      })\n    )\n    .optional(),\n});\nexport const CheckTimeSlotRequest = z.object({\n  reservationLocationId: z\n    .string()\n    .describe(\n      'ID of the reservation location for which to check the time slot.'\n    )\n    .regex(\n      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n      'Must be a valid GUID'\n    ),\n  options: z.object({\n    date: z.date().describe('Date and time of the time slot to check.'),\n    duration: z\n      .number()\n      .int()\n      .describe('Duration of the time slot in minutes .\\n\\nMin: `5`')\n      .min(5)\n      .max(1000),\n    partySize: z\n      .number()\n      .int()\n      .describe(\"Party size to check the restaurant's availability for.\")\n      .min(1)\n      .max(10000),\n    excludeReservationId: z\n      .string()\n      .describe(\n        'ID of a reservation to ignore during the check.\\n\\nUse this when rescheduling a reservation to exclude it in its current state from the availability calculations.'\n      )\n      .regex(\n        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n        'Must be a valid GUID'\n      )\n      .optional()\n      .nullable(),\n  }),\n});\nexport const CheckTimeSlotResponse = z.object({\n  tableCombinationAvailabilities: z\n    .array(\n      z.object({\n        tableIds: z.array(z.string()).max(2000).optional(),\n        tableCombinationConflicts: z\n          .array(\n            z.enum([\n              'UNKNOWN',\n              'RESERVED',\n              'TOO_BIG',\n              'TOO_SMALL',\n              'OFFLINE_ONLY',\n              'RESERVED_FOR_EXPERIENCE',\n              'TABLE_NOT_IN_AREA',\n            ])\n          )\n          .max(2)\n          .optional(),\n      })\n    )\n    .optional(),\n  reservationLocationConflicts: z\n    .array(z.enum(['UNKNOWN', 'PARTY_PACING', 'SEAT_PACING']))\n    .optional(),\n  timeSlotAvailability: z\n    .intersection(\n      z.object({\n        timeSlotAvailabilityType: z\n          .enum(['STANDARD', 'EXPERIENCE'])\n          .describe('Type of availability.')\n          .optional(),\n      }),\n      z.xor([\n        z.object({\n          standardOptions: z.never().optional(),\n          experienceOptions: z.never().optional(),\n        }),\n        z.object({\n          experienceOptions: z.never().optional(),\n          standardOptions: z\n            .object({\n              tableCombinationAvailabilities: z\n                .array(\n                  z.object({\n                    tableIds: z.array(z.string()).max(2000).optional(),\n                    tableCombinationConflicts: z\n                      .array(\n                        z.enum([\n                          'UNKNOWN',\n                          'RESERVED',\n                          'TOO_BIG',\n                          'TOO_SMALL',\n                          'OFFLINE_ONLY',\n                          'RESERVED_FOR_EXPERIENCE',\n                          'TABLE_NOT_IN_AREA',\n                        ])\n                      )\n                      .max(2)\n                      .optional(),\n                  })\n                )\n                .max(2000)\n                .optional(),\n              reservationLocationConflicts: z\n                .array(z.enum(['UNKNOWN', 'PARTY_PACING', 'SEAT_PACING']))\n                .max(3)\n                .optional(),\n              experienceBlockingConflicts: z\n                .array(z.enum(['UNKNOWN', 'BLOCKED_BY_EXPERIENCE']))\n                .max(3)\n                .optional(),\n            })\n            .describe('Response for standard reservation.'),\n        }),\n        z.object({\n          standardOptions: z.never().optional(),\n          experienceOptions: z\n            .object({\n              tableCombinationAvailabilities: z\n                .array(\n                  z.object({\n                    tableIds: z.array(z.string()).max(2000).optional(),\n                    experienceTableCombinationConflicts: z\n                      .array(\n                        z.enum([\n                          'UNKNOWN',\n                          'RESERVED',\n                          'TOO_BIG',\n                          'TOO_SMALL',\n                          'OUTSIDE_EXPERIENCE_TABLE_LIST',\n                          'TABLE_NOT_IN_AREA',\n                        ])\n                      )\n                      .max(2)\n                      .optional(),\n                  })\n                )\n                .max(2000)\n                .optional(),\n              experienceConflicts: z\n                .array(z.enum(['UNKNOWN', 'MAXIMUM_NUMBER_OF_GUESTS']))\n                .max(5)\n                .optional(),\n            })\n            .describe('Response for a reservation that contains experience.'),\n        }),\n      ])\n    )\n    .describe('Time slot availability')\n    .optional(),\n});\nexport const GetScheduledTimeSlotsRequest = z.object({\n  reservationLocationId: z\n    .string()\n    .describe(\n      'ID of the reservation location for which to retrieve time slots.'\n    )\n    .regex(\n      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n      'Must be a valid GUID'\n    ),\n  partySize: z\n    .number()\n    .int()\n    .describe(\n      'Size of the party that needs to be seated during this time slot.\\n\\nMin: `1`'\n    )\n    .min(1)\n    .max(10000),\n  options: z.object({\n    timeRange: z\n      .object({\n        startDate: z\n          .date()\n          .describe(\n            'Date and time from which to retrieve time slots in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601#coordinated_Universal_Time_(UTC)) format.'\n          ),\n        endDate: z\n          .date()\n          .describe(\n            'Date and time to which to retrieve time slots in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601#coordinated_Universal_Time_(UTC)) format.'\n          ),\n      })\n      .describe('Time range from which to retrieve time slots.'),\n  }),\n});\nexport const GetScheduledTimeSlotsResponse = z.object({\n  timeSlots: z\n    .array(\n      z.object({\n        startDate: z\n          .date()\n          .describe('Start date and time of this time slot.')\n          .optional()\n          .nullable(),\n        duration: z\n          .number()\n          .int()\n          .describe('Duration in minutes of this time slot.')\n          .optional(),\n        status: z\n          .enum(['AVAILABLE', 'UNAVAILABLE', 'NON_WORKING_HOURS'])\n          .describe('Availability status of this time slot.')\n          .optional(),\n        manualApproval: z\n          .boolean()\n          .describe(\n            'Whether manual approval is required to make a reservation in this time slot.'\n          )\n          .optional()\n          .nullable(),\n      })\n    )\n    .min(0)\n    .max(100)\n    .optional(),\n});\n"],"mappings":"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","names":[]}