export default V2LoyaltiesEarningRulesGetResponseBody;
/**
* The V2LoyaltiesEarningRulesGetResponseBody model module.
* @module model/V2LoyaltiesEarningRulesGetResponseBody
*/
declare class V2LoyaltiesEarningRulesGetResponseBody {
/**
* 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, validityHours: any, earningLimits: any, metadata: any): void;
/**
* Constructs a V2LoyaltiesEarningRulesGetResponseBody 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 {V2LoyaltiesEarningRulesGetResponseBody} [obj] Optional instance to populate.
* @returns {V2LoyaltiesEarningRulesGetResponseBody} The populated V2LoyaltiesEarningRulesGetResponseBody instance.
*/
static constructFromObject(data: Partial, obj?: V2LoyaltiesEarningRulesGetResponseBody): V2LoyaltiesEarningRulesGetResponseBody;
/**
* Validates the JSON data with respect to V2LoyaltiesEarningRulesGetResponseBody.
* @param {Partial} data The plain JavaScript object bearing properties of interest.
* @returns {boolean} to indicate whether the JSON data is valid with respect to V2LoyaltiesEarningRulesGetResponseBody.
*/
static validateJSON(data: Partial): boolean;
/**
* Constructs a new V2LoyaltiesEarningRulesGetResponseBody.
* Response body schema for **GET** `/v2/loyalties/earning-rules/{earningRuleId}`.
* @alias V2LoyaltiesEarningRulesGetResponseBody
* @param {EarningRuleTrigger} trigger
* @param {EarningRuleValidityHours} validityHours
* @param {LoyaltyV2ActivityEarningRuleEarningLimits} earningLimits
* @param {Object.} metadata Arbitrary key-value metadata; any JSON object is accepted.
*/
constructor(trigger: EarningRuleTrigger, validityHours: EarningRuleValidityHours, earningLimits: LoyaltyV2ActivityEarningRuleEarningLimits, metadata: any);
id: string | undefined;
name: string | undefined;
status: (keyof typeof V2LoyaltiesEarningRulesGetResponseBody.StatusEnum) | undefined;
earnings: Array | undefined;
trigger: EarningRuleTrigger;
error: LoyaltyV2ActivityEarningRuleError | undefined;
validity_hours: EarningRuleValidityHours;
start_date: Date | undefined;
end_date: Date | undefined;
trigger_limits: V2LoyaltiesEarningRulesGetResponseBodyTriggerLimits | undefined;
earning_limits: LoyaltyV2ActivityEarningRuleEarningLimits;
metadata: any;
created_at: Date | undefined;
updated_at: Date | undefined;
object: (keyof typeof V2LoyaltiesEarningRulesGetResponseBody.ObjectEnum) | undefined;
}
declare namespace V2LoyaltiesEarningRulesGetResponseBody {
let RequiredProperties: string[];
namespace StatusEnum {
let DRAFT: string;
let ACTIVE: string;
let INACTIVE: string;
}
namespace ObjectEnum {
let earning_rule: string;
}
}
import EarningRuleEarning from './EarningRuleEarning';
import EarningRuleTrigger from './EarningRuleTrigger';
import LoyaltyV2ActivityEarningRuleError from './LoyaltyV2ActivityEarningRuleError';
import EarningRuleValidityHours from './EarningRuleValidityHours';
import V2LoyaltiesEarningRulesGetResponseBodyTriggerLimits from './V2LoyaltiesEarningRulesGetResponseBodyTriggerLimits';
import LoyaltyV2ActivityEarningRuleEarningLimits from './LoyaltyV2ActivityEarningRuleEarningLimits';