export default RedemptionVoucher;
/**
* The RedemptionVoucher model module.
* @module model/RedemptionVoucher
*/
declare class RedemptionVoucher {
/**
* Initializes the fields of this object.
* This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins).
* Only for internal use.
*/
static initialize(obj: any): void;
/**
* Constructs a RedemptionVoucher from a plain JavaScript object, optionally creating a new instance.
* Copies all relevant properties from data to obj if supplied or a new instance if not.
* @param {Partial} data The plain JavaScript object bearing properties of interest.
* @param {RedemptionVoucher} [obj] Optional instance to populate.
* @returns {RedemptionVoucher} The populated RedemptionVoucher instance.
*/
static constructFromObject(data: Partial, obj?: RedemptionVoucher): RedemptionVoucher;
/**
* Validates the JSON data with respect to RedemptionVoucher.
* @param {Partial} data The plain JavaScript object bearing properties of interest.
* @returns {boolean} to indicate whether the JSON data is valid with respect to RedemptionVoucher.
*/
static validateJSON(data: Partial): boolean;
id: string | undefined;
code: string | undefined;
campaign: string | undefined;
campaign_id: string | undefined;
category: string | undefined;
category_id: string | undefined;
type: (keyof typeof RedemptionVoucher.TypeEnum) | undefined;
discount: Discount | undefined;
gift: RedemptionVoucherGift | undefined;
loyalty_card: RedemptionVoucherLoyaltyCard | undefined;
start_date: Date | undefined;
expiration_date: Date | undefined;
validity_timeframe: ValidityTimeframe | undefined;
validity_day_of_week: (Array) | undefined;
validity_hours: ValidityHours | undefined;
active: boolean | undefined;
additional_info: string | undefined;
metadata: any | undefined;
assets: VoucherAssets | undefined;
is_referral_code: boolean | undefined;
created_at: Date | undefined;
updated_at: Date | undefined;
holder_id: string | undefined;
referrer_id: string | undefined;
object: string | undefined;
publish: RedemptionVoucherPublish | undefined;
redemption: RedemptionVoucherRedemption | undefined;
categories: Array | undefined;
validation_rules_assignments: ValidationRulesAssignmentsList | undefined;
holder: SimpleCustomer | undefined;
}
declare namespace RedemptionVoucher {
namespace TypeEnum {
let GIFT_VOUCHER: string;
let DISCOUNT_VOUCHER: string;
let LOYALTY_CARD: string;
}
let ValidityDayOfWeekEnum: {
/**
* value: 0
* @constant
*/
"0": number;
/**
* value: 1
* @constant
*/
"1": number;
/**
* value: 2
* @constant
*/
"2": number;
/**
* value: 3
* @constant
*/
"3": number;
/**
* value: 4
* @constant
*/
"4": number;
/**
* value: 5
* @constant
*/
"5": number;
/**
* value: 6
* @constant
*/
"6": number;
};
}
import Discount from './Discount';
import RedemptionVoucherGift from './RedemptionVoucherGift';
import RedemptionVoucherLoyaltyCard from './RedemptionVoucherLoyaltyCard';
import ValidityTimeframe from './ValidityTimeframe';
import ValidityHours from './ValidityHours';
import VoucherAssets from './VoucherAssets';
import RedemptionVoucherPublish from './RedemptionVoucherPublish';
import RedemptionVoucherRedemption from './RedemptionVoucherRedemption';
import CategoryWithStackingRulesType from './CategoryWithStackingRulesType';
import ValidationRulesAssignmentsList from './ValidationRulesAssignmentsList';
import SimpleCustomer from './SimpleCustomer';