import type * as Square from "../index"; /** * Price and inventory alerting overrides for a `CatalogItemVariation` at a specific `Location`. */ export interface ItemVariationLocationOverrides { /** The ID of the `Location`. This can include locations that are deactivated. */ locationId?: string | null; /** The price of the `CatalogItemVariation` at the given `Location`, or blank for variable pricing. */ priceMoney?: Square.Money; /** * The pricing type (fixed or variable) for the `CatalogItemVariation` at the given `Location`. * See [CatalogPricingType](#type-catalogpricingtype) for possible values */ pricingType?: Square.CatalogPricingType; /** * Indicates whether inventory tracking is active for the `CatalogItemVariation` at this `Location`. * When set, this value explicitly overrides the global `track_inventory` setting. When unset, the location * should use the global value. If both global and location-level values are unset, inventory tracking is disabled. */ trackInventory?: boolean | null; /** * Indicates whether the `CatalogItemVariation` displays an alert when its inventory * quantity is less than or equal to its `inventory_alert_threshold`. * See [InventoryAlertType](#type-inventoryalerttype) for possible values */ inventoryAlertType?: Square.InventoryAlertType; /** * If the inventory quantity for the variation is less than or equal to this value and `inventory_alert_type` * is `LOW_QUANTITY`, the variation displays an alert in the merchant dashboard. * * This value is always an integer. */ inventoryAlertThreshold?: bigint | null; /** * Indicates whether the overridden item variation is sold out at the specified location. * * When inventory tracking is enabled on the item variation either globally or at the specified location, * the item variation is automatically marked as sold out when its inventory count reaches zero. The seller * can manually set the item variation as sold out even when the inventory count is greater than zero. * Attempts by an application to set this attribute are ignored. Regardless how the sold-out status is set, * applications should treat its inventory count as zero when this attribute value is `true`. */ soldOut?: boolean; /** * The seller-assigned timestamp, of the RFC 3339 format, to indicate when this sold-out variation * becomes available again at the specified location. Attempts by an application to set this attribute are ignored. * When the current time is later than this attribute value, the affected item variation is no longer sold out. */ soldOutValidUntil?: string; }