@commercelayer/sdk 5.14.0 → 5.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/api.d.ts +10 -7
- package/lib/cjs/api.js +12 -3
- package/lib/cjs/commercelayer.d.ts +5 -2
- package/lib/cjs/commercelayer.js +4 -1
- package/lib/cjs/model.d.ts +3 -0
- package/lib/cjs/resources/buy_x_pay_y_promotions.d.ts +137 -0
- package/lib/cjs/resources/buy_x_pay_y_promotions.js +75 -0
- package/lib/cjs/resources/coupon_codes_promotion_rules.d.ts +7 -3
- package/lib/cjs/resources/coupons.d.ts +3 -0
- package/lib/cjs/resources/custom_promotion_rules.d.ts +62 -0
- package/lib/cjs/resources/custom_promotion_rules.js +29 -0
- package/lib/cjs/resources/external_promotions.d.ts +20 -1
- package/lib/cjs/resources/external_promotions.js +10 -0
- package/lib/cjs/resources/fixed_amount_promotions.d.ts +20 -1
- package/lib/cjs/resources/fixed_amount_promotions.js +10 -0
- package/lib/cjs/resources/fixed_price_promotions.d.ts +11 -0
- package/lib/cjs/resources/fixed_price_promotions.js +6 -0
- package/lib/cjs/resources/free_gift_promotions.d.ts +11 -0
- package/lib/cjs/resources/free_gift_promotions.js +6 -0
- package/lib/cjs/resources/free_shipping_promotions.d.ts +11 -0
- package/lib/cjs/resources/free_shipping_promotions.js +6 -0
- package/lib/cjs/resources/line_items.d.ts +1 -0
- package/lib/cjs/resources/order_amount_promotion_rules.d.ts +7 -3
- package/lib/cjs/resources/orders.d.ts +24 -0
- package/lib/cjs/resources/orders.js +20 -0
- package/lib/cjs/resources/payment_methods.d.ts +3 -3
- package/lib/cjs/resources/payment_options.d.ts +44 -0
- package/lib/cjs/resources/payment_options.js +33 -0
- package/lib/cjs/resources/percentage_discount_promotions.d.ts +11 -0
- package/lib/cjs/resources/percentage_discount_promotions.js +6 -0
- package/lib/cjs/resources/promotion_rules.d.ts +2 -1
- package/lib/cjs/resources/promotions.d.ts +3 -0
- package/lib/cjs/resources/sku_list_promotion_rules.d.ts +7 -3
- package/lib/esm/api.d.ts +10 -7
- package/lib/esm/api.js +6 -0
- package/lib/esm/commercelayer.d.ts +5 -2
- package/lib/esm/commercelayer.js +4 -1
- package/lib/esm/model.d.ts +3 -0
- package/lib/esm/resources/buy_x_pay_y_promotions.d.ts +137 -0
- package/lib/esm/resources/buy_x_pay_y_promotions.js +73 -0
- package/lib/esm/resources/coupon_codes_promotion_rules.d.ts +7 -3
- package/lib/esm/resources/coupons.d.ts +3 -0
- package/lib/esm/resources/custom_promotion_rules.d.ts +62 -0
- package/lib/esm/resources/custom_promotion_rules.js +27 -0
- package/lib/esm/resources/external_promotions.d.ts +20 -1
- package/lib/esm/resources/external_promotions.js +10 -0
- package/lib/esm/resources/fixed_amount_promotions.d.ts +20 -1
- package/lib/esm/resources/fixed_amount_promotions.js +10 -0
- package/lib/esm/resources/fixed_price_promotions.d.ts +11 -0
- package/lib/esm/resources/fixed_price_promotions.js +6 -0
- package/lib/esm/resources/free_gift_promotions.d.ts +11 -0
- package/lib/esm/resources/free_gift_promotions.js +6 -0
- package/lib/esm/resources/free_shipping_promotions.d.ts +11 -0
- package/lib/esm/resources/free_shipping_promotions.js +6 -0
- package/lib/esm/resources/line_items.d.ts +1 -0
- package/lib/esm/resources/order_amount_promotion_rules.d.ts +7 -3
- package/lib/esm/resources/orders.d.ts +24 -0
- package/lib/esm/resources/orders.js +20 -0
- package/lib/esm/resources/payment_methods.d.ts +3 -3
- package/lib/esm/resources/payment_options.d.ts +44 -0
- package/lib/esm/resources/payment_options.js +31 -0
- package/lib/esm/resources/percentage_discount_promotions.d.ts +11 -0
- package/lib/esm/resources/percentage_discount_promotions.js +6 -0
- package/lib/esm/resources/promotion_rules.d.ts +2 -1
- package/lib/esm/resources/promotions.d.ts +3 -0
- package/lib/esm/resources/sku_list_promotion_rules.d.ts +7 -3
- package/lib/tsconfig.esm.tsbuildinfo +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +11 -11
@@ -0,0 +1,137 @@
|
|
1
|
+
import { ApiResource } from '../resource';
|
2
|
+
import type { Resource, ResourceCreate, ResourceUpdate, ResourceId, ResourcesConfig, ResourceRel, ListResponse } from '../resource';
|
3
|
+
import type { QueryParamsRetrieve, QueryParamsList } from '../query';
|
4
|
+
import type { Market, MarketType } from './markets';
|
5
|
+
import type { PromotionRule, PromotionRuleType } from './promotion_rules';
|
6
|
+
import type { OrderAmountPromotionRule, OrderAmountPromotionRuleType } from './order_amount_promotion_rules';
|
7
|
+
import type { SkuListPromotionRule, SkuListPromotionRuleType } from './sku_list_promotion_rules';
|
8
|
+
import type { CouponCodesPromotionRule, CouponCodesPromotionRuleType } from './coupon_codes_promotion_rules';
|
9
|
+
import type { Coupon, CouponType } from './coupons';
|
10
|
+
import type { SkuList, SkuListType } from './sku_lists';
|
11
|
+
import type { Attachment } from './attachments';
|
12
|
+
import type { Event } from './events';
|
13
|
+
import type { Tag, TagType } from './tags';
|
14
|
+
import type { Version } from './versions';
|
15
|
+
import type { Sku } from './skus';
|
16
|
+
type BuyXPayYPromotionType = 'buy_x_pay_y_promotions';
|
17
|
+
type BuyXPayYPromotionRel = ResourceRel & {
|
18
|
+
type: BuyXPayYPromotionType;
|
19
|
+
};
|
20
|
+
type MarketRel = ResourceRel & {
|
21
|
+
type: MarketType;
|
22
|
+
};
|
23
|
+
type PromotionRuleRel = ResourceRel & {
|
24
|
+
type: PromotionRuleType;
|
25
|
+
};
|
26
|
+
type OrderAmountPromotionRuleRel = ResourceRel & {
|
27
|
+
type: OrderAmountPromotionRuleType;
|
28
|
+
};
|
29
|
+
type SkuListPromotionRuleRel = ResourceRel & {
|
30
|
+
type: SkuListPromotionRuleType;
|
31
|
+
};
|
32
|
+
type CouponCodesPromotionRuleRel = ResourceRel & {
|
33
|
+
type: CouponCodesPromotionRuleType;
|
34
|
+
};
|
35
|
+
type CouponRel = ResourceRel & {
|
36
|
+
type: CouponType;
|
37
|
+
};
|
38
|
+
type SkuListRel = ResourceRel & {
|
39
|
+
type: SkuListType;
|
40
|
+
};
|
41
|
+
type TagRel = ResourceRel & {
|
42
|
+
type: TagType;
|
43
|
+
};
|
44
|
+
interface BuyXPayYPromotion extends Resource {
|
45
|
+
readonly type: BuyXPayYPromotionType;
|
46
|
+
name: string;
|
47
|
+
currency_code?: string | null;
|
48
|
+
exclusive?: boolean | null;
|
49
|
+
priority?: number | null;
|
50
|
+
starts_at: string;
|
51
|
+
expires_at: string;
|
52
|
+
total_usage_limit: number;
|
53
|
+
total_usage_count?: number | null;
|
54
|
+
active?: boolean | null;
|
55
|
+
disabled_at?: string | null;
|
56
|
+
x: number;
|
57
|
+
y: number;
|
58
|
+
cheapest_free?: boolean | null;
|
59
|
+
market?: Market | null;
|
60
|
+
promotion_rules?: PromotionRule[] | null;
|
61
|
+
order_amount_promotion_rule?: OrderAmountPromotionRule | null;
|
62
|
+
sku_list_promotion_rule?: SkuListPromotionRule | null;
|
63
|
+
coupon_codes_promotion_rule?: CouponCodesPromotionRule | null;
|
64
|
+
coupons?: Coupon[] | null;
|
65
|
+
sku_list?: SkuList | null;
|
66
|
+
attachments?: Attachment[] | null;
|
67
|
+
events?: Event[] | null;
|
68
|
+
tags?: Tag[] | null;
|
69
|
+
versions?: Version[] | null;
|
70
|
+
skus?: Sku[] | null;
|
71
|
+
}
|
72
|
+
interface BuyXPayYPromotionCreate extends ResourceCreate {
|
73
|
+
name: string;
|
74
|
+
currency_code?: string | null;
|
75
|
+
exclusive?: boolean | null;
|
76
|
+
priority?: number | null;
|
77
|
+
starts_at: string;
|
78
|
+
expires_at: string;
|
79
|
+
total_usage_limit: number;
|
80
|
+
x: number;
|
81
|
+
y: number;
|
82
|
+
cheapest_free?: boolean | null;
|
83
|
+
market?: MarketRel | null;
|
84
|
+
promotion_rules?: PromotionRuleRel[] | null;
|
85
|
+
order_amount_promotion_rule?: OrderAmountPromotionRuleRel | null;
|
86
|
+
sku_list_promotion_rule?: SkuListPromotionRuleRel | null;
|
87
|
+
coupon_codes_promotion_rule?: CouponCodesPromotionRuleRel | null;
|
88
|
+
coupons?: CouponRel[] | null;
|
89
|
+
sku_list: SkuListRel;
|
90
|
+
tags?: TagRel[] | null;
|
91
|
+
}
|
92
|
+
interface BuyXPayYPromotionUpdate extends ResourceUpdate {
|
93
|
+
name?: string | null;
|
94
|
+
currency_code?: string | null;
|
95
|
+
exclusive?: boolean | null;
|
96
|
+
priority?: number | null;
|
97
|
+
starts_at?: string | null;
|
98
|
+
expires_at?: string | null;
|
99
|
+
total_usage_limit?: number | null;
|
100
|
+
_disable?: boolean | null;
|
101
|
+
_enable?: boolean | null;
|
102
|
+
x?: number | null;
|
103
|
+
y?: number | null;
|
104
|
+
cheapest_free?: boolean | null;
|
105
|
+
market?: MarketRel | null;
|
106
|
+
promotion_rules?: PromotionRuleRel[] | null;
|
107
|
+
order_amount_promotion_rule?: OrderAmountPromotionRuleRel | null;
|
108
|
+
sku_list_promotion_rule?: SkuListPromotionRuleRel | null;
|
109
|
+
coupon_codes_promotion_rule?: CouponCodesPromotionRuleRel | null;
|
110
|
+
coupons?: CouponRel[] | null;
|
111
|
+
sku_list?: SkuListRel | null;
|
112
|
+
tags?: TagRel[] | null;
|
113
|
+
}
|
114
|
+
declare class BuyXPayYPromotions extends ApiResource<BuyXPayYPromotion> {
|
115
|
+
static readonly TYPE: BuyXPayYPromotionType;
|
116
|
+
create(resource: BuyXPayYPromotionCreate, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<BuyXPayYPromotion>;
|
117
|
+
update(resource: BuyXPayYPromotionUpdate, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<BuyXPayYPromotion>;
|
118
|
+
delete(id: string | ResourceId, options?: ResourcesConfig): Promise<void>;
|
119
|
+
market(buyXPayYPromotionId: string | BuyXPayYPromotion, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<Market>;
|
120
|
+
order_amount_promotion_rule(buyXPayYPromotionId: string | BuyXPayYPromotion, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<OrderAmountPromotionRule>;
|
121
|
+
sku_list_promotion_rule(buyXPayYPromotionId: string | BuyXPayYPromotion, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<SkuListPromotionRule>;
|
122
|
+
coupon_codes_promotion_rule(buyXPayYPromotionId: string | BuyXPayYPromotion, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<CouponCodesPromotionRule>;
|
123
|
+
coupons(buyXPayYPromotionId: string | BuyXPayYPromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Coupon>>;
|
124
|
+
sku_list(buyXPayYPromotionId: string | BuyXPayYPromotion, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<SkuList>;
|
125
|
+
attachments(buyXPayYPromotionId: string | BuyXPayYPromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Attachment>>;
|
126
|
+
events(buyXPayYPromotionId: string | BuyXPayYPromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Event>>;
|
127
|
+
tags(buyXPayYPromotionId: string | BuyXPayYPromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Tag>>;
|
128
|
+
versions(buyXPayYPromotionId: string | BuyXPayYPromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Version>>;
|
129
|
+
skus(buyXPayYPromotionId: string | BuyXPayYPromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Sku>>;
|
130
|
+
_disable(id: string | BuyXPayYPromotion, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<BuyXPayYPromotion>;
|
131
|
+
_enable(id: string | BuyXPayYPromotion, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<BuyXPayYPromotion>;
|
132
|
+
isBuyXPayYPromotion(resource: any): resource is BuyXPayYPromotion;
|
133
|
+
relationship(id: string | ResourceId | null): BuyXPayYPromotionRel;
|
134
|
+
type(): BuyXPayYPromotionType;
|
135
|
+
}
|
136
|
+
export default BuyXPayYPromotions;
|
137
|
+
export type { BuyXPayYPromotion, BuyXPayYPromotionCreate, BuyXPayYPromotionUpdate, BuyXPayYPromotionType };
|
@@ -0,0 +1,73 @@
|
|
1
|
+
import { ApiResource } from '../resource';
|
2
|
+
class BuyXPayYPromotions extends ApiResource {
|
3
|
+
async create(resource, params, options) {
|
4
|
+
return this.resources.create({ ...resource, type: BuyXPayYPromotions.TYPE }, params, options);
|
5
|
+
}
|
6
|
+
async update(resource, params, options) {
|
7
|
+
return this.resources.update({ ...resource, type: BuyXPayYPromotions.TYPE }, params, options);
|
8
|
+
}
|
9
|
+
async delete(id, options) {
|
10
|
+
await this.resources.delete((typeof id === 'string') ? { id, type: BuyXPayYPromotions.TYPE } : id, options);
|
11
|
+
}
|
12
|
+
async market(buyXPayYPromotionId, params, options) {
|
13
|
+
const _buyXPayYPromotionId = buyXPayYPromotionId.id || buyXPayYPromotionId;
|
14
|
+
return this.resources.fetch({ type: 'markets' }, `buy_x_pay_y_promotions/${_buyXPayYPromotionId}/market`, params, options);
|
15
|
+
}
|
16
|
+
async order_amount_promotion_rule(buyXPayYPromotionId, params, options) {
|
17
|
+
const _buyXPayYPromotionId = buyXPayYPromotionId.id || buyXPayYPromotionId;
|
18
|
+
return this.resources.fetch({ type: 'order_amount_promotion_rules' }, `buy_x_pay_y_promotions/${_buyXPayYPromotionId}/order_amount_promotion_rule`, params, options);
|
19
|
+
}
|
20
|
+
async sku_list_promotion_rule(buyXPayYPromotionId, params, options) {
|
21
|
+
const _buyXPayYPromotionId = buyXPayYPromotionId.id || buyXPayYPromotionId;
|
22
|
+
return this.resources.fetch({ type: 'sku_list_promotion_rules' }, `buy_x_pay_y_promotions/${_buyXPayYPromotionId}/sku_list_promotion_rule`, params, options);
|
23
|
+
}
|
24
|
+
async coupon_codes_promotion_rule(buyXPayYPromotionId, params, options) {
|
25
|
+
const _buyXPayYPromotionId = buyXPayYPromotionId.id || buyXPayYPromotionId;
|
26
|
+
return this.resources.fetch({ type: 'coupon_codes_promotion_rules' }, `buy_x_pay_y_promotions/${_buyXPayYPromotionId}/coupon_codes_promotion_rule`, params, options);
|
27
|
+
}
|
28
|
+
async coupons(buyXPayYPromotionId, params, options) {
|
29
|
+
const _buyXPayYPromotionId = buyXPayYPromotionId.id || buyXPayYPromotionId;
|
30
|
+
return this.resources.fetch({ type: 'coupons' }, `buy_x_pay_y_promotions/${_buyXPayYPromotionId}/coupons`, params, options);
|
31
|
+
}
|
32
|
+
async sku_list(buyXPayYPromotionId, params, options) {
|
33
|
+
const _buyXPayYPromotionId = buyXPayYPromotionId.id || buyXPayYPromotionId;
|
34
|
+
return this.resources.fetch({ type: 'sku_lists' }, `buy_x_pay_y_promotions/${_buyXPayYPromotionId}/sku_list`, params, options);
|
35
|
+
}
|
36
|
+
async attachments(buyXPayYPromotionId, params, options) {
|
37
|
+
const _buyXPayYPromotionId = buyXPayYPromotionId.id || buyXPayYPromotionId;
|
38
|
+
return this.resources.fetch({ type: 'attachments' }, `buy_x_pay_y_promotions/${_buyXPayYPromotionId}/attachments`, params, options);
|
39
|
+
}
|
40
|
+
async events(buyXPayYPromotionId, params, options) {
|
41
|
+
const _buyXPayYPromotionId = buyXPayYPromotionId.id || buyXPayYPromotionId;
|
42
|
+
return this.resources.fetch({ type: 'events' }, `buy_x_pay_y_promotions/${_buyXPayYPromotionId}/events`, params, options);
|
43
|
+
}
|
44
|
+
async tags(buyXPayYPromotionId, params, options) {
|
45
|
+
const _buyXPayYPromotionId = buyXPayYPromotionId.id || buyXPayYPromotionId;
|
46
|
+
return this.resources.fetch({ type: 'tags' }, `buy_x_pay_y_promotions/${_buyXPayYPromotionId}/tags`, params, options);
|
47
|
+
}
|
48
|
+
async versions(buyXPayYPromotionId, params, options) {
|
49
|
+
const _buyXPayYPromotionId = buyXPayYPromotionId.id || buyXPayYPromotionId;
|
50
|
+
return this.resources.fetch({ type: 'versions' }, `buy_x_pay_y_promotions/${_buyXPayYPromotionId}/versions`, params, options);
|
51
|
+
}
|
52
|
+
async skus(buyXPayYPromotionId, params, options) {
|
53
|
+
const _buyXPayYPromotionId = buyXPayYPromotionId.id || buyXPayYPromotionId;
|
54
|
+
return this.resources.fetch({ type: 'skus' }, `buy_x_pay_y_promotions/${_buyXPayYPromotionId}/skus`, params, options);
|
55
|
+
}
|
56
|
+
async _disable(id, params, options) {
|
57
|
+
return this.resources.update({ id: (typeof id === 'string') ? id : id.id, type: BuyXPayYPromotions.TYPE, _disable: true }, params, options);
|
58
|
+
}
|
59
|
+
async _enable(id, params, options) {
|
60
|
+
return this.resources.update({ id: (typeof id === 'string') ? id : id.id, type: BuyXPayYPromotions.TYPE, _enable: true }, params, options);
|
61
|
+
}
|
62
|
+
isBuyXPayYPromotion(resource) {
|
63
|
+
return resource.type && (resource.type === BuyXPayYPromotions.TYPE);
|
64
|
+
}
|
65
|
+
relationship(id) {
|
66
|
+
return ((id === null) || (typeof id === 'string')) ? { id, type: BuyXPayYPromotions.TYPE } : { id: id.id, type: BuyXPayYPromotions.TYPE };
|
67
|
+
}
|
68
|
+
type() {
|
69
|
+
return BuyXPayYPromotions.TYPE;
|
70
|
+
}
|
71
|
+
}
|
72
|
+
BuyXPayYPromotions.TYPE = 'buy_x_pay_y_promotions';
|
73
|
+
export default BuyXPayYPromotions;
|
@@ -3,6 +3,7 @@ import type { Resource, ResourceCreate, ResourceUpdate, ResourceId, ResourcesCon
|
|
3
3
|
import type { QueryParamsRetrieve, QueryParamsList } from '../query';
|
4
4
|
import type { PercentageDiscountPromotion, PercentageDiscountPromotionType } from './percentage_discount_promotions';
|
5
5
|
import type { FreeShippingPromotion, FreeShippingPromotionType } from './free_shipping_promotions';
|
6
|
+
import type { BuyXPayYPromotion, BuyXPayYPromotionType } from './buy_x_pay_y_promotions';
|
6
7
|
import type { FreeGiftPromotion, FreeGiftPromotionType } from './free_gift_promotions';
|
7
8
|
import type { FixedPricePromotion, FixedPricePromotionType } from './fixed_price_promotions';
|
8
9
|
import type { ExternalPromotion, ExternalPromotionType } from './external_promotions';
|
@@ -19,6 +20,9 @@ type PercentageDiscountPromotionRel = ResourceRel & {
|
|
19
20
|
type FreeShippingPromotionRel = ResourceRel & {
|
20
21
|
type: FreeShippingPromotionType;
|
21
22
|
};
|
23
|
+
type BuyXPayYPromotionRel = ResourceRel & {
|
24
|
+
type: BuyXPayYPromotionType;
|
25
|
+
};
|
22
26
|
type FreeGiftPromotionRel = ResourceRel & {
|
23
27
|
type: FreeGiftPromotionType;
|
24
28
|
};
|
@@ -36,16 +40,16 @@ type CouponRel = ResourceRel & {
|
|
36
40
|
};
|
37
41
|
interface CouponCodesPromotionRule extends Resource {
|
38
42
|
readonly type: CouponCodesPromotionRuleType;
|
39
|
-
promotion?: PercentageDiscountPromotion | FreeShippingPromotion | FreeGiftPromotion | FixedPricePromotion | ExternalPromotion | FixedAmountPromotion | null;
|
43
|
+
promotion?: PercentageDiscountPromotion | FreeShippingPromotion | BuyXPayYPromotion | FreeGiftPromotion | FixedPricePromotion | ExternalPromotion | FixedAmountPromotion | null;
|
40
44
|
versions?: Version[] | null;
|
41
45
|
coupons?: Coupon[] | null;
|
42
46
|
}
|
43
47
|
interface CouponCodesPromotionRuleCreate extends ResourceCreate {
|
44
|
-
promotion: PercentageDiscountPromotionRel | FreeShippingPromotionRel | FreeGiftPromotionRel | FixedPricePromotionRel | ExternalPromotionRel | FixedAmountPromotionRel;
|
48
|
+
promotion: PercentageDiscountPromotionRel | FreeShippingPromotionRel | BuyXPayYPromotionRel | FreeGiftPromotionRel | FixedPricePromotionRel | ExternalPromotionRel | FixedAmountPromotionRel;
|
45
49
|
coupons?: CouponRel[] | null;
|
46
50
|
}
|
47
51
|
interface CouponCodesPromotionRuleUpdate extends ResourceUpdate {
|
48
|
-
promotion?: PercentageDiscountPromotionRel | FreeShippingPromotionRel | FreeGiftPromotionRel | FixedPricePromotionRel | ExternalPromotionRel | FixedAmountPromotionRel | null;
|
52
|
+
promotion?: PercentageDiscountPromotionRel | FreeShippingPromotionRel | BuyXPayYPromotionRel | FreeGiftPromotionRel | FixedPricePromotionRel | ExternalPromotionRel | FixedAmountPromotionRel | null;
|
49
53
|
coupons?: CouponRel[] | null;
|
50
54
|
}
|
51
55
|
declare class CouponCodesPromotionRules extends ApiResource<CouponCodesPromotionRule> {
|
@@ -26,6 +26,7 @@ interface Coupon extends Resource {
|
|
26
26
|
usage_limit?: number | null;
|
27
27
|
usage_count?: number | null;
|
28
28
|
recipient_email?: string | null;
|
29
|
+
expires_at?: string | null;
|
29
30
|
promotion_rule?: CouponCodesPromotionRule | null;
|
30
31
|
coupon_recipient?: CouponRecipient | null;
|
31
32
|
events?: Event[] | null;
|
@@ -37,6 +38,7 @@ interface CouponCreate extends ResourceCreate {
|
|
37
38
|
customer_single_use?: boolean | null;
|
38
39
|
usage_limit?: number | null;
|
39
40
|
recipient_email?: string | null;
|
41
|
+
expires_at?: string | null;
|
40
42
|
promotion_rule: CouponCodesPromotionRuleRel;
|
41
43
|
coupon_recipient?: CouponRecipientRel | null;
|
42
44
|
tags?: TagRel[] | null;
|
@@ -46,6 +48,7 @@ interface CouponUpdate extends ResourceUpdate {
|
|
46
48
|
customer_single_use?: boolean | null;
|
47
49
|
usage_limit?: number | null;
|
48
50
|
recipient_email?: string | null;
|
51
|
+
expires_at?: string | null;
|
49
52
|
promotion_rule?: CouponCodesPromotionRuleRel | null;
|
50
53
|
coupon_recipient?: CouponRecipientRel | null;
|
51
54
|
tags?: TagRel[] | null;
|
@@ -0,0 +1,62 @@
|
|
1
|
+
import { ApiResource } from '../resource';
|
2
|
+
import type { Resource, ResourceCreate, ResourceUpdate, ResourceId, ResourcesConfig, ResourceRel, ListResponse } from '../resource';
|
3
|
+
import type { QueryParamsRetrieve, QueryParamsList } from '../query';
|
4
|
+
import type { PercentageDiscountPromotion, PercentageDiscountPromotionType } from './percentage_discount_promotions';
|
5
|
+
import type { FreeShippingPromotion, FreeShippingPromotionType } from './free_shipping_promotions';
|
6
|
+
import type { BuyXPayYPromotion, BuyXPayYPromotionType } from './buy_x_pay_y_promotions';
|
7
|
+
import type { FreeGiftPromotion, FreeGiftPromotionType } from './free_gift_promotions';
|
8
|
+
import type { FixedPricePromotion, FixedPricePromotionType } from './fixed_price_promotions';
|
9
|
+
import type { ExternalPromotion, ExternalPromotionType } from './external_promotions';
|
10
|
+
import type { FixedAmountPromotion, FixedAmountPromotionType } from './fixed_amount_promotions';
|
11
|
+
import type { Version } from './versions';
|
12
|
+
type CustomPromotionRuleType = 'custom_promotion_rules';
|
13
|
+
type CustomPromotionRuleRel = ResourceRel & {
|
14
|
+
type: CustomPromotionRuleType;
|
15
|
+
};
|
16
|
+
type PercentageDiscountPromotionRel = ResourceRel & {
|
17
|
+
type: PercentageDiscountPromotionType;
|
18
|
+
};
|
19
|
+
type FreeShippingPromotionRel = ResourceRel & {
|
20
|
+
type: FreeShippingPromotionType;
|
21
|
+
};
|
22
|
+
type BuyXPayYPromotionRel = ResourceRel & {
|
23
|
+
type: BuyXPayYPromotionType;
|
24
|
+
};
|
25
|
+
type FreeGiftPromotionRel = ResourceRel & {
|
26
|
+
type: FreeGiftPromotionType;
|
27
|
+
};
|
28
|
+
type FixedPricePromotionRel = ResourceRel & {
|
29
|
+
type: FixedPricePromotionType;
|
30
|
+
};
|
31
|
+
type ExternalPromotionRel = ResourceRel & {
|
32
|
+
type: ExternalPromotionType;
|
33
|
+
};
|
34
|
+
type FixedAmountPromotionRel = ResourceRel & {
|
35
|
+
type: FixedAmountPromotionType;
|
36
|
+
};
|
37
|
+
interface CustomPromotionRule extends Resource {
|
38
|
+
readonly type: CustomPromotionRuleType;
|
39
|
+
filters?: Record<string, any> | null;
|
40
|
+
promotion?: PercentageDiscountPromotion | FreeShippingPromotion | BuyXPayYPromotion | FreeGiftPromotion | FixedPricePromotion | ExternalPromotion | FixedAmountPromotion | null;
|
41
|
+
versions?: Version[] | null;
|
42
|
+
}
|
43
|
+
interface CustomPromotionRuleCreate extends ResourceCreate {
|
44
|
+
filters?: Record<string, any> | null;
|
45
|
+
promotion: PercentageDiscountPromotionRel | FreeShippingPromotionRel | BuyXPayYPromotionRel | FreeGiftPromotionRel | FixedPricePromotionRel | ExternalPromotionRel | FixedAmountPromotionRel;
|
46
|
+
}
|
47
|
+
interface CustomPromotionRuleUpdate extends ResourceUpdate {
|
48
|
+
filters?: Record<string, any> | null;
|
49
|
+
promotion?: PercentageDiscountPromotionRel | FreeShippingPromotionRel | BuyXPayYPromotionRel | FreeGiftPromotionRel | FixedPricePromotionRel | ExternalPromotionRel | FixedAmountPromotionRel | null;
|
50
|
+
}
|
51
|
+
declare class CustomPromotionRules extends ApiResource<CustomPromotionRule> {
|
52
|
+
static readonly TYPE: CustomPromotionRuleType;
|
53
|
+
create(resource: CustomPromotionRuleCreate, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<CustomPromotionRule>;
|
54
|
+
update(resource: CustomPromotionRuleUpdate, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<CustomPromotionRule>;
|
55
|
+
delete(id: string | ResourceId, options?: ResourcesConfig): Promise<void>;
|
56
|
+
versions(customPromotionRuleId: string | CustomPromotionRule, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Version>>;
|
57
|
+
isCustomPromotionRule(resource: any): resource is CustomPromotionRule;
|
58
|
+
relationship(id: string | ResourceId | null): CustomPromotionRuleRel;
|
59
|
+
type(): CustomPromotionRuleType;
|
60
|
+
}
|
61
|
+
export default CustomPromotionRules;
|
62
|
+
export type { CustomPromotionRule, CustomPromotionRuleCreate, CustomPromotionRuleUpdate, CustomPromotionRuleType };
|
@@ -0,0 +1,27 @@
|
|
1
|
+
import { ApiResource } from '../resource';
|
2
|
+
class CustomPromotionRules extends ApiResource {
|
3
|
+
async create(resource, params, options) {
|
4
|
+
return this.resources.create({ ...resource, type: CustomPromotionRules.TYPE }, params, options);
|
5
|
+
}
|
6
|
+
async update(resource, params, options) {
|
7
|
+
return this.resources.update({ ...resource, type: CustomPromotionRules.TYPE }, params, options);
|
8
|
+
}
|
9
|
+
async delete(id, options) {
|
10
|
+
await this.resources.delete((typeof id === 'string') ? { id, type: CustomPromotionRules.TYPE } : id, options);
|
11
|
+
}
|
12
|
+
async versions(customPromotionRuleId, params, options) {
|
13
|
+
const _customPromotionRuleId = customPromotionRuleId.id || customPromotionRuleId;
|
14
|
+
return this.resources.fetch({ type: 'versions' }, `custom_promotion_rules/${_customPromotionRuleId}/versions`, params, options);
|
15
|
+
}
|
16
|
+
isCustomPromotionRule(resource) {
|
17
|
+
return resource.type && (resource.type === CustomPromotionRules.TYPE);
|
18
|
+
}
|
19
|
+
relationship(id) {
|
20
|
+
return ((id === null) || (typeof id === 'string')) ? { id, type: CustomPromotionRules.TYPE } : { id: id.id, type: CustomPromotionRules.TYPE };
|
21
|
+
}
|
22
|
+
type() {
|
23
|
+
return CustomPromotionRules.TYPE;
|
24
|
+
}
|
25
|
+
}
|
26
|
+
CustomPromotionRules.TYPE = 'custom_promotion_rules';
|
27
|
+
export default CustomPromotionRules;
|
@@ -7,11 +7,12 @@ import type { OrderAmountPromotionRule, OrderAmountPromotionRuleType } from './o
|
|
7
7
|
import type { SkuListPromotionRule, SkuListPromotionRuleType } from './sku_list_promotion_rules';
|
8
8
|
import type { CouponCodesPromotionRule, CouponCodesPromotionRuleType } from './coupon_codes_promotion_rules';
|
9
9
|
import type { Coupon, CouponType } from './coupons';
|
10
|
-
import type { SkuList } from './sku_lists';
|
10
|
+
import type { SkuList, SkuListType } from './sku_lists';
|
11
11
|
import type { Attachment } from './attachments';
|
12
12
|
import type { Event } from './events';
|
13
13
|
import type { Tag, TagType } from './tags';
|
14
14
|
import type { Version } from './versions';
|
15
|
+
import type { Sku } from './skus';
|
15
16
|
type ExternalPromotionType = 'external_promotions';
|
16
17
|
type ExternalPromotionRel = ResourceRel & {
|
17
18
|
type: ExternalPromotionType;
|
@@ -34,6 +35,9 @@ type CouponCodesPromotionRuleRel = ResourceRel & {
|
|
34
35
|
type CouponRel = ResourceRel & {
|
35
36
|
type: CouponType;
|
36
37
|
};
|
38
|
+
type SkuListRel = ResourceRel & {
|
39
|
+
type: SkuListType;
|
40
|
+
};
|
37
41
|
type TagRel = ResourceRel & {
|
38
42
|
type: TagType;
|
39
43
|
};
|
@@ -41,11 +45,14 @@ interface ExternalPromotion extends Resource {
|
|
41
45
|
readonly type: ExternalPromotionType;
|
42
46
|
name: string;
|
43
47
|
currency_code?: string | null;
|
48
|
+
exclusive?: boolean | null;
|
49
|
+
priority?: number | null;
|
44
50
|
starts_at: string;
|
45
51
|
expires_at: string;
|
46
52
|
total_usage_limit: number;
|
47
53
|
total_usage_count?: number | null;
|
48
54
|
active?: boolean | null;
|
55
|
+
disabled_at?: string | null;
|
49
56
|
promotion_url: string;
|
50
57
|
shared_secret: string;
|
51
58
|
market?: Market | null;
|
@@ -59,10 +66,13 @@ interface ExternalPromotion extends Resource {
|
|
59
66
|
events?: Event[] | null;
|
60
67
|
tags?: Tag[] | null;
|
61
68
|
versions?: Version[] | null;
|
69
|
+
skus?: Sku[] | null;
|
62
70
|
}
|
63
71
|
interface ExternalPromotionCreate extends ResourceCreate {
|
64
72
|
name: string;
|
65
73
|
currency_code?: string | null;
|
74
|
+
exclusive?: boolean | null;
|
75
|
+
priority?: number | null;
|
66
76
|
starts_at: string;
|
67
77
|
expires_at: string;
|
68
78
|
total_usage_limit: number;
|
@@ -73,14 +83,19 @@ interface ExternalPromotionCreate extends ResourceCreate {
|
|
73
83
|
sku_list_promotion_rule?: SkuListPromotionRuleRel | null;
|
74
84
|
coupon_codes_promotion_rule?: CouponCodesPromotionRuleRel | null;
|
75
85
|
coupons?: CouponRel[] | null;
|
86
|
+
sku_list?: SkuListRel | null;
|
76
87
|
tags?: TagRel[] | null;
|
77
88
|
}
|
78
89
|
interface ExternalPromotionUpdate extends ResourceUpdate {
|
79
90
|
name?: string | null;
|
80
91
|
currency_code?: string | null;
|
92
|
+
exclusive?: boolean | null;
|
93
|
+
priority?: number | null;
|
81
94
|
starts_at?: string | null;
|
82
95
|
expires_at?: string | null;
|
83
96
|
total_usage_limit?: number | null;
|
97
|
+
_disable?: boolean | null;
|
98
|
+
_enable?: boolean | null;
|
84
99
|
promotion_url?: string | null;
|
85
100
|
market?: MarketRel | null;
|
86
101
|
promotion_rules?: PromotionRuleRel[] | null;
|
@@ -88,6 +103,7 @@ interface ExternalPromotionUpdate extends ResourceUpdate {
|
|
88
103
|
sku_list_promotion_rule?: SkuListPromotionRuleRel | null;
|
89
104
|
coupon_codes_promotion_rule?: CouponCodesPromotionRuleRel | null;
|
90
105
|
coupons?: CouponRel[] | null;
|
106
|
+
sku_list?: SkuListRel | null;
|
91
107
|
tags?: TagRel[] | null;
|
92
108
|
}
|
93
109
|
declare class ExternalPromotions extends ApiResource<ExternalPromotion> {
|
@@ -105,6 +121,9 @@ declare class ExternalPromotions extends ApiResource<ExternalPromotion> {
|
|
105
121
|
events(externalPromotionId: string | ExternalPromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Event>>;
|
106
122
|
tags(externalPromotionId: string | ExternalPromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Tag>>;
|
107
123
|
versions(externalPromotionId: string | ExternalPromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Version>>;
|
124
|
+
skus(externalPromotionId: string | ExternalPromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Sku>>;
|
125
|
+
_disable(id: string | ExternalPromotion, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<ExternalPromotion>;
|
126
|
+
_enable(id: string | ExternalPromotion, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<ExternalPromotion>;
|
108
127
|
isExternalPromotion(resource: any): resource is ExternalPromotion;
|
109
128
|
relationship(id: string | ResourceId | null): ExternalPromotionRel;
|
110
129
|
type(): ExternalPromotionType;
|
@@ -49,6 +49,16 @@ class ExternalPromotions extends ApiResource {
|
|
49
49
|
const _externalPromotionId = externalPromotionId.id || externalPromotionId;
|
50
50
|
return this.resources.fetch({ type: 'versions' }, `external_promotions/${_externalPromotionId}/versions`, params, options);
|
51
51
|
}
|
52
|
+
async skus(externalPromotionId, params, options) {
|
53
|
+
const _externalPromotionId = externalPromotionId.id || externalPromotionId;
|
54
|
+
return this.resources.fetch({ type: 'skus' }, `external_promotions/${_externalPromotionId}/skus`, params, options);
|
55
|
+
}
|
56
|
+
async _disable(id, params, options) {
|
57
|
+
return this.resources.update({ id: (typeof id === 'string') ? id : id.id, type: ExternalPromotions.TYPE, _disable: true }, params, options);
|
58
|
+
}
|
59
|
+
async _enable(id, params, options) {
|
60
|
+
return this.resources.update({ id: (typeof id === 'string') ? id : id.id, type: ExternalPromotions.TYPE, _enable: true }, params, options);
|
61
|
+
}
|
52
62
|
isExternalPromotion(resource) {
|
53
63
|
return resource.type && (resource.type === ExternalPromotions.TYPE);
|
54
64
|
}
|
@@ -7,11 +7,12 @@ import type { OrderAmountPromotionRule, OrderAmountPromotionRuleType } from './o
|
|
7
7
|
import type { SkuListPromotionRule, SkuListPromotionRuleType } from './sku_list_promotion_rules';
|
8
8
|
import type { CouponCodesPromotionRule, CouponCodesPromotionRuleType } from './coupon_codes_promotion_rules';
|
9
9
|
import type { Coupon, CouponType } from './coupons';
|
10
|
-
import type { SkuList } from './sku_lists';
|
10
|
+
import type { SkuList, SkuListType } from './sku_lists';
|
11
11
|
import type { Attachment } from './attachments';
|
12
12
|
import type { Event } from './events';
|
13
13
|
import type { Tag, TagType } from './tags';
|
14
14
|
import type { Version } from './versions';
|
15
|
+
import type { Sku } from './skus';
|
15
16
|
type FixedAmountPromotionType = 'fixed_amount_promotions';
|
16
17
|
type FixedAmountPromotionRel = ResourceRel & {
|
17
18
|
type: FixedAmountPromotionType;
|
@@ -34,6 +35,9 @@ type CouponCodesPromotionRuleRel = ResourceRel & {
|
|
34
35
|
type CouponRel = ResourceRel & {
|
35
36
|
type: CouponType;
|
36
37
|
};
|
38
|
+
type SkuListRel = ResourceRel & {
|
39
|
+
type: SkuListType;
|
40
|
+
};
|
37
41
|
type TagRel = ResourceRel & {
|
38
42
|
type: TagType;
|
39
43
|
};
|
@@ -41,11 +45,14 @@ interface FixedAmountPromotion extends Resource {
|
|
41
45
|
readonly type: FixedAmountPromotionType;
|
42
46
|
name: string;
|
43
47
|
currency_code?: string | null;
|
48
|
+
exclusive?: boolean | null;
|
49
|
+
priority?: number | null;
|
44
50
|
starts_at: string;
|
45
51
|
expires_at: string;
|
46
52
|
total_usage_limit: number;
|
47
53
|
total_usage_count?: number | null;
|
48
54
|
active?: boolean | null;
|
55
|
+
disabled_at?: string | null;
|
49
56
|
fixed_amount_cents: number;
|
50
57
|
fixed_amount_float?: number | null;
|
51
58
|
formatted_fixed_amount?: string | null;
|
@@ -60,10 +67,13 @@ interface FixedAmountPromotion extends Resource {
|
|
60
67
|
events?: Event[] | null;
|
61
68
|
tags?: Tag[] | null;
|
62
69
|
versions?: Version[] | null;
|
70
|
+
skus?: Sku[] | null;
|
63
71
|
}
|
64
72
|
interface FixedAmountPromotionCreate extends ResourceCreate {
|
65
73
|
name: string;
|
66
74
|
currency_code?: string | null;
|
75
|
+
exclusive?: boolean | null;
|
76
|
+
priority?: number | null;
|
67
77
|
starts_at: string;
|
68
78
|
expires_at: string;
|
69
79
|
total_usage_limit: number;
|
@@ -74,14 +84,19 @@ interface FixedAmountPromotionCreate extends ResourceCreate {
|
|
74
84
|
sku_list_promotion_rule?: SkuListPromotionRuleRel | null;
|
75
85
|
coupon_codes_promotion_rule?: CouponCodesPromotionRuleRel | null;
|
76
86
|
coupons?: CouponRel[] | null;
|
87
|
+
sku_list?: SkuListRel | null;
|
77
88
|
tags?: TagRel[] | null;
|
78
89
|
}
|
79
90
|
interface FixedAmountPromotionUpdate extends ResourceUpdate {
|
80
91
|
name?: string | null;
|
81
92
|
currency_code?: string | null;
|
93
|
+
exclusive?: boolean | null;
|
94
|
+
priority?: number | null;
|
82
95
|
starts_at?: string | null;
|
83
96
|
expires_at?: string | null;
|
84
97
|
total_usage_limit?: number | null;
|
98
|
+
_disable?: boolean | null;
|
99
|
+
_enable?: boolean | null;
|
85
100
|
fixed_amount_cents?: number | null;
|
86
101
|
market?: MarketRel | null;
|
87
102
|
promotion_rules?: PromotionRuleRel[] | null;
|
@@ -89,6 +104,7 @@ interface FixedAmountPromotionUpdate extends ResourceUpdate {
|
|
89
104
|
sku_list_promotion_rule?: SkuListPromotionRuleRel | null;
|
90
105
|
coupon_codes_promotion_rule?: CouponCodesPromotionRuleRel | null;
|
91
106
|
coupons?: CouponRel[] | null;
|
107
|
+
sku_list?: SkuListRel | null;
|
92
108
|
tags?: TagRel[] | null;
|
93
109
|
}
|
94
110
|
declare class FixedAmountPromotions extends ApiResource<FixedAmountPromotion> {
|
@@ -106,6 +122,9 @@ declare class FixedAmountPromotions extends ApiResource<FixedAmountPromotion> {
|
|
106
122
|
events(fixedAmountPromotionId: string | FixedAmountPromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Event>>;
|
107
123
|
tags(fixedAmountPromotionId: string | FixedAmountPromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Tag>>;
|
108
124
|
versions(fixedAmountPromotionId: string | FixedAmountPromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Version>>;
|
125
|
+
skus(fixedAmountPromotionId: string | FixedAmountPromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Sku>>;
|
126
|
+
_disable(id: string | FixedAmountPromotion, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<FixedAmountPromotion>;
|
127
|
+
_enable(id: string | FixedAmountPromotion, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<FixedAmountPromotion>;
|
109
128
|
isFixedAmountPromotion(resource: any): resource is FixedAmountPromotion;
|
110
129
|
relationship(id: string | ResourceId | null): FixedAmountPromotionRel;
|
111
130
|
type(): FixedAmountPromotionType;
|
@@ -49,6 +49,16 @@ class FixedAmountPromotions extends ApiResource {
|
|
49
49
|
const _fixedAmountPromotionId = fixedAmountPromotionId.id || fixedAmountPromotionId;
|
50
50
|
return this.resources.fetch({ type: 'versions' }, `fixed_amount_promotions/${_fixedAmountPromotionId}/versions`, params, options);
|
51
51
|
}
|
52
|
+
async skus(fixedAmountPromotionId, params, options) {
|
53
|
+
const _fixedAmountPromotionId = fixedAmountPromotionId.id || fixedAmountPromotionId;
|
54
|
+
return this.resources.fetch({ type: 'skus' }, `fixed_amount_promotions/${_fixedAmountPromotionId}/skus`, params, options);
|
55
|
+
}
|
56
|
+
async _disable(id, params, options) {
|
57
|
+
return this.resources.update({ id: (typeof id === 'string') ? id : id.id, type: FixedAmountPromotions.TYPE, _disable: true }, params, options);
|
58
|
+
}
|
59
|
+
async _enable(id, params, options) {
|
60
|
+
return this.resources.update({ id: (typeof id === 'string') ? id : id.id, type: FixedAmountPromotions.TYPE, _enable: true }, params, options);
|
61
|
+
}
|
52
62
|
isFixedAmountPromotion(resource) {
|
53
63
|
return resource.type && (resource.type === FixedAmountPromotions.TYPE);
|
54
64
|
}
|
@@ -45,11 +45,14 @@ interface FixedPricePromotion extends Resource {
|
|
45
45
|
readonly type: FixedPricePromotionType;
|
46
46
|
name: string;
|
47
47
|
currency_code?: string | null;
|
48
|
+
exclusive?: boolean | null;
|
49
|
+
priority?: number | null;
|
48
50
|
starts_at: string;
|
49
51
|
expires_at: string;
|
50
52
|
total_usage_limit: number;
|
51
53
|
total_usage_count?: number | null;
|
52
54
|
active?: boolean | null;
|
55
|
+
disabled_at?: string | null;
|
53
56
|
fixed_amount_cents: number;
|
54
57
|
fixed_amount_float?: number | null;
|
55
58
|
formatted_fixed_amount?: string | null;
|
@@ -69,6 +72,8 @@ interface FixedPricePromotion extends Resource {
|
|
69
72
|
interface FixedPricePromotionCreate extends ResourceCreate {
|
70
73
|
name: string;
|
71
74
|
currency_code?: string | null;
|
75
|
+
exclusive?: boolean | null;
|
76
|
+
priority?: number | null;
|
72
77
|
starts_at: string;
|
73
78
|
expires_at: string;
|
74
79
|
total_usage_limit: number;
|
@@ -85,9 +90,13 @@ interface FixedPricePromotionCreate extends ResourceCreate {
|
|
85
90
|
interface FixedPricePromotionUpdate extends ResourceUpdate {
|
86
91
|
name?: string | null;
|
87
92
|
currency_code?: string | null;
|
93
|
+
exclusive?: boolean | null;
|
94
|
+
priority?: number | null;
|
88
95
|
starts_at?: string | null;
|
89
96
|
expires_at?: string | null;
|
90
97
|
total_usage_limit?: number | null;
|
98
|
+
_disable?: boolean | null;
|
99
|
+
_enable?: boolean | null;
|
91
100
|
fixed_amount_cents?: number | null;
|
92
101
|
market?: MarketRel | null;
|
93
102
|
promotion_rules?: PromotionRuleRel[] | null;
|
@@ -114,6 +123,8 @@ declare class FixedPricePromotions extends ApiResource<FixedPricePromotion> {
|
|
114
123
|
tags(fixedPricePromotionId: string | FixedPricePromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Tag>>;
|
115
124
|
versions(fixedPricePromotionId: string | FixedPricePromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Version>>;
|
116
125
|
skus(fixedPricePromotionId: string | FixedPricePromotion, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Sku>>;
|
126
|
+
_disable(id: string | FixedPricePromotion, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<FixedPricePromotion>;
|
127
|
+
_enable(id: string | FixedPricePromotion, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<FixedPricePromotion>;
|
117
128
|
isFixedPricePromotion(resource: any): resource is FixedPricePromotion;
|
118
129
|
relationship(id: string | ResourceId | null): FixedPricePromotionRel;
|
119
130
|
type(): FixedPricePromotionType;
|
@@ -53,6 +53,12 @@ class FixedPricePromotions extends ApiResource {
|
|
53
53
|
const _fixedPricePromotionId = fixedPricePromotionId.id || fixedPricePromotionId;
|
54
54
|
return this.resources.fetch({ type: 'skus' }, `fixed_price_promotions/${_fixedPricePromotionId}/skus`, params, options);
|
55
55
|
}
|
56
|
+
async _disable(id, params, options) {
|
57
|
+
return this.resources.update({ id: (typeof id === 'string') ? id : id.id, type: FixedPricePromotions.TYPE, _disable: true }, params, options);
|
58
|
+
}
|
59
|
+
async _enable(id, params, options) {
|
60
|
+
return this.resources.update({ id: (typeof id === 'string') ? id : id.id, type: FixedPricePromotions.TYPE, _enable: true }, params, options);
|
61
|
+
}
|
56
62
|
isFixedPricePromotion(resource) {
|
57
63
|
return resource.type && (resource.type === FixedPricePromotions.TYPE);
|
58
64
|
}
|