{"version":3,"sources":["../../../src/loyalty-v1-coupon-coupons.schemas.ts"],"sourcesContent":["import * as z from 'zod';\n\nexport const RedeemPointsForCouponRequest = z.object({\n  rewardId: z\n    .string()\n    .describe(\n      'ID of the loyalty reward to redeem. See the Loyalty Rewards API for more information.'\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    loyaltyAccountId: z\n      .string()\n      .describe(\n        'ID of the loyalty account of the customer redeeming points. See the Loyalty Accounts API for more information.'\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  }),\n});\nexport const RedeemPointsForCouponResponse = z.object({\n  coupon: z\n    .object({\n      _id: z\n        .string()\n        .describe('Loyalty coupon ID.')\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      accountId: z\n        .string()\n        .describe(\n          'Loyalty [account ID](https://dev.wix.com/docs/rest/crm/loyalty-program/accounts/account-object) of the customer that redeemed points for a coupon.'\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      memberIdDeprecated: z\n        .string()\n        .describe(\n          'Member ID of the customer that redeemed points for a coupon. See the Members API for more information.'\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      memberId: z\n        .string()\n        .describe(\n          'Member ID of the customer that redeemed points for a coupon. See the Members API for more information.'\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      transactionId: z\n        .string()\n        .describe(\n          '[Transaction ID](https://dev.wix.com/docs/rest/crm/loyalty-program/transactions/loyalty-transaction-object) for the transaction that created a coupon.'\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      couponReference: z\n        .object({\n          couponId: z\n            .string()\n            .describe('Coupon ID.')\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          code: z\n            .string()\n            .describe(\n              'Coupon code.\\n\\nUnique code entered by a customer to apply the coupon.'\n            )\n            .max(20)\n            .optional(),\n          name: z\n            .string()\n            .describe('Name of coupon.')\n            .max(80)\n            .optional()\n            .nullable(),\n          specification: z\n            .intersection(\n              z.object({\n                name: z\n                  .string()\n                  .describe('Name of coupon.')\n                  .optional()\n                  .nullable(),\n                type: z\n                  .enum([\n                    'UNKNOWN',\n                    'MONEY_OFF_AMOUNT',\n                    'PERCENT_OFF_RATE',\n                    'FREE_SHIPPING',\n                    'FIXED_PRICE_AMOUNT',\n                    'BUY_X_GET_Y',\n                  ])\n                  .optional(),\n                limitedToOneItem: z\n                  .boolean()\n                  .describe(\n                    'Whether the coupon is limited to 1 discount per order. If true and a customer pays for multiple items\\nthat the coupon applies to, only the lowest priced item is discounted.\\nCoupons with a `bookings` `namespace` are always limited to 1 item.'\n                  )\n                  .optional()\n                  .nullable(),\n                appliesToSubscriptions: z\n                  .boolean()\n                  .describe('Whether the coupon also applies to subscriptions.')\n                  .optional()\n                  .nullable(),\n                discountedCycleCount: z\n                  .number()\n                  .int()\n                  .describe(\n                    'Specifies the amount of cycles to apply the discount to for a subscription item.\\n\\nCan only be set when `appliesToSubscriptions` is `TRUE` and `specification.scope.namespace` is `pricingPlans`.\\nIf `discountedCycleCount` is empty, the coupon applies to all available cycles.\\n\\nMin: `1`\\n\\nMax: `999`'\n                  )\n                  .optional()\n                  .nullable(),\n              }),\n              z.intersection(\n                z.xor([\n                  z.object({\n                    moneyOffAmount: z.never().optional(),\n                    percentOffRate: z.never().optional(),\n                    freeShipping: z.never().optional(),\n                    fixedPriceAmount: z.never().optional(),\n                    buyXGetY: z.never().optional(),\n                  }),\n                  z.object({\n                    percentOffRate: z.never().optional(),\n                    freeShipping: z.never().optional(),\n                    fixedPriceAmount: z.never().optional(),\n                    buyXGetY: z.never().optional(),\n                    moneyOffAmount: z\n                      .number()\n                      .describe('Fixed price discount.')\n                      .min(0.01),\n                  }),\n                  z.object({\n                    moneyOffAmount: z.never().optional(),\n                    freeShipping: z.never().optional(),\n                    fixedPriceAmount: z.never().optional(),\n                    buyXGetY: z.never().optional(),\n                    percentOffRate: z\n                      .number()\n                      .describe('Discount as a percentage.'),\n                  }),\n                  z.object({\n                    moneyOffAmount: z.never().optional(),\n                    percentOffRate: z.never().optional(),\n                    fixedPriceAmount: z.never().optional(),\n                    buyXGetY: z.never().optional(),\n                    freeShipping: z\n                      .boolean()\n                      .describe(\n                        'Free shipping. If true, the coupon applies to all items in all `namespaces` on a site.'\n                      ),\n                  }),\n                  z.object({\n                    moneyOffAmount: z.never().optional(),\n                    percentOffRate: z.never().optional(),\n                    freeShipping: z.never().optional(),\n                    buyXGetY: z.never().optional(),\n                    fixedPriceAmount: z\n                      .number()\n                      .describe(\n                        'Specific sale price. Currently only supported for coupons with a `stores` `namespace`.'\n                      ),\n                  }),\n                  z.object({\n                    moneyOffAmount: z.never().optional(),\n                    percentOffRate: z.never().optional(),\n                    freeShipping: z.never().optional(),\n                    fixedPriceAmount: z.never().optional(),\n                    buyXGetY: z\n                      .object({\n                        x: z\n                          .number()\n                          .int()\n                          .describe(\n                            'Number of purchased items required to receive free items.'\n                          )\n                          .optional(),\n                        y: z\n                          .number()\n                          .int()\n                          .describe(\n                            'Number of items received for free if required number of items were purchased.'\n                          )\n                          .optional(),\n                      })\n                      .describe(\n                        'Free products when making a purchase. `buyXGetY` is an object that specifies `x` and `y` in the\\nfollowing scenario: if a visitor purchases x number of products, they receive y number of products for free. C\\nurrently only supported for coupons with a `stores` `namespace`.'\n                      ),\n                  }),\n                ]),\n                z.xor([\n                  z.object({\n                    scope: z.never().optional(),\n                    minimumSubtotal: z.never().optional(),\n                  }),\n                  z.object({\n                    minimumSubtotal: z.never().optional(),\n                    scope: z\n                      .object({\n                        name: z\n                          .string()\n                          .describe(\n                            'Group within a `namespace` for which the coupon is applicable.\\n\\nIf no group is specified, the coupon applies to all items in the namespace.\\n`group` is required in some namespaces. See [Scope Values](https://dev.wix.com/api/rest/coupons/coupons/valid-scope-values)\\nfor a list of currently supported groups for each namespace.'\n                          )\n                          .optional()\n                          .nullable(),\n                        entityId: z\n                          .string()\n                          .describe(\n                            'ID of the specific entity in the group for which the coupon is applicable.\\n\\nIf no `entityId` is specified, the coupon applies to all entities in the group. In some cases when a group is specified,\\nan `entityId` is required. See [Scope Values](https://dev.wix.com/api/rest/coupons/coupons/valid-scope-values)\\nfor a list of currently supported entities for each namespace and group.'\n                          )\n                          .optional()\n                          .nullable(),\n                        namespace: z\n                          .string()\n                          .describe(\n                            'Wix application for which the coupon is applicable.\\n\\nOne of the following:\\n+ `\"stores\"`\\n+ `\"bookings\"`\\n+ `\"events\"`\\n+ `\"pricingPlans\"`'\n                          )\n                          .optional(),\n                      })\n                      .describe(\n                        'Scope of the coupon. When no scope is defined, the coupon applies to all\\nitems in all `namespaces` in the site.'\n                      ),\n                  }),\n                  z.object({\n                    scope: z.never().optional(),\n                    minimumSubtotal: z\n                      .number()\n                      .describe(\n                        'The coupon is only applicable when the order subtotal is over this amount.'\n                      ),\n                  }),\n                ])\n              )\n            )\n            .describe('The information to use when creating the coupon.')\n            .optional(),\n          deleted: z\n            .boolean()\n            .describe('Whether the referenced coupon was deleted.')\n            .optional()\n            .nullable(),\n        })\n        .describe(\n          'Reference coupon information for the corresponding [coupon](https://dev.wix.com/docs/rest/business-management/marketing/coupons/coupons/coupon-object)\\nthat is created along with the loyalty coupon.'\n        )\n        .optional(),\n      status: z\n        .enum(['UNKNOWN', 'PENDING', 'ACTIVE', 'APPLIED', 'FAILED', 'ARCHIVED'])\n        .describe(\n          'Loyalty coupon status.\\n\\nThis status relates to the corresponding coupon that is created\\nat the same time as the loyalty coupon and is included in `couponReference`.'\n        )\n        .optional(),\n      rewardName: z\n        .string()\n        .describe('Name of reward that was redeemed to create this coupon.')\n        .min(1)\n        .max(50)\n        .optional(),\n      revision: z\n        .string()\n        .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n        .describe(\n          'Revision number, which increments by 1 each time the loyalty coupon is updated.\\n\\nTo prevent conflicting changes, the current `revision` must be passed when updating the loyalty coupon.'\n        )\n        .optional()\n        .nullable(),\n      _createdDate: z\n        .date()\n        .describe('Date and time the loyalty coupon was created.')\n        .optional()\n        .nullable(),\n      _updatedDate: z\n        .date()\n        .describe('Date and time the loyalty coupon was last updated.')\n        .optional()\n        .nullable(),\n      refundable: z\n        .boolean()\n        .describe(\n          'Whether the loyalty coupon was created in a \"refundable workflow\" i.e. checkout-exchange, and therefore can be deleted in the background. Refundable coupons should not be visible to customers in the UI.'\n        )\n        .optional()\n        .nullable(),\n    })\n    .describe('Created loyalty coupon.')\n    .optional(),\n});\nexport const RedeemCurrentMemberPointsForCouponRequest = z.object({\n  rewardId: z\n    .string()\n    .describe(\n      'ID of the loyalty reward to redeem. See the Loyalty Rewards API for more information.'\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});\nexport const RedeemCurrentMemberPointsForCouponResponse = z.object({\n  coupon: z\n    .object({\n      _id: z\n        .string()\n        .describe('Loyalty coupon ID.')\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      accountId: z\n        .string()\n        .describe(\n          'Loyalty [account ID](https://dev.wix.com/docs/rest/crm/loyalty-program/accounts/account-object) of the customer that redeemed points for a coupon.'\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      memberIdDeprecated: z\n        .string()\n        .describe(\n          'Member ID of the customer that redeemed points for a coupon. See the Members API for more information.'\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      memberId: z\n        .string()\n        .describe(\n          'Member ID of the customer that redeemed points for a coupon. See the Members API for more information.'\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      transactionId: z\n        .string()\n        .describe(\n          '[Transaction ID](https://dev.wix.com/docs/rest/crm/loyalty-program/transactions/loyalty-transaction-object) for the transaction that created a coupon.'\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      couponReference: z\n        .object({\n          couponId: z\n            .string()\n            .describe('Coupon ID.')\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          code: z\n            .string()\n            .describe(\n              'Coupon code.\\n\\nUnique code entered by a customer to apply the coupon.'\n            )\n            .max(20)\n            .optional(),\n          name: z\n            .string()\n            .describe('Name of coupon.')\n            .max(80)\n            .optional()\n            .nullable(),\n          specification: z\n            .intersection(\n              z.object({\n                name: z\n                  .string()\n                  .describe('Name of coupon.')\n                  .optional()\n                  .nullable(),\n                type: z\n                  .enum([\n                    'UNKNOWN',\n                    'MONEY_OFF_AMOUNT',\n                    'PERCENT_OFF_RATE',\n                    'FREE_SHIPPING',\n                    'FIXED_PRICE_AMOUNT',\n                    'BUY_X_GET_Y',\n                  ])\n                  .optional(),\n                limitedToOneItem: z\n                  .boolean()\n                  .describe(\n                    'Whether the coupon is limited to 1 discount per order. If true and a customer pays for multiple items\\nthat the coupon applies to, only the lowest priced item is discounted.\\nCoupons with a `bookings` `namespace` are always limited to 1 item.'\n                  )\n                  .optional()\n                  .nullable(),\n                appliesToSubscriptions: z\n                  .boolean()\n                  .describe('Whether the coupon also applies to subscriptions.')\n                  .optional()\n                  .nullable(),\n                discountedCycleCount: z\n                  .number()\n                  .int()\n                  .describe(\n                    'Specifies the amount of cycles to apply the discount to for a subscription item.\\n\\nCan only be set when `appliesToSubscriptions` is `TRUE` and `specification.scope.namespace` is `pricingPlans`.\\nIf `discountedCycleCount` is empty, the coupon applies to all available cycles.\\n\\nMin: `1`\\n\\nMax: `999`'\n                  )\n                  .optional()\n                  .nullable(),\n              }),\n              z.intersection(\n                z.xor([\n                  z.object({\n                    moneyOffAmount: z.never().optional(),\n                    percentOffRate: z.never().optional(),\n                    freeShipping: z.never().optional(),\n                    fixedPriceAmount: z.never().optional(),\n                    buyXGetY: z.never().optional(),\n                  }),\n                  z.object({\n                    percentOffRate: z.never().optional(),\n                    freeShipping: z.never().optional(),\n                    fixedPriceAmount: z.never().optional(),\n                    buyXGetY: z.never().optional(),\n                    moneyOffAmount: z\n                      .number()\n                      .describe('Fixed price discount.')\n                      .min(0.01),\n                  }),\n                  z.object({\n                    moneyOffAmount: z.never().optional(),\n                    freeShipping: z.never().optional(),\n                    fixedPriceAmount: z.never().optional(),\n                    buyXGetY: z.never().optional(),\n                    percentOffRate: z\n                      .number()\n                      .describe('Discount as a percentage.'),\n                  }),\n                  z.object({\n                    moneyOffAmount: z.never().optional(),\n                    percentOffRate: z.never().optional(),\n                    fixedPriceAmount: z.never().optional(),\n                    buyXGetY: z.never().optional(),\n                    freeShipping: z\n                      .boolean()\n                      .describe(\n                        'Free shipping. If true, the coupon applies to all items in all `namespaces` on a site.'\n                      ),\n                  }),\n                  z.object({\n                    moneyOffAmount: z.never().optional(),\n                    percentOffRate: z.never().optional(),\n                    freeShipping: z.never().optional(),\n                    buyXGetY: z.never().optional(),\n                    fixedPriceAmount: z\n                      .number()\n                      .describe(\n                        'Specific sale price. Currently only supported for coupons with a `stores` `namespace`.'\n                      ),\n                  }),\n                  z.object({\n                    moneyOffAmount: z.never().optional(),\n                    percentOffRate: z.never().optional(),\n                    freeShipping: z.never().optional(),\n                    fixedPriceAmount: z.never().optional(),\n                    buyXGetY: z\n                      .object({\n                        x: z\n                          .number()\n                          .int()\n                          .describe(\n                            'Number of purchased items required to receive free items.'\n                          )\n                          .optional(),\n                        y: z\n                          .number()\n                          .int()\n                          .describe(\n                            'Number of items received for free if required number of items were purchased.'\n                          )\n                          .optional(),\n                      })\n                      .describe(\n                        'Free products when making a purchase. `buyXGetY` is an object that specifies `x` and `y` in the\\nfollowing scenario: if a visitor purchases x number of products, they receive y number of products for free. C\\nurrently only supported for coupons with a `stores` `namespace`.'\n                      ),\n                  }),\n                ]),\n                z.xor([\n                  z.object({\n                    scope: z.never().optional(),\n                    minimumSubtotal: z.never().optional(),\n                  }),\n                  z.object({\n                    minimumSubtotal: z.never().optional(),\n                    scope: z\n                      .object({\n                        name: z\n                          .string()\n                          .describe(\n                            'Group within a `namespace` for which the coupon is applicable.\\n\\nIf no group is specified, the coupon applies to all items in the namespace.\\n`group` is required in some namespaces. See [Scope Values](https://dev.wix.com/api/rest/coupons/coupons/valid-scope-values)\\nfor a list of currently supported groups for each namespace.'\n                          )\n                          .optional()\n                          .nullable(),\n                        entityId: z\n                          .string()\n                          .describe(\n                            'ID of the specific entity in the group for which the coupon is applicable.\\n\\nIf no `entityId` is specified, the coupon applies to all entities in the group. In some cases when a group is specified,\\nan `entityId` is required. See [Scope Values](https://dev.wix.com/api/rest/coupons/coupons/valid-scope-values)\\nfor a list of currently supported entities for each namespace and group.'\n                          )\n                          .optional()\n                          .nullable(),\n                        namespace: z\n                          .string()\n                          .describe(\n                            'Wix application for which the coupon is applicable.\\n\\nOne of the following:\\n+ `\"stores\"`\\n+ `\"bookings\"`\\n+ `\"events\"`\\n+ `\"pricingPlans\"`'\n                          )\n                          .optional(),\n                      })\n                      .describe(\n                        'Scope of the coupon. When no scope is defined, the coupon applies to all\\nitems in all `namespaces` in the site.'\n                      ),\n                  }),\n                  z.object({\n                    scope: z.never().optional(),\n                    minimumSubtotal: z\n                      .number()\n                      .describe(\n                        'The coupon is only applicable when the order subtotal is over this amount.'\n                      ),\n                  }),\n                ])\n              )\n            )\n            .describe('The information to use when creating the coupon.')\n            .optional(),\n          deleted: z\n            .boolean()\n            .describe('Whether the referenced coupon was deleted.')\n            .optional()\n            .nullable(),\n        })\n        .describe(\n          'Reference coupon information for the corresponding [coupon](https://dev.wix.com/docs/rest/business-management/marketing/coupons/coupons/coupon-object)\\nthat is created along with the loyalty coupon.'\n        )\n        .optional(),\n      status: z\n        .enum(['UNKNOWN', 'PENDING', 'ACTIVE', 'APPLIED', 'FAILED', 'ARCHIVED'])\n        .describe(\n          'Loyalty coupon status.\\n\\nThis status relates to the corresponding coupon that is created\\nat the same time as the loyalty coupon and is included in `couponReference`.'\n        )\n        .optional(),\n      rewardName: z\n        .string()\n        .describe('Name of reward that was redeemed to create this coupon.')\n        .min(1)\n        .max(50)\n        .optional(),\n      revision: z\n        .string()\n        .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n        .describe(\n          'Revision number, which increments by 1 each time the loyalty coupon is updated.\\n\\nTo prevent conflicting changes, the current `revision` must be passed when updating the loyalty coupon.'\n        )\n        .optional()\n        .nullable(),\n      _createdDate: z\n        .date()\n        .describe('Date and time the loyalty coupon was created.')\n        .optional()\n        .nullable(),\n      _updatedDate: z\n        .date()\n        .describe('Date and time the loyalty coupon was last updated.')\n        .optional()\n        .nullable(),\n      refundable: z\n        .boolean()\n        .describe(\n          'Whether the loyalty coupon was created in a \"refundable workflow\" i.e. checkout-exchange, and therefore can be deleted in the background. Refundable coupons should not be visible to customers in the UI.'\n        )\n        .optional()\n        .nullable(),\n    })\n    .describe('Created loyalty coupon.')\n    .optional(),\n});\nexport const GetLoyaltyCouponRequest = z.object({\n  loyaltyCouponId: z\n    .string()\n    .describe('ID of the loyalty coupon to retrieve.')\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});\nexport const GetLoyaltyCouponResponse = z.object({\n  _id: z\n    .string()\n    .describe('Loyalty coupon ID.')\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  accountId: z\n    .string()\n    .describe(\n      'Loyalty [account ID](https://dev.wix.com/docs/rest/crm/loyalty-program/accounts/account-object) of the customer that redeemed points for a coupon.'\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  memberIdDeprecated: z\n    .string()\n    .describe(\n      'Member ID of the customer that redeemed points for a coupon. See the Members API for more information.'\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  memberId: z\n    .string()\n    .describe(\n      'Member ID of the customer that redeemed points for a coupon. See the Members API for more information.'\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  transactionId: z\n    .string()\n    .describe(\n      '[Transaction ID](https://dev.wix.com/docs/rest/crm/loyalty-program/transactions/loyalty-transaction-object) for the transaction that created a coupon.'\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  couponReference: z\n    .object({\n      couponId: z\n        .string()\n        .describe('Coupon ID.')\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      code: z\n        .string()\n        .describe(\n          'Coupon code.\\n\\nUnique code entered by a customer to apply the coupon.'\n        )\n        .max(20)\n        .optional(),\n      name: z\n        .string()\n        .describe('Name of coupon.')\n        .max(80)\n        .optional()\n        .nullable(),\n      specification: z\n        .intersection(\n          z.object({\n            name: z.string().describe('Name of coupon.').optional().nullable(),\n            type: z\n              .enum([\n                'UNKNOWN',\n                'MONEY_OFF_AMOUNT',\n                'PERCENT_OFF_RATE',\n                'FREE_SHIPPING',\n                'FIXED_PRICE_AMOUNT',\n                'BUY_X_GET_Y',\n              ])\n              .optional(),\n            limitedToOneItem: z\n              .boolean()\n              .describe(\n                'Whether the coupon is limited to 1 discount per order. If true and a customer pays for multiple items\\nthat the coupon applies to, only the lowest priced item is discounted.\\nCoupons with a `bookings` `namespace` are always limited to 1 item.'\n              )\n              .optional()\n              .nullable(),\n            appliesToSubscriptions: z\n              .boolean()\n              .describe('Whether the coupon also applies to subscriptions.')\n              .optional()\n              .nullable(),\n            discountedCycleCount: z\n              .number()\n              .int()\n              .describe(\n                'Specifies the amount of cycles to apply the discount to for a subscription item.\\n\\nCan only be set when `appliesToSubscriptions` is `TRUE` and `specification.scope.namespace` is `pricingPlans`.\\nIf `discountedCycleCount` is empty, the coupon applies to all available cycles.\\n\\nMin: `1`\\n\\nMax: `999`'\n              )\n              .optional()\n              .nullable(),\n          }),\n          z.intersection(\n            z.xor([\n              z.object({\n                moneyOffAmount: z.never().optional(),\n                percentOffRate: z.never().optional(),\n                freeShipping: z.never().optional(),\n                fixedPriceAmount: z.never().optional(),\n                buyXGetY: z.never().optional(),\n              }),\n              z.object({\n                percentOffRate: z.never().optional(),\n                freeShipping: z.never().optional(),\n                fixedPriceAmount: z.never().optional(),\n                buyXGetY: z.never().optional(),\n                moneyOffAmount: z\n                  .number()\n                  .describe('Fixed price discount.')\n                  .min(0.01),\n              }),\n              z.object({\n                moneyOffAmount: z.never().optional(),\n                freeShipping: z.never().optional(),\n                fixedPriceAmount: z.never().optional(),\n                buyXGetY: z.never().optional(),\n                percentOffRate: z\n                  .number()\n                  .describe('Discount as a percentage.'),\n              }),\n              z.object({\n                moneyOffAmount: z.never().optional(),\n                percentOffRate: z.never().optional(),\n                fixedPriceAmount: z.never().optional(),\n                buyXGetY: z.never().optional(),\n                freeShipping: z\n                  .boolean()\n                  .describe(\n                    'Free shipping. If true, the coupon applies to all items in all `namespaces` on a site.'\n                  ),\n              }),\n              z.object({\n                moneyOffAmount: z.never().optional(),\n                percentOffRate: z.never().optional(),\n                freeShipping: z.never().optional(),\n                buyXGetY: z.never().optional(),\n                fixedPriceAmount: z\n                  .number()\n                  .describe(\n                    'Specific sale price. Currently only supported for coupons with a `stores` `namespace`.'\n                  ),\n              }),\n              z.object({\n                moneyOffAmount: z.never().optional(),\n                percentOffRate: z.never().optional(),\n                freeShipping: z.never().optional(),\n                fixedPriceAmount: z.never().optional(),\n                buyXGetY: z\n                  .object({\n                    x: z\n                      .number()\n                      .int()\n                      .describe(\n                        'Number of purchased items required to receive free items.'\n                      )\n                      .optional(),\n                    y: z\n                      .number()\n                      .int()\n                      .describe(\n                        'Number of items received for free if required number of items were purchased.'\n                      )\n                      .optional(),\n                  })\n                  .describe(\n                    'Free products when making a purchase. `buyXGetY` is an object that specifies `x` and `y` in the\\nfollowing scenario: if a visitor purchases x number of products, they receive y number of products for free. C\\nurrently only supported for coupons with a `stores` `namespace`.'\n                  ),\n              }),\n            ]),\n            z.xor([\n              z.object({\n                scope: z.never().optional(),\n                minimumSubtotal: z.never().optional(),\n              }),\n              z.object({\n                minimumSubtotal: z.never().optional(),\n                scope: z\n                  .object({\n                    name: z\n                      .string()\n                      .describe(\n                        'Group within a `namespace` for which the coupon is applicable.\\n\\nIf no group is specified, the coupon applies to all items in the namespace.\\n`group` is required in some namespaces. See [Scope Values](https://dev.wix.com/api/rest/coupons/coupons/valid-scope-values)\\nfor a list of currently supported groups for each namespace.'\n                      )\n                      .optional()\n                      .nullable(),\n                    entityId: z\n                      .string()\n                      .describe(\n                        'ID of the specific entity in the group for which the coupon is applicable.\\n\\nIf no `entityId` is specified, the coupon applies to all entities in the group. In some cases when a group is specified,\\nan `entityId` is required. See [Scope Values](https://dev.wix.com/api/rest/coupons/coupons/valid-scope-values)\\nfor a list of currently supported entities for each namespace and group.'\n                      )\n                      .optional()\n                      .nullable(),\n                    namespace: z\n                      .string()\n                      .describe(\n                        'Wix application for which the coupon is applicable.\\n\\nOne of the following:\\n+ `\"stores\"`\\n+ `\"bookings\"`\\n+ `\"events\"`\\n+ `\"pricingPlans\"`'\n                      )\n                      .optional(),\n                  })\n                  .describe(\n                    'Scope of the coupon. When no scope is defined, the coupon applies to all\\nitems in all `namespaces` in the site.'\n                  ),\n              }),\n              z.object({\n                scope: z.never().optional(),\n                minimumSubtotal: z\n                  .number()\n                  .describe(\n                    'The coupon is only applicable when the order subtotal is over this amount.'\n                  ),\n              }),\n            ])\n          )\n        )\n        .describe('The information to use when creating the coupon.')\n        .optional(),\n      deleted: z\n        .boolean()\n        .describe('Whether the referenced coupon was deleted.')\n        .optional()\n        .nullable(),\n    })\n    .describe(\n      'Reference coupon information for the corresponding [coupon](https://dev.wix.com/docs/rest/business-management/marketing/coupons/coupons/coupon-object)\\nthat is created along with the loyalty coupon.'\n    )\n    .optional(),\n  status: z\n    .enum(['UNKNOWN', 'PENDING', 'ACTIVE', 'APPLIED', 'FAILED', 'ARCHIVED'])\n    .describe(\n      'Loyalty coupon status.\\n\\nThis status relates to the corresponding coupon that is created\\nat the same time as the loyalty coupon and is included in `couponReference`.'\n    )\n    .optional(),\n  rewardName: z\n    .string()\n    .describe('Name of reward that was redeemed to create this coupon.')\n    .min(1)\n    .max(50)\n    .optional(),\n  revision: z\n    .string()\n    .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n    .describe(\n      'Revision number, which increments by 1 each time the loyalty coupon is updated.\\n\\nTo prevent conflicting changes, the current `revision` must be passed when updating the loyalty coupon.'\n    )\n    .optional()\n    .nullable(),\n  _createdDate: z\n    .date()\n    .describe('Date and time the loyalty coupon was created.')\n    .optional()\n    .nullable(),\n  _updatedDate: z\n    .date()\n    .describe('Date and time the loyalty coupon was last updated.')\n    .optional()\n    .nullable(),\n  refundable: z\n    .boolean()\n    .describe(\n      'Whether the loyalty coupon was created in a \"refundable workflow\" i.e. checkout-exchange, and therefore can be deleted in the background. Refundable coupons should not be visible to customers in the UI.'\n    )\n    .optional()\n    .nullable(),\n});\nexport const BulkGetLoyaltyCouponRequest = z.object({\n  options: z\n    .object({\n      query: z\n        .intersection(\n          z.object({\n            filter: z\n              .record(z.string(), z.any())\n              .describe(\n                'Filter object.\\n\\nLearn more about [filtering](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#filters).'\n              )\n              .optional()\n              .nullable(),\n            sort: z\n              .array(\n                z.object({\n                  fieldName: z\n                    .string()\n                    .describe('Name of the field to sort by.')\n                    .max(512)\n                    .optional(),\n                  order: z.enum(['ASC', 'DESC']).optional(),\n                })\n              )\n              .max(5)\n              .optional(),\n          }),\n          z.xor([\n            z.object({ cursorPaging: z.never().optional() }),\n            z.object({\n              cursorPaging: z\n                .object({\n                  limit: z\n                    .number()\n                    .int()\n                    .describe(\n                      'Maximum number of items to return in the results.'\n                    )\n                    .min(0)\n                    .max(100)\n                    .optional()\n                    .nullable(),\n                  cursor: z\n                    .string()\n                    .describe(\n                      \"Pointer to the next or previous page in the list of results.\\n\\nPass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\\nNot relevant for the first request.\"\n                    )\n                    .max(16000)\n                    .optional()\n                    .nullable(),\n                })\n                .describe(\n                  'Cursor paging options.\\n\\nLearn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).'\n                ),\n            }),\n          ])\n        )\n        .describe('Query to filter loyalty coupons.')\n        .optional(),\n    })\n    .optional(),\n});\nexport const BulkGetLoyaltyCouponResponse = z.object({\n  couponsInSite: z\n    .array(\n      z.object({\n        metaSiteId: z\n          .string()\n          .describe('Metasite ID.')\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        loyaltyCoupons: z\n          .array(\n            z.object({\n              _id: z\n                .string()\n                .describe('Loyalty coupon ID.')\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              accountId: z\n                .string()\n                .describe(\n                  'Loyalty [account ID](https://dev.wix.com/docs/rest/crm/loyalty-program/accounts/account-object) of the customer that redeemed points for a coupon.'\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              memberIdDeprecated: z\n                .string()\n                .describe(\n                  'Member ID of the customer that redeemed points for a coupon. See the Members API for more information.'\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              memberId: z\n                .string()\n                .describe(\n                  'Member ID of the customer that redeemed points for a coupon. See the Members API for more information.'\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              transactionId: z\n                .string()\n                .describe(\n                  '[Transaction ID](https://dev.wix.com/docs/rest/crm/loyalty-program/transactions/loyalty-transaction-object) for the transaction that created a coupon.'\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              couponReference: z\n                .object({\n                  couponId: z\n                    .string()\n                    .describe('Coupon ID.')\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                  code: z\n                    .string()\n                    .describe(\n                      'Coupon code.\\n\\nUnique code entered by a customer to apply the coupon.'\n                    )\n                    .max(20)\n                    .optional(),\n                  name: z\n                    .string()\n                    .describe('Name of coupon.')\n                    .max(80)\n                    .optional()\n                    .nullable(),\n                  specification: z\n                    .intersection(\n                      z.object({\n                        name: z\n                          .string()\n                          .describe('Name of coupon.')\n                          .optional()\n                          .nullable(),\n                        type: z\n                          .enum([\n                            'UNKNOWN',\n                            'MONEY_OFF_AMOUNT',\n                            'PERCENT_OFF_RATE',\n                            'FREE_SHIPPING',\n                            'FIXED_PRICE_AMOUNT',\n                            'BUY_X_GET_Y',\n                          ])\n                          .optional(),\n                        limitedToOneItem: z\n                          .boolean()\n                          .describe(\n                            'Whether the coupon is limited to 1 discount per order. If true and a customer pays for multiple items\\nthat the coupon applies to, only the lowest priced item is discounted.\\nCoupons with a `bookings` `namespace` are always limited to 1 item.'\n                          )\n                          .optional()\n                          .nullable(),\n                        appliesToSubscriptions: z\n                          .boolean()\n                          .describe(\n                            'Whether the coupon also applies to subscriptions.'\n                          )\n                          .optional()\n                          .nullable(),\n                        discountedCycleCount: z\n                          .number()\n                          .int()\n                          .describe(\n                            'Specifies the amount of cycles to apply the discount to for a subscription item.\\n\\nCan only be set when `appliesToSubscriptions` is `TRUE` and `specification.scope.namespace` is `pricingPlans`.\\nIf `discountedCycleCount` is empty, the coupon applies to all available cycles.\\n\\nMin: `1`\\n\\nMax: `999`'\n                          )\n                          .optional()\n                          .nullable(),\n                      }),\n                      z.intersection(\n                        z.xor([\n                          z.object({\n                            moneyOffAmount: z.never().optional(),\n                            percentOffRate: z.never().optional(),\n                            freeShipping: z.never().optional(),\n                            fixedPriceAmount: z.never().optional(),\n                            buyXGetY: z.never().optional(),\n                          }),\n                          z.object({\n                            percentOffRate: z.never().optional(),\n                            freeShipping: z.never().optional(),\n                            fixedPriceAmount: z.never().optional(),\n                            buyXGetY: z.never().optional(),\n                            moneyOffAmount: z\n                              .number()\n                              .describe('Fixed price discount.')\n                              .min(0.01),\n                          }),\n                          z.object({\n                            moneyOffAmount: z.never().optional(),\n                            freeShipping: z.never().optional(),\n                            fixedPriceAmount: z.never().optional(),\n                            buyXGetY: z.never().optional(),\n                            percentOffRate: z\n                              .number()\n                              .describe('Discount as a percentage.'),\n                          }),\n                          z.object({\n                            moneyOffAmount: z.never().optional(),\n                            percentOffRate: z.never().optional(),\n                            fixedPriceAmount: z.never().optional(),\n                            buyXGetY: z.never().optional(),\n                            freeShipping: z\n                              .boolean()\n                              .describe(\n                                'Free shipping. If true, the coupon applies to all items in all `namespaces` on a site.'\n                              ),\n                          }),\n                          z.object({\n                            moneyOffAmount: z.never().optional(),\n                            percentOffRate: z.never().optional(),\n                            freeShipping: z.never().optional(),\n                            buyXGetY: z.never().optional(),\n                            fixedPriceAmount: z\n                              .number()\n                              .describe(\n                                'Specific sale price. Currently only supported for coupons with a `stores` `namespace`.'\n                              ),\n                          }),\n                          z.object({\n                            moneyOffAmount: z.never().optional(),\n                            percentOffRate: z.never().optional(),\n                            freeShipping: z.never().optional(),\n                            fixedPriceAmount: z.never().optional(),\n                            buyXGetY: z\n                              .object({\n                                x: z\n                                  .number()\n                                  .int()\n                                  .describe(\n                                    'Number of purchased items required to receive free items.'\n                                  )\n                                  .optional(),\n                                y: z\n                                  .number()\n                                  .int()\n                                  .describe(\n                                    'Number of items received for free if required number of items were purchased.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Free products when making a purchase. `buyXGetY` is an object that specifies `x` and `y` in the\\nfollowing scenario: if a visitor purchases x number of products, they receive y number of products for free. C\\nurrently only supported for coupons with a `stores` `namespace`.'\n                              ),\n                          }),\n                        ]),\n                        z.xor([\n                          z.object({\n                            scope: z.never().optional(),\n                            minimumSubtotal: z.never().optional(),\n                          }),\n                          z.object({\n                            minimumSubtotal: z.never().optional(),\n                            scope: z\n                              .object({\n                                name: z\n                                  .string()\n                                  .describe(\n                                    'Group within a `namespace` for which the coupon is applicable.\\n\\nIf no group is specified, the coupon applies to all items in the namespace.\\n`group` is required in some namespaces. See [Scope Values](https://dev.wix.com/api/rest/coupons/coupons/valid-scope-values)\\nfor a list of currently supported groups for each namespace.'\n                                  )\n                                  .optional()\n                                  .nullable(),\n                                entityId: z\n                                  .string()\n                                  .describe(\n                                    'ID of the specific entity in the group for which the coupon is applicable.\\n\\nIf no `entityId` is specified, the coupon applies to all entities in the group. In some cases when a group is specified,\\nan `entityId` is required. See [Scope Values](https://dev.wix.com/api/rest/coupons/coupons/valid-scope-values)\\nfor a list of currently supported entities for each namespace and group.'\n                                  )\n                                  .optional()\n                                  .nullable(),\n                                namespace: z\n                                  .string()\n                                  .describe(\n                                    'Wix application for which the coupon is applicable.\\n\\nOne of the following:\\n+ `\"stores\"`\\n+ `\"bookings\"`\\n+ `\"events\"`\\n+ `\"pricingPlans\"`'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Scope of the coupon. When no scope is defined, the coupon applies to all\\nitems in all `namespaces` in the site.'\n                              ),\n                          }),\n                          z.object({\n                            scope: z.never().optional(),\n                            minimumSubtotal: z\n                              .number()\n                              .describe(\n                                'The coupon is only applicable when the order subtotal is over this amount.'\n                              ),\n                          }),\n                        ])\n                      )\n                    )\n                    .describe(\n                      'The information to use when creating the coupon.'\n                    )\n                    .optional(),\n                  deleted: z\n                    .boolean()\n                    .describe('Whether the referenced coupon was deleted.')\n                    .optional()\n                    .nullable(),\n                })\n                .describe(\n                  'Reference coupon information for the corresponding [coupon](https://dev.wix.com/docs/rest/business-management/marketing/coupons/coupons/coupon-object)\\nthat is created along with the loyalty coupon.'\n                )\n                .optional(),\n              status: z\n                .enum([\n                  'UNKNOWN',\n                  'PENDING',\n                  'ACTIVE',\n                  'APPLIED',\n                  'FAILED',\n                  'ARCHIVED',\n                ])\n                .describe(\n                  'Loyalty coupon status.\\n\\nThis status relates to the corresponding coupon that is created\\nat the same time as the loyalty coupon and is included in `couponReference`.'\n                )\n                .optional(),\n              rewardName: z\n                .string()\n                .describe(\n                  'Name of reward that was redeemed to create this coupon.'\n                )\n                .min(1)\n                .max(50)\n                .optional(),\n              revision: z\n                .string()\n                .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n                .describe(\n                  'Revision number, which increments by 1 each time the loyalty coupon is updated.\\n\\nTo prevent conflicting changes, the current `revision` must be passed when updating the loyalty coupon.'\n                )\n                .optional()\n                .nullable(),\n              _createdDate: z\n                .date()\n                .describe('Date and time the loyalty coupon was created.')\n                .optional()\n                .nullable(),\n              _updatedDate: z\n                .date()\n                .describe('Date and time the loyalty coupon was last updated.')\n                .optional()\n                .nullable(),\n              refundable: z\n                .boolean()\n                .describe(\n                  'Whether the loyalty coupon was created in a \"refundable workflow\" i.e. checkout-exchange, and therefore can be deleted in the background. Refundable coupons should not be visible to customers in the UI.'\n                )\n                .optional()\n                .nullable(),\n            })\n          )\n          .max(100)\n          .optional(),\n      })\n    )\n    .max(100)\n    .optional(),\n});\nexport const GetCurrentMemberCouponsRequest = z.object({});\nexport const GetCurrentMemberCouponsResponse = z.object({\n  loyaltyCoupons: z\n    .array(\n      z.object({\n        _id: z\n          .string()\n          .describe('Loyalty coupon ID.')\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        accountId: z\n          .string()\n          .describe(\n            'Loyalty [account ID](https://dev.wix.com/docs/rest/crm/loyalty-program/accounts/account-object) of the customer that redeemed points for a coupon.'\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        memberIdDeprecated: z\n          .string()\n          .describe(\n            'Member ID of the customer that redeemed points for a coupon. See the Members API for more information.'\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        memberId: z\n          .string()\n          .describe(\n            'Member ID of the customer that redeemed points for a coupon. See the Members API for more information.'\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        transactionId: z\n          .string()\n          .describe(\n            '[Transaction ID](https://dev.wix.com/docs/rest/crm/loyalty-program/transactions/loyalty-transaction-object) for the transaction that created a coupon.'\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        couponReference: z\n          .object({\n            couponId: z\n              .string()\n              .describe('Coupon ID.')\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            code: z\n              .string()\n              .describe(\n                'Coupon code.\\n\\nUnique code entered by a customer to apply the coupon.'\n              )\n              .max(20)\n              .optional(),\n            name: z\n              .string()\n              .describe('Name of coupon.')\n              .max(80)\n              .optional()\n              .nullable(),\n            specification: z\n              .intersection(\n                z.object({\n                  name: z\n                    .string()\n                    .describe('Name of coupon.')\n                    .optional()\n                    .nullable(),\n                  type: z\n                    .enum([\n                      'UNKNOWN',\n                      'MONEY_OFF_AMOUNT',\n                      'PERCENT_OFF_RATE',\n                      'FREE_SHIPPING',\n                      'FIXED_PRICE_AMOUNT',\n                      'BUY_X_GET_Y',\n                    ])\n                    .optional(),\n                  limitedToOneItem: z\n                    .boolean()\n                    .describe(\n                      'Whether the coupon is limited to 1 discount per order. If true and a customer pays for multiple items\\nthat the coupon applies to, only the lowest priced item is discounted.\\nCoupons with a `bookings` `namespace` are always limited to 1 item.'\n                    )\n                    .optional()\n                    .nullable(),\n                  appliesToSubscriptions: z\n                    .boolean()\n                    .describe(\n                      'Whether the coupon also applies to subscriptions.'\n                    )\n                    .optional()\n                    .nullable(),\n                  discountedCycleCount: z\n                    .number()\n                    .int()\n                    .describe(\n                      'Specifies the amount of cycles to apply the discount to for a subscription item.\\n\\nCan only be set when `appliesToSubscriptions` is `TRUE` and `specification.scope.namespace` is `pricingPlans`.\\nIf `discountedCycleCount` is empty, the coupon applies to all available cycles.\\n\\nMin: `1`\\n\\nMax: `999`'\n                    )\n                    .optional()\n                    .nullable(),\n                }),\n                z.intersection(\n                  z.xor([\n                    z.object({\n                      moneyOffAmount: z.never().optional(),\n                      percentOffRate: z.never().optional(),\n                      freeShipping: z.never().optional(),\n                      fixedPriceAmount: z.never().optional(),\n                      buyXGetY: z.never().optional(),\n                    }),\n                    z.object({\n                      percentOffRate: z.never().optional(),\n                      freeShipping: z.never().optional(),\n                      fixedPriceAmount: z.never().optional(),\n                      buyXGetY: z.never().optional(),\n                      moneyOffAmount: z\n                        .number()\n                        .describe('Fixed price discount.')\n                        .min(0.01),\n                    }),\n                    z.object({\n                      moneyOffAmount: z.never().optional(),\n                      freeShipping: z.never().optional(),\n                      fixedPriceAmount: z.never().optional(),\n                      buyXGetY: z.never().optional(),\n                      percentOffRate: z\n                        .number()\n                        .describe('Discount as a percentage.'),\n                    }),\n                    z.object({\n                      moneyOffAmount: z.never().optional(),\n                      percentOffRate: z.never().optional(),\n                      fixedPriceAmount: z.never().optional(),\n                      buyXGetY: z.never().optional(),\n                      freeShipping: z\n                        .boolean()\n                        .describe(\n                          'Free shipping. If true, the coupon applies to all items in all `namespaces` on a site.'\n                        ),\n                    }),\n                    z.object({\n                      moneyOffAmount: z.never().optional(),\n                      percentOffRate: z.never().optional(),\n                      freeShipping: z.never().optional(),\n                      buyXGetY: z.never().optional(),\n                      fixedPriceAmount: z\n                        .number()\n                        .describe(\n                          'Specific sale price. Currently only supported for coupons with a `stores` `namespace`.'\n                        ),\n                    }),\n                    z.object({\n                      moneyOffAmount: z.never().optional(),\n                      percentOffRate: z.never().optional(),\n                      freeShipping: z.never().optional(),\n                      fixedPriceAmount: z.never().optional(),\n                      buyXGetY: z\n                        .object({\n                          x: z\n                            .number()\n                            .int()\n                            .describe(\n                              'Number of purchased items required to receive free items.'\n                            )\n                            .optional(),\n                          y: z\n                            .number()\n                            .int()\n                            .describe(\n                              'Number of items received for free if required number of items were purchased.'\n                            )\n                            .optional(),\n                        })\n                        .describe(\n                          'Free products when making a purchase. `buyXGetY` is an object that specifies `x` and `y` in the\\nfollowing scenario: if a visitor purchases x number of products, they receive y number of products for free. C\\nurrently only supported for coupons with a `stores` `namespace`.'\n                        ),\n                    }),\n                  ]),\n                  z.xor([\n                    z.object({\n                      scope: z.never().optional(),\n                      minimumSubtotal: z.never().optional(),\n                    }),\n                    z.object({\n                      minimumSubtotal: z.never().optional(),\n                      scope: z\n                        .object({\n                          name: z\n                            .string()\n                            .describe(\n                              'Group within a `namespace` for which the coupon is applicable.\\n\\nIf no group is specified, the coupon applies to all items in the namespace.\\n`group` is required in some namespaces. See [Scope Values](https://dev.wix.com/api/rest/coupons/coupons/valid-scope-values)\\nfor a list of currently supported groups for each namespace.'\n                            )\n                            .optional()\n                            .nullable(),\n                          entityId: z\n                            .string()\n                            .describe(\n                              'ID of the specific entity in the group for which the coupon is applicable.\\n\\nIf no `entityId` is specified, the coupon applies to all entities in the group. In some cases when a group is specified,\\nan `entityId` is required. See [Scope Values](https://dev.wix.com/api/rest/coupons/coupons/valid-scope-values)\\nfor a list of currently supported entities for each namespace and group.'\n                            )\n                            .optional()\n                            .nullable(),\n                          namespace: z\n                            .string()\n                            .describe(\n                              'Wix application for which the coupon is applicable.\\n\\nOne of the following:\\n+ `\"stores\"`\\n+ `\"bookings\"`\\n+ `\"events\"`\\n+ `\"pricingPlans\"`'\n                            )\n                            .optional(),\n                        })\n                        .describe(\n                          'Scope of the coupon. When no scope is defined, the coupon applies to all\\nitems in all `namespaces` in the site.'\n                        ),\n                    }),\n                    z.object({\n                      scope: z.never().optional(),\n                      minimumSubtotal: z\n                        .number()\n                        .describe(\n                          'The coupon is only applicable when the order subtotal is over this amount.'\n                        ),\n                    }),\n                  ])\n                )\n              )\n              .describe('The information to use when creating the coupon.')\n              .optional(),\n            deleted: z\n              .boolean()\n              .describe('Whether the referenced coupon was deleted.')\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            'Reference coupon information for the corresponding [coupon](https://dev.wix.com/docs/rest/business-management/marketing/coupons/coupons/coupon-object)\\nthat is created along with the loyalty coupon.'\n          )\n          .optional(),\n        status: z\n          .enum([\n            'UNKNOWN',\n            'PENDING',\n            'ACTIVE',\n            'APPLIED',\n            'FAILED',\n            'ARCHIVED',\n          ])\n          .describe(\n            'Loyalty coupon status.\\n\\nThis status relates to the corresponding coupon that is created\\nat the same time as the loyalty coupon and is included in `couponReference`.'\n          )\n          .optional(),\n        rewardName: z\n          .string()\n          .describe('Name of reward that was redeemed to create this coupon.')\n          .min(1)\n          .max(50)\n          .optional(),\n        revision: z\n          .string()\n          .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n          .describe(\n            'Revision number, which increments by 1 each time the loyalty coupon is updated.\\n\\nTo prevent conflicting changes, the current `revision` must be passed when updating the loyalty coupon.'\n          )\n          .optional()\n          .nullable(),\n        _createdDate: z\n          .date()\n          .describe('Date and time the loyalty coupon was created.')\n          .optional()\n          .nullable(),\n        _updatedDate: z\n          .date()\n          .describe('Date and time the loyalty coupon was last updated.')\n          .optional()\n          .nullable(),\n        refundable: z\n          .boolean()\n          .describe(\n            'Whether the loyalty coupon was created in a \"refundable workflow\" i.e. checkout-exchange, and therefore can be deleted in the background. Refundable coupons should not be visible to customers in the UI.'\n          )\n          .optional()\n          .nullable(),\n      })\n    )\n    .optional(),\n});\nexport const QueryLoyaltyCouponsRequest = z.object({\n  query: z\n    .object({\n      filter: z\n        .object({\n          accountId: z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          memberId: z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          transactionId: z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          couponReference: z\n            .object({\n              $eq: z.any(),\n              $exists: z.boolean(),\n              $gt: z.any(),\n              $gte: z.any(),\n              $hasAll: z.array(z.any()),\n              $hasSome: z.array(z.any()),\n              $in: z.array(z.any()),\n              $lt: z.any(),\n              $lte: z.any(),\n              $ne: z.any(),\n              $nin: z.array(z.any()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          status: z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          rewardName: z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          _createdDate: z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          _updatedDate: z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          $and: z.array(z.any()).optional(),\n          $or: z.array(z.any()).optional(),\n          $not: z.any().optional(),\n        })\n        .strict()\n        .optional(),\n      sort: z\n        .array(\n          z.object({\n            fieldName: z\n              .enum([\n                'accountId',\n                'memberId',\n                'transactionId',\n                'couponReference',\n                'status',\n                'rewardName',\n                '_createdDate',\n                '_updatedDate',\n              ])\n              .optional(),\n            order: z.enum(['ASC', 'DESC']).optional(),\n          })\n        )\n        .optional(),\n    })\n    .catchall(z.any())\n    .describe('Query options.'),\n});\nexport const QueryLoyaltyCouponsResponse = z.object({\n  loyaltyCoupons: z\n    .array(\n      z.object({\n        _id: z\n          .string()\n          .describe('Loyalty coupon ID.')\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        accountId: z\n          .string()\n          .describe(\n            'Loyalty [account ID](https://dev.wix.com/docs/rest/crm/loyalty-program/accounts/account-object) of the customer that redeemed points for a coupon.'\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        memberIdDeprecated: z\n          .string()\n          .describe(\n            'Member ID of the customer that redeemed points for a coupon. See the Members API for more information.'\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        memberId: z\n          .string()\n          .describe(\n            'Member ID of the customer that redeemed points for a coupon. See the Members API for more information.'\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        transactionId: z\n          .string()\n          .describe(\n            '[Transaction ID](https://dev.wix.com/docs/rest/crm/loyalty-program/transactions/loyalty-transaction-object) for the transaction that created a coupon.'\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        couponReference: z\n          .object({\n            couponId: z\n              .string()\n              .describe('Coupon ID.')\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            code: z\n              .string()\n              .describe(\n                'Coupon code.\\n\\nUnique code entered by a customer to apply the coupon.'\n              )\n              .max(20)\n              .optional(),\n            name: z\n              .string()\n              .describe('Name of coupon.')\n              .max(80)\n              .optional()\n              .nullable(),\n            specification: z\n              .intersection(\n                z.object({\n                  name: z\n                    .string()\n                    .describe('Name of coupon.')\n                    .optional()\n                    .nullable(),\n                  type: z\n                    .enum([\n                      'UNKNOWN',\n                      'MONEY_OFF_AMOUNT',\n                      'PERCENT_OFF_RATE',\n                      'FREE_SHIPPING',\n                      'FIXED_PRICE_AMOUNT',\n                      'BUY_X_GET_Y',\n                    ])\n                    .optional(),\n                  limitedToOneItem: z\n                    .boolean()\n                    .describe(\n                      'Whether the coupon is limited to 1 discount per order. If true and a customer pays for multiple items\\nthat the coupon applies to, only the lowest priced item is discounted.\\nCoupons with a `bookings` `namespace` are always limited to 1 item.'\n                    )\n                    .optional()\n                    .nullable(),\n                  appliesToSubscriptions: z\n                    .boolean()\n                    .describe(\n                      'Whether the coupon also applies to subscriptions.'\n                    )\n                    .optional()\n                    .nullable(),\n                  discountedCycleCount: z\n                    .number()\n                    .int()\n                    .describe(\n                      'Specifies the amount of cycles to apply the discount to for a subscription item.\\n\\nCan only be set when `appliesToSubscriptions` is `TRUE` and `specification.scope.namespace` is `pricingPlans`.\\nIf `discountedCycleCount` is empty, the coupon applies to all available cycles.\\n\\nMin: `1`\\n\\nMax: `999`'\n                    )\n                    .optional()\n                    .nullable(),\n                }),\n                z.intersection(\n                  z.xor([\n                    z.object({\n                      moneyOffAmount: z.never().optional(),\n                      percentOffRate: z.never().optional(),\n                      freeShipping: z.never().optional(),\n                      fixedPriceAmount: z.never().optional(),\n                      buyXGetY: z.never().optional(),\n                    }),\n                    z.object({\n                      percentOffRate: z.never().optional(),\n                      freeShipping: z.never().optional(),\n                      fixedPriceAmount: z.never().optional(),\n                      buyXGetY: z.never().optional(),\n                      moneyOffAmount: z\n                        .number()\n                        .describe('Fixed price discount.')\n                        .min(0.01),\n                    }),\n                    z.object({\n                      moneyOffAmount: z.never().optional(),\n                      freeShipping: z.never().optional(),\n                      fixedPriceAmount: z.never().optional(),\n                      buyXGetY: z.never().optional(),\n                      percentOffRate: z\n                        .number()\n                        .describe('Discount as a percentage.'),\n                    }),\n                    z.object({\n                      moneyOffAmount: z.never().optional(),\n                      percentOffRate: z.never().optional(),\n                      fixedPriceAmount: z.never().optional(),\n                      buyXGetY: z.never().optional(),\n                      freeShipping: z\n                        .boolean()\n                        .describe(\n                          'Free shipping. If true, the coupon applies to all items in all `namespaces` on a site.'\n                        ),\n                    }),\n                    z.object({\n                      moneyOffAmount: z.never().optional(),\n                      percentOffRate: z.never().optional(),\n                      freeShipping: z.never().optional(),\n                      buyXGetY: z.never().optional(),\n                      fixedPriceAmount: z\n                        .number()\n                        .describe(\n                          'Specific sale price. Currently only supported for coupons with a `stores` `namespace`.'\n                        ),\n                    }),\n                    z.object({\n                      moneyOffAmount: z.never().optional(),\n                      percentOffRate: z.never().optional(),\n                      freeShipping: z.never().optional(),\n                      fixedPriceAmount: z.never().optional(),\n                      buyXGetY: z\n                        .object({\n                          x: z\n                            .number()\n                            .int()\n                            .describe(\n                              'Number of purchased items required to receive free items.'\n                            )\n                            .optional(),\n                          y: z\n                            .number()\n                            .int()\n                            .describe(\n                              'Number of items received for free if required number of items were purchased.'\n                            )\n                            .optional(),\n                        })\n                        .describe(\n                          'Free products when making a purchase. `buyXGetY` is an object that specifies `x` and `y` in the\\nfollowing scenario: if a visitor purchases x number of products, they receive y number of products for free. C\\nurrently only supported for coupons with a `stores` `namespace`.'\n                        ),\n                    }),\n                  ]),\n                  z.xor([\n                    z.object({\n                      scope: z.never().optional(),\n                      minimumSubtotal: z.never().optional(),\n                    }),\n                    z.object({\n                      minimumSubtotal: z.never().optional(),\n                      scope: z\n                        .object({\n                          name: z\n                            .string()\n                            .describe(\n                              'Group within a `namespace` for which the coupon is applicable.\\n\\nIf no group is specified, the coupon applies to all items in the namespace.\\n`group` is required in some namespaces. See [Scope Values](https://dev.wix.com/api/rest/coupons/coupons/valid-scope-values)\\nfor a list of currently supported groups for each namespace.'\n                            )\n                            .optional()\n                            .nullable(),\n                          entityId: z\n                            .string()\n                            .describe(\n                              'ID of the specific entity in the group for which the coupon is applicable.\\n\\nIf no `entityId` is specified, the coupon applies to all entities in the group. In some cases when a group is specified,\\nan `entityId` is required. See [Scope Values](https://dev.wix.com/api/rest/coupons/coupons/valid-scope-values)\\nfor a list of currently supported entities for each namespace and group.'\n                            )\n                            .optional()\n                            .nullable(),\n                          namespace: z\n                            .string()\n                            .describe(\n                              'Wix application for which the coupon is applicable.\\n\\nOne of the following:\\n+ `\"stores\"`\\n+ `\"bookings\"`\\n+ `\"events\"`\\n+ `\"pricingPlans\"`'\n                            )\n                            .optional(),\n                        })\n                        .describe(\n                          'Scope of the coupon. When no scope is defined, the coupon applies to all\\nitems in all `namespaces` in the site.'\n                        ),\n                    }),\n                    z.object({\n                      scope: z.never().optional(),\n                      minimumSubtotal: z\n                        .number()\n                        .describe(\n                          'The coupon is only applicable when the order subtotal is over this amount.'\n                        ),\n                    }),\n                  ])\n                )\n              )\n              .describe('The information to use when creating the coupon.')\n              .optional(),\n            deleted: z\n              .boolean()\n              .describe('Whether the referenced coupon was deleted.')\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            'Reference coupon information for the corresponding [coupon](https://dev.wix.com/docs/rest/business-management/marketing/coupons/coupons/coupon-object)\\nthat is created along with the loyalty coupon.'\n          )\n          .optional(),\n        status: z\n          .enum([\n            'UNKNOWN',\n            'PENDING',\n            'ACTIVE',\n            'APPLIED',\n            'FAILED',\n            'ARCHIVED',\n          ])\n          .describe(\n            'Loyalty coupon status.\\n\\nThis status relates to the corresponding coupon that is created\\nat the same time as the loyalty coupon and is included in `couponReference`.'\n          )\n          .optional(),\n        rewardName: z\n          .string()\n          .describe('Name of reward that was redeemed to create this coupon.')\n          .min(1)\n          .max(50)\n          .optional(),\n        revision: z\n          .string()\n          .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n          .describe(\n            'Revision number, which increments by 1 each time the loyalty coupon is updated.\\n\\nTo prevent conflicting changes, the current `revision` must be passed when updating the loyalty coupon.'\n          )\n          .optional()\n          .nullable(),\n        _createdDate: z\n          .date()\n          .describe('Date and time the loyalty coupon was created.')\n          .optional()\n          .nullable(),\n        _updatedDate: z\n          .date()\n          .describe('Date and time the loyalty coupon was last updated.')\n          .optional()\n          .nullable(),\n        refundable: z\n          .boolean()\n          .describe(\n            'Whether the loyalty coupon was created in a \"refundable workflow\" i.e. checkout-exchange, and therefore can be deleted in the background. Refundable coupons should not be visible to customers in the UI.'\n          )\n          .optional()\n          .nullable(),\n      })\n    )\n    .optional(),\n  metadata: z\n    .object({\n      count: z\n        .number()\n        .int()\n        .describe('Number of items returned in the response.')\n        .optional()\n        .nullable(),\n      offset: z\n        .number()\n        .int()\n        .describe('Offset that was requested.')\n        .optional()\n        .nullable(),\n      total: z\n        .number()\n        .int()\n        .describe(\n          'Total number of items that match the query. Returned if offset paging is used and the `tooManyToCount` flag is not set.'\n        )\n        .optional()\n        .nullable(),\n      tooManyToCount: z\n        .boolean()\n        .describe(\n          'Flag that indicates the server failed to calculate the `total` field.'\n        )\n        .optional()\n        .nullable(),\n      cursors: z\n        .object({\n          next: z\n            .string()\n            .describe(\n              'Cursor string pointing to the next page in the list of results.'\n            )\n            .max(16000)\n            .optional()\n            .nullable(),\n          prev: z\n            .string()\n            .describe(\n              'Cursor pointing to the previous page in the list of results.'\n            )\n            .max(16000)\n            .optional()\n            .nullable(),\n        })\n        .describe(\n          'Cursors to navigate through the result pages using `next` and `prev`. Returned if cursor paging is used.'\n        )\n        .optional(),\n    })\n    .describe('Metadata.')\n    .optional(),\n});\nexport const DeleteLoyaltyCouponRequest = z.object({\n  _id: z\n    .string()\n    .describe('ID of the loyalty coupon to delete.')\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  revision: z\n    .string()\n    .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n    .describe(\n      'Revision number, which increments by 1 each time the loyalty coupon is updated.\\n\\nTo prevent conflicting changes, the current `revision` must be passed when updating the loyalty coupon.'\n    ),\n});\nexport const DeleteLoyaltyCouponResponse = z.object({});\n"],"mappings":"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","names":[]}