import { InvoicingCoupon } from './couponState'; import { InvoicingCouponApplyOn, InvoicingCouponDurationType, InvoicingCouponPeriodUnit, InvoicingCouponStatus, InvoicingDiscountType } from './couponTypes'; export interface InvoicingCouponPayload { id: string; apply_on?: InvoicingCouponApplyOn; coupon_code?: string; created_at?: string; currency_code?: string; currency_symbol?: string; discount_amount?: number; discount_percentage?: number; discount_quantity?: number; discount_type?: InvoicingDiscountType; duration_type?: InvoicingCouponDurationType; invoice_name?: string; invoice_notes?: string; item_constraints?: Record[]; max_redemptions?: number; name?: string; period?: number; period_unit?: InvoicingCouponPeriodUnit; redemptions?: number; restricted_products?: string[]; rev_rec_treatment?: string; status?: InvoicingCouponStatus; updated_at?: string; valid_from?: string; valid_till?: string; } export interface InvoicingCouponCode { code: string; coupon_id?: string; coupon_set_id?: string; status?: string; } export interface InvoicingCouponSet { id: string; archived_count?: number; codes?: InvoicingCouponCode[]; coupon_id?: string; name?: string; redeemed_count?: number; total_count?: number; } export declare const mapInvoicingCouponPayloadToState: (payload: InvoicingCouponPayload) => InvoicingCoupon;