export default ManagementProjectsStackingRulesUpdateRequestBody;
/**
* The ManagementProjectsStackingRulesUpdateRequestBody model module.
* @module model/ManagementProjectsStackingRulesUpdateRequestBody
*/
declare class ManagementProjectsStackingRulesUpdateRequestBody {
/**
* 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 ManagementProjectsStackingRulesUpdateRequestBody 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 {ManagementProjectsStackingRulesUpdateRequestBody} [obj] Optional instance to populate.
* @returns {ManagementProjectsStackingRulesUpdateRequestBody} The populated ManagementProjectsStackingRulesUpdateRequestBody instance.
*/
static constructFromObject(data: Partial, obj?: ManagementProjectsStackingRulesUpdateRequestBody): ManagementProjectsStackingRulesUpdateRequestBody;
/**
* Validates the JSON data with respect to ManagementProjectsStackingRulesUpdateRequestBody.
* @param {Partial} data The plain JavaScript object bearing properties of interest.
* @returns {boolean} to indicate whether the JSON data is valid with respect to ManagementProjectsStackingRulesUpdateRequestBody.
*/
static validateJSON(data: Partial): boolean;
exclusive_categories: Array | undefined;
joint_categories: Array | undefined;
redeemables_limit: number | undefined;
applicable_redeemables_limit: number | undefined;
applicable_redeemables_per_category_limit: number | undefined;
applicable_redeemables_category_limits: any | undefined;
applicable_exclusive_redeemables_limit: number | undefined;
applicable_exclusive_redeemables_per_category_limit: number | undefined;
discount_calculation_mode: (keyof typeof ManagementProjectsStackingRulesUpdateRequestBody.DiscountCalculationModeEnum) | undefined;
initial_amount_mode_categories: Array | undefined;
discounted_amount_mode_categories: Array | undefined;
redeemables_application_mode: (keyof typeof ManagementProjectsStackingRulesUpdateRequestBody.RedeemablesApplicationModeEnum) | undefined;
redeemables_sorting_rule: (keyof typeof ManagementProjectsStackingRulesUpdateRequestBody.RedeemablesSortingRuleEnum) | undefined;
redeemables_products_application_mode: (keyof typeof ManagementProjectsStackingRulesUpdateRequestBody.RedeemablesProductsApplicationModeEnum) | undefined;
redeemables_no_effect_rule: (keyof typeof ManagementProjectsStackingRulesUpdateRequestBody.RedeemablesNoEffectRuleEnum) | undefined;
no_effect_skip_categories: Array | undefined;
no_effect_redeem_anyway_categories: Array | undefined;
redeemables_rollback_order_mode: (keyof typeof ManagementProjectsStackingRulesUpdateRequestBody.RedeemablesRollbackOrderModeEnum) | undefined;
}
declare namespace ManagementProjectsStackingRulesUpdateRequestBody {
namespace DiscountCalculationModeEnum {
let INITIAL_AMOUNT: string;
let DISCOUNTED_AMOUNT: string;
}
namespace RedeemablesApplicationModeEnum {
let ALL: string;
let PARTIAL: string;
}
namespace RedeemablesSortingRuleEnum {
let CATEGORY_HIERARCHY: string;
let REQUESTED_ORDER: string;
}
namespace RedeemablesProductsApplicationModeEnum {
let STACK: string;
let ONCE: string;
}
namespace RedeemablesNoEffectRuleEnum {
let REDEEM_ANYWAY: string;
let SKIP: string;
}
namespace RedeemablesRollbackOrderModeEnum {
let WITH_ORDER: string;
let WITHOUT_ORDER: string;
}
}