/** * @example * { * pid: "pid" * } */ export interface RedeemVoucherRequest { /** Loyalty Program ID */ pid: string; /** Unique identifier for the attributed reward */ attributedRewardId?: string; /** Redemption code for the reward */ code?: string; /** Unique identifier for the contact */ contactId?: number; /** Identifier for the loyalty subscription */ loyaltySubscriptionId?: string; /** Additional metadata associated with the redeem request */ meta?: Record; /** Order details for the redemption */ order?: RedeemVoucherRequest.Order; /** Unique identifier for the reward */ rewardId?: string; /** Time to live in seconds for the redemption request */ ttl?: number; /** Whether the redemption should be automatically completed */ autoComplete?: boolean; } export declare namespace RedeemVoucherRequest { interface Order { /** Total amount of the order */ amount?: number | undefined; /** Billing information for the order */ billing?: Order.Billing | undefined; /** Unique identifier for the contact */ contact_id?: number | undefined; /** List of coupon codes applied to the order */ coupons?: string[] | undefined; /** Timestamp when the order was created */ createdAt?: string | undefined; /** Email address associated with the order */ email?: string | undefined; /** Unique identifier for the order */ id?: string | undefined; /** Additional identifiers for the order */ identifiers?: Order.Identifiers | undefined; /** List of products in the order */ products?: Order.Products.Item[] | undefined; /** Current status of the order */ status?: string | undefined; /** Identifier for the store where the order was placed */ storeId?: string | undefined; /** Timestamp when the order was last updated */ updatedAt?: string | undefined; } namespace Order { interface Billing { /** Address of the user */ address?: string | undefined; /** City of the user */ city?: string | undefined; /** Country code of the user */ countryCode?: string | undefined; /** Payment method opted by the user */ paymentMethod?: string | undefined; /** Phone number of the user */ phone?: number | undefined; /** Postal Code of user's location */ postCode?: number | undefined; /** Region where user resides */ region?: string | undefined; } interface Identifiers { /** External identifier for the order */ ext_id?: string | undefined; /** Identifier for the loyalty subscription */ loyalty_subscription_id?: string | undefined; } type Products = Products.Item[]; namespace Products { interface Item { /** List of categories the product belongs to */ category?: string[] | undefined; /** Price of the product */ price?: number | undefined; /** Unique identifier for the product */ productId?: string | undefined; /** Quantity of the product */ quantity?: number | undefined; /** Identifier for the product variant */ variantId?: string | undefined; } } } }