export default LoyaltiesExamineEarningRulesExamineRequestBody; /** * The LoyaltiesExamineEarningRulesExamineRequestBody model module. * @module model/LoyaltiesExamineEarningRulesExamineRequestBody */ declare class LoyaltiesExamineEarningRulesExamineRequestBody { /** * 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, trigger: any, customerIdentification: any): void; /** * Constructs a LoyaltiesExamineEarningRulesExamineRequestBody 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 {LoyaltiesExamineEarningRulesExamineRequestBody} [obj] Optional instance to populate. * @returns {LoyaltiesExamineEarningRulesExamineRequestBody} The populated LoyaltiesExamineEarningRulesExamineRequestBody instance. */ static constructFromObject(data: Partial, obj?: LoyaltiesExamineEarningRulesExamineRequestBody): LoyaltiesExamineEarningRulesExamineRequestBody; /** * Validates the JSON data with respect to LoyaltiesExamineEarningRulesExamineRequestBody. * @param {Partial} data The plain JavaScript object bearing properties of interest. * @returns {boolean} to indicate whether the JSON data is valid with respect to LoyaltiesExamineEarningRulesExamineRequestBody. */ static validateJSON(data: Partial): boolean; /** * Constructs a new LoyaltiesExamineEarningRulesExamineRequestBody. * Request body schema for **POST** `/v2/loyalties/examine/earning-rules`. When `trigger.type` is `SPECIFIC`, the context object matching the specific event is required and the other context objects must not be present: `customer.order.paid` > `customer_order_paid`, `customer.segment.entered` > `customer_segment_entered`, `customer.custom_event` > `customer_custom_event`. The API validates field combinations that this schema does not express. * @alias LoyaltiesExamineEarningRulesExamineRequestBody * @param {LoyaltiesExamineEarningRulesExamineRequestBodyTrigger} trigger * @param {ExamineCustomerIdentification} customerIdentification */ constructor(trigger: LoyaltiesExamineEarningRulesExamineRequestBodyTrigger, customerIdentification: ExamineCustomerIdentification); trigger: LoyaltiesExamineEarningRulesExamineRequestBodyTrigger; customer_identification: ExamineCustomerIdentification; customer_order_paid: LoyaltiesExamineEarningRulesExamineRequestBodyCustomerOrderPaid | undefined; customer_segment_entered: LoyaltiesExamineEarningRulesExamineRequestBodyCustomerSegmentEntered | undefined; customer_custom_event: LoyaltiesExamineEarningRulesExamineRequestBodyCustomerCustomEvent | undefined; } declare namespace LoyaltiesExamineEarningRulesExamineRequestBody { let RequiredProperties: string[]; } import LoyaltiesExamineEarningRulesExamineRequestBodyTrigger from './LoyaltiesExamineEarningRulesExamineRequestBodyTrigger'; import ExamineCustomerIdentification from './ExamineCustomerIdentification'; import LoyaltiesExamineEarningRulesExamineRequestBodyCustomerOrderPaid from './LoyaltiesExamineEarningRulesExamineRequestBodyCustomerOrderPaid'; import LoyaltiesExamineEarningRulesExamineRequestBodyCustomerSegmentEntered from './LoyaltiesExamineEarningRulesExamineRequestBodyCustomerSegmentEntered'; import LoyaltiesExamineEarningRulesExamineRequestBodyCustomerCustomEvent from './LoyaltiesExamineEarningRulesExamineRequestBodyCustomerCustomEvent';