export default RedemptionRollback;
/**
* The RedemptionRollback model module.
* @module model/RedemptionRollback
*/
declare class RedemptionRollback {
/**
* 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 RedemptionRollback 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 {RedemptionRollback} [obj] Optional instance to populate.
* @returns {RedemptionRollback} The populated RedemptionRollback instance.
*/
static constructFromObject(data: Partial, obj?: RedemptionRollback): RedemptionRollback;
/**
* Validates the JSON data with respect to RedemptionRollback.
* @param {Partial} data The plain JavaScript object bearing properties of interest.
* @returns {boolean} to indicate whether the JSON data is valid with respect to RedemptionRollback.
*/
static validateJSON(data: Partial): boolean;
id: string | undefined;
object: (keyof typeof RedemptionRollback.ObjectEnum) | undefined;
date: Date | undefined;
customer_id: string | undefined;
tracking_id: string | undefined;
metadata: any | undefined;
amount: number | undefined;
redemption: string | undefined;
reason: string | undefined;
result: (keyof typeof RedemptionRollback.ResultEnum) | undefined;
status: (keyof typeof RedemptionRollback.StatusEnum) | undefined;
failure_code: string | undefined;
failure_message: string | undefined;
order: RedemptionRollbackOrder | undefined;
channel: RedemptionRollbackChannel | undefined;
customer: SimpleCustomer | undefined;
related_object_type: (keyof typeof RedemptionRollback.RelatedObjectTypeEnum) | undefined;
related_object_id: string | undefined;
voucher: Voucher | undefined;
promotion_tier: PromotionTier | undefined;
reward: RedemptionRewardResult | undefined;
gift: RedemptionRollbackGift | undefined;
loyalty_card: RedemptionRollbackLoyaltyCard | undefined;
}
declare namespace RedemptionRollback {
namespace ObjectEnum {
let redemption_rollback: string;
}
namespace ResultEnum {
let SUCCESS: string;
let FAILURE: string;
}
namespace StatusEnum {
let SUCCEEDED: string;
let FAILED: string;
}
namespace RelatedObjectTypeEnum {
let voucher: string;
let promotion_tier: string;
let redemption: string;
}
}
import RedemptionRollbackOrder from './RedemptionRollbackOrder';
import RedemptionRollbackChannel from './RedemptionRollbackChannel';
import SimpleCustomer from './SimpleCustomer';
import Voucher from './Voucher';
import PromotionTier from './PromotionTier';
import RedemptionRewardResult from './RedemptionRewardResult';
import RedemptionRollbackGift from './RedemptionRollbackGift';
import RedemptionRollbackLoyaltyCard from './RedemptionRollbackLoyaltyCard';