@congminh1254/shopee-sdk 0.9.0 → 1.0.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.
Files changed (137) hide show
  1. package/README.md +178 -36
  2. package/lib/fetch.js +13 -0
  3. package/lib/fetch.js.map +1 -1
  4. package/lib/managers/add-on-deal.manager.d.ts +140 -0
  5. package/lib/managers/add-on-deal.manager.js +240 -0
  6. package/lib/managers/add-on-deal.manager.js.map +1 -0
  7. package/lib/managers/ads.manager.d.ts +217 -1
  8. package/lib/managers/ads.manager.js +312 -0
  9. package/lib/managers/ads.manager.js.map +1 -1
  10. package/lib/managers/bundle-deal.manager.d.ts +106 -0
  11. package/lib/managers/bundle-deal.manager.js +178 -0
  12. package/lib/managers/bundle-deal.manager.js.map +1 -0
  13. package/lib/managers/discount.manager.d.ts +102 -0
  14. package/lib/managers/discount.manager.js +167 -0
  15. package/lib/managers/discount.manager.js.map +1 -0
  16. package/lib/managers/fbs.manager.d.ts +115 -0
  17. package/lib/managers/fbs.manager.js +145 -0
  18. package/lib/managers/fbs.manager.js.map +1 -0
  19. package/lib/managers/first-mile.manager.d.ts +150 -0
  20. package/lib/managers/first-mile.manager.js +264 -0
  21. package/lib/managers/first-mile.manager.js.map +1 -0
  22. package/lib/managers/follow-prize.manager.d.ts +108 -0
  23. package/lib/managers/follow-prize.manager.js +152 -0
  24. package/lib/managers/follow-prize.manager.js.map +1 -0
  25. package/lib/managers/global-product.manager.d.ts +664 -0
  26. package/lib/managers/global-product.manager.js +904 -0
  27. package/lib/managers/global-product.manager.js.map +1 -0
  28. package/lib/managers/index.d.ts +17 -1
  29. package/lib/managers/index.js +17 -1
  30. package/lib/managers/index.js.map +1 -1
  31. package/lib/managers/livestream.manager.d.ts +377 -0
  32. package/lib/managers/livestream.manager.js +529 -0
  33. package/lib/managers/livestream.manager.js.map +1 -0
  34. package/lib/managers/logistics.manager.d.ts +267 -1
  35. package/lib/managers/logistics.manager.js +544 -0
  36. package/lib/managers/logistics.manager.js.map +1 -1
  37. package/lib/managers/media-space.manager.d.ts +179 -0
  38. package/lib/managers/media-space.manager.js +220 -0
  39. package/lib/managers/media-space.manager.js.map +1 -0
  40. package/lib/managers/media.manager.d.ts +226 -0
  41. package/lib/managers/media.manager.js +274 -0
  42. package/lib/managers/media.manager.js.map +1 -0
  43. package/lib/managers/merchant.manager.d.ts +100 -0
  44. package/lib/managers/merchant.manager.js +144 -0
  45. package/lib/managers/merchant.manager.js.map +1 -0
  46. package/lib/managers/order.manager.d.ts +213 -1
  47. package/lib/managers/order.manager.js +305 -0
  48. package/lib/managers/order.manager.js.map +1 -1
  49. package/lib/managers/payment.manager.d.ts +186 -1
  50. package/lib/managers/payment.manager.js +288 -0
  51. package/lib/managers/payment.manager.js.map +1 -1
  52. package/lib/managers/product.manager.d.ts +346 -1
  53. package/lib/managers/product.manager.js +718 -0
  54. package/lib/managers/product.manager.js.map +1 -1
  55. package/lib/managers/returns.manager.d.ts +200 -0
  56. package/lib/managers/returns.manager.js +300 -0
  57. package/lib/managers/returns.manager.js.map +1 -0
  58. package/lib/managers/sbs.manager.d.ts +112 -0
  59. package/lib/managers/sbs.manager.js +149 -0
  60. package/lib/managers/sbs.manager.js.map +1 -0
  61. package/lib/managers/shop-category.manager.d.ts +207 -0
  62. package/lib/managers/shop-category.manager.js +258 -0
  63. package/lib/managers/shop-category.manager.js.map +1 -0
  64. package/lib/managers/shop-flash-sale.manager.d.ts +242 -0
  65. package/lib/managers/shop-flash-sale.manager.js +321 -0
  66. package/lib/managers/shop-flash-sale.manager.js.map +1 -0
  67. package/lib/managers/shop.manager.d.ts +173 -0
  68. package/lib/managers/shop.manager.js +217 -0
  69. package/lib/managers/shop.manager.js.map +1 -0
  70. package/lib/managers/top-picks.manager.d.ts +62 -0
  71. package/lib/managers/top-picks.manager.js +91 -0
  72. package/lib/managers/top-picks.manager.js.map +1 -0
  73. package/lib/schemas/add-on-deal.d.ts +390 -0
  74. package/lib/schemas/add-on-deal.js +45 -0
  75. package/lib/schemas/add-on-deal.js.map +1 -0
  76. package/lib/schemas/ads.d.ts +437 -0
  77. package/lib/schemas/bundle-deal.d.ts +300 -0
  78. package/lib/schemas/bundle-deal.js +27 -0
  79. package/lib/schemas/bundle-deal.js.map +1 -0
  80. package/lib/schemas/discount.d.ts +334 -0
  81. package/lib/schemas/discount.js +15 -0
  82. package/lib/schemas/discount.js.map +1 -0
  83. package/lib/schemas/fbs.d.ts +117 -0
  84. package/lib/schemas/fbs.js +2 -0
  85. package/lib/schemas/fbs.js.map +1 -0
  86. package/lib/schemas/first-mile.d.ts +551 -0
  87. package/lib/schemas/first-mile.js +2 -0
  88. package/lib/schemas/first-mile.js.map +1 -0
  89. package/lib/schemas/follow-prize.d.ts +198 -0
  90. package/lib/schemas/follow-prize.js +27 -0
  91. package/lib/schemas/follow-prize.js.map +1 -0
  92. package/lib/schemas/global-product.d.ts +1127 -0
  93. package/lib/schemas/global-product.js +2 -0
  94. package/lib/schemas/global-product.js.map +1 -0
  95. package/lib/schemas/index.d.ts +13 -0
  96. package/lib/schemas/index.js +17 -0
  97. package/lib/schemas/index.js.map +1 -1
  98. package/lib/schemas/livestream.d.ts +649 -0
  99. package/lib/schemas/livestream.js +2 -0
  100. package/lib/schemas/livestream.js.map +1 -0
  101. package/lib/schemas/logistics.d.ts +979 -0
  102. package/lib/schemas/logistics.js +13 -0
  103. package/lib/schemas/logistics.js.map +1 -1
  104. package/lib/schemas/media-space.d.ts +189 -0
  105. package/lib/schemas/media-space.js +2 -0
  106. package/lib/schemas/media-space.js.map +1 -0
  107. package/lib/schemas/media.d.ts +230 -0
  108. package/lib/schemas/media.js +2 -0
  109. package/lib/schemas/media.js.map +1 -0
  110. package/lib/schemas/merchant.d.ts +236 -0
  111. package/lib/schemas/merchant.js +2 -0
  112. package/lib/schemas/merchant.js.map +1 -0
  113. package/lib/schemas/order.d.ts +431 -0
  114. package/lib/schemas/payment.d.ts +397 -0
  115. package/lib/schemas/product.d.ts +1157 -0
  116. package/lib/schemas/returns.d.ts +632 -0
  117. package/lib/schemas/returns.js +63 -0
  118. package/lib/schemas/returns.js.map +1 -0
  119. package/lib/schemas/sbs.d.ts +484 -0
  120. package/lib/schemas/sbs.js +2 -0
  121. package/lib/schemas/sbs.js.map +1 -0
  122. package/lib/schemas/shop-category.d.ts +176 -0
  123. package/lib/schemas/shop-category.js +2 -0
  124. package/lib/schemas/shop-category.js.map +1 -0
  125. package/lib/schemas/shop-flash-sale.d.ts +473 -0
  126. package/lib/schemas/shop-flash-sale.js +43 -0
  127. package/lib/schemas/shop-flash-sale.js.map +1 -0
  128. package/lib/schemas/shop.d.ts +250 -0
  129. package/lib/schemas/shop.js +2 -0
  130. package/lib/schemas/shop.js.map +1 -0
  131. package/lib/schemas/top-picks.d.ts +99 -0
  132. package/lib/schemas/top-picks.js +2 -0
  133. package/lib/schemas/top-picks.js.map +1 -0
  134. package/lib/sdk.d.ts +34 -0
  135. package/lib/sdk.js +34 -0
  136. package/lib/sdk.js.map +1 -1
  137. package/package.json +7 -4
@@ -0,0 +1,529 @@
1
+ import { BaseManager } from "./base.manager.js";
2
+ import { ShopeeFetch } from "../fetch.js";
3
+ export class LiveStreamManager extends BaseManager {
4
+ constructor(config) {
5
+ super(config);
6
+ }
7
+ /**
8
+ * Create a new livestream session with basic information.
9
+ * Only available for TW, ID, TH regions.
10
+ *
11
+ * @param params - Parameters for creating a livestream session
12
+ * @param params.title - The title of livestream session, cannot exceed 200 characters (required)
13
+ * @param params.cover_image_url - The cover image URL of livestream session (required)
14
+ * @param params.description - The description of livestream session, cannot exceed 200 characters
15
+ * @param params.is_test - Indicate whether the livestream session is for testing purpose only
16
+ *
17
+ * @returns A promise that resolves to the create session response containing:
18
+ * - session_id: The identifier of the created livestream session
19
+ *
20
+ * @throws {Error} When the API request fails or returns an error
21
+ */
22
+ async createSession(params) {
23
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/create_session", {
24
+ method: "POST",
25
+ body: params,
26
+ });
27
+ return response;
28
+ }
29
+ /**
30
+ * Start a livestream session.
31
+ * Only available for TW, ID, TH regions.
32
+ *
33
+ * @param params - Parameters for starting a livestream session
34
+ * @param params.session_id - The identifier of livestream session (required)
35
+ * @param params.domain_id - The identifier of the stream domain (required)
36
+ *
37
+ * @returns A promise that resolves to the start session response
38
+ *
39
+ * @throws {Error} When the API request fails or returns an error
40
+ */
41
+ async startSession(params) {
42
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/start_session", {
43
+ method: "POST",
44
+ body: params,
45
+ });
46
+ return response;
47
+ }
48
+ /**
49
+ * End a livestream session.
50
+ * Only available for TW, ID, TH regions.
51
+ *
52
+ * @param params - Parameters for ending a livestream session
53
+ * @param params.session_id - The identifier of livestream session (required)
54
+ *
55
+ * @returns A promise that resolves to the end session response
56
+ *
57
+ * @throws {Error} When the API request fails or returns an error
58
+ */
59
+ async endSession(params) {
60
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/end_session", {
61
+ method: "POST",
62
+ body: params,
63
+ });
64
+ return response;
65
+ }
66
+ /**
67
+ * Update basic information of a livestream session.
68
+ * Only available for TW, ID, TH regions.
69
+ *
70
+ * @param params - Parameters for updating a livestream session
71
+ * @param params.session_id - The identifier of livestream session (required)
72
+ * @param params.title - The title of livestream session, cannot exceed 200 characters
73
+ * @param params.description - The description of livestream session, cannot exceed 200 characters
74
+ * @param params.cover_image_url - The cover image URL of livestream session
75
+ *
76
+ * @returns A promise that resolves to the update session response
77
+ *
78
+ * @throws {Error} When the API request fails or returns an error
79
+ */
80
+ async updateSession(params) {
81
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/update_session", {
82
+ method: "POST",
83
+ body: params,
84
+ });
85
+ return response;
86
+ }
87
+ /**
88
+ * Get basic information about a livestream session including cover, title, description,
89
+ * type (test live or normal live), create time, update time, stream url, etc.
90
+ * Only available for TW, ID, TH regions.
91
+ *
92
+ * @param params - Parameters for getting session detail
93
+ * @param params.session_id - The identifier of livestream session (required)
94
+ *
95
+ * @returns A promise that resolves to the session detail response containing:
96
+ * - session_id: Session identifier
97
+ * - title: Session title
98
+ * - description: Session description
99
+ * - cover_image_url: Cover image URL
100
+ * - status: Session status (0=Not started, 1=Ongoing, 2=Ended)
101
+ * - share_url: Share URL
102
+ * - is_test: Whether it's a test session
103
+ * - create_time: Creation timestamp
104
+ * - update_time: Last update timestamp
105
+ * - start_time: Start timestamp
106
+ * - end_time: End timestamp
107
+ * - stream_url_list: Stream URL information
108
+ *
109
+ * @throws {Error} When the API request fails or returns an error
110
+ */
111
+ async getSessionDetail(params) {
112
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/get_session_detail", {
113
+ method: "GET",
114
+ params,
115
+ });
116
+ return response;
117
+ }
118
+ /**
119
+ * Get metrics for a livestream session including GMV, orders, viewers, engagement metrics.
120
+ * Only available for TW, ID, TH regions.
121
+ *
122
+ * @param params - Parameters for getting session metrics
123
+ * @param params.session_id - The identifier of livestream session (required)
124
+ *
125
+ * @returns A promise that resolves to the session metric response containing:
126
+ * - gmv: Value of placed orders during livestream
127
+ * - atc: Number of "Add To Cart" clicks
128
+ * - ctr: Click-through rate
129
+ * - co: Conversion rate
130
+ * - orders: Number of placed orders
131
+ * - ccu: Number of concurrent viewers
132
+ * - engage_ccu_1m: Number of engaged concurrent viewers (>1 min)
133
+ * - peak_ccu: Peak concurrent viewers
134
+ * - likes: Number of likes
135
+ * - comments: Number of comments
136
+ * - shares: Number of shares
137
+ * - views: Number of views
138
+ * - avg_viewing_duration: Average viewing duration
139
+ *
140
+ * @throws {Error} When the API request fails or returns an error
141
+ */
142
+ async getSessionMetric(params) {
143
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/get_session_metric", {
144
+ method: "GET",
145
+ params,
146
+ });
147
+ return response;
148
+ }
149
+ /**
150
+ * Get item-level metrics for a livestream session.
151
+ * Only available for TW, ID, TH regions.
152
+ *
153
+ * @param params - Parameters for getting session item metrics
154
+ * @param params.session_id - The identifier of livestream session (required)
155
+ * @param params.offset - Starting entry of data to return (required)
156
+ * @param params.page_size - Maximum number of entries per page, 1-100 (required)
157
+ *
158
+ * @returns A promise that resolves to the session item metric response containing:
159
+ * - more: Whether there are more pages
160
+ * - next_offset: Next offset for pagination
161
+ * - list: List of item metrics with clicks, orders, and GMV
162
+ *
163
+ * @throws {Error} When the API request fails or returns an error
164
+ */
165
+ async getSessionItemMetric(params) {
166
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/get_session_item_metric", {
167
+ method: "GET",
168
+ params,
169
+ });
170
+ return response;
171
+ }
172
+ /**
173
+ * Add items to a livestream session's shopping bag.
174
+ * Only available for TW, ID, TH regions.
175
+ *
176
+ * @param params - Parameters for adding items
177
+ * @param params.session_id - The identifier of livestream session (required)
178
+ * @param params.item_list - The list of items to add (required)
179
+ *
180
+ * @returns A promise that resolves to the add item list response
181
+ *
182
+ * @throws {Error} When the API request fails or returns an error
183
+ */
184
+ async addItemList(params) {
185
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/add_item_list", {
186
+ method: "POST",
187
+ body: params,
188
+ });
189
+ return response;
190
+ }
191
+ /**
192
+ * Update the order of items in a livestream session's shopping bag.
193
+ * Only available for TW, ID, TH regions.
194
+ *
195
+ * @param params - Parameters for updating items
196
+ * @param params.session_id - The identifier of livestream session (required)
197
+ * @param params.item_list - The list of items to update with new order (required)
198
+ *
199
+ * @returns A promise that resolves to the update item list response
200
+ *
201
+ * @throws {Error} When the API request fails or returns an error
202
+ */
203
+ async updateItemList(params) {
204
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/update_item_list", {
205
+ method: "POST",
206
+ body: params,
207
+ });
208
+ return response;
209
+ }
210
+ /**
211
+ * Delete items from a livestream session's shopping bag.
212
+ * Only available for TW, ID, TH regions.
213
+ *
214
+ * @param params - Parameters for deleting items
215
+ * @param params.session_id - The identifier of livestream session (required)
216
+ * @param params.item_list - The list of items to delete (required)
217
+ *
218
+ * @returns A promise that resolves to the delete item list response
219
+ *
220
+ * @throws {Error} When the API request fails or returns an error
221
+ */
222
+ async deleteItemList(params) {
223
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/delete_item_list", {
224
+ method: "POST",
225
+ body: params,
226
+ });
227
+ return response;
228
+ }
229
+ /**
230
+ * Get the list of items in a livestream session's shopping bag.
231
+ * Only available for TW, ID, TH regions.
232
+ *
233
+ * @param params - Parameters for getting item list
234
+ * @param params.session_id - The identifier of livestream session (required)
235
+ * @param params.offset - Starting entry of data to return (required)
236
+ * @param params.page_size - Maximum number of entries per page, 1-100 (required)
237
+ *
238
+ * @returns A promise that resolves to the item list response containing:
239
+ * - more: Whether there are more pages
240
+ * - next_offset: Next offset for pagination
241
+ * - list: List of items with details, pricing, and affiliate info
242
+ *
243
+ * @throws {Error} When the API request fails or returns an error
244
+ */
245
+ async getItemList(params) {
246
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/get_item_list", {
247
+ method: "GET",
248
+ params,
249
+ });
250
+ return response;
251
+ }
252
+ /**
253
+ * Get the total count of items in a livestream session's shopping bag.
254
+ * Only available for TW, ID, TH regions.
255
+ *
256
+ * @param params - Parameters for getting item count
257
+ * @param params.session_id - The identifier of livestream session (required)
258
+ *
259
+ * @returns A promise that resolves to the item count response containing:
260
+ * - total_count: Total number of items
261
+ *
262
+ * @throws {Error} When the API request fails or returns an error
263
+ */
264
+ async getItemCount(params) {
265
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/get_item_count", {
266
+ method: "GET",
267
+ params,
268
+ });
269
+ return response;
270
+ }
271
+ /**
272
+ * Get recently added items in a livestream session.
273
+ * Only available for TW, ID, TH regions.
274
+ *
275
+ * @param params - Parameters for getting recent item list
276
+ * @param params.session_id - The identifier of livestream session (required)
277
+ * @param params.offset - Starting entry of data to return (required)
278
+ * @param params.page_size - Maximum number of entries per page, 1-100 (required)
279
+ *
280
+ * @returns A promise that resolves to the recent item list response
281
+ *
282
+ * @throws {Error} When the API request fails or returns an error
283
+ */
284
+ async getRecentItemList(params) {
285
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/get_recent_item_list", {
286
+ method: "GET",
287
+ params,
288
+ });
289
+ return response;
290
+ }
291
+ /**
292
+ * Get items that viewers liked during the livestream session.
293
+ * Only available for TW, ID, TH regions.
294
+ *
295
+ * @param params - Parameters for getting like item list
296
+ * @param params.session_id - The identifier of livestream session (required)
297
+ * @param params.offset - Starting entry of data to return (required)
298
+ * @param params.page_size - Maximum number of entries per page, 1-100 (required)
299
+ *
300
+ * @returns A promise that resolves to the like item list response
301
+ *
302
+ * @throws {Error} When the API request fails or returns an error
303
+ */
304
+ async getLikeItemList(params) {
305
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/get_like_item_list", {
306
+ method: "GET",
307
+ params,
308
+ });
309
+ return response;
310
+ }
311
+ /**
312
+ * Apply a pre-defined item set to a livestream session.
313
+ * Only available for TW, ID, TH regions.
314
+ *
315
+ * @param params - Parameters for applying item set
316
+ * @param params.session_id - The identifier of livestream session (required)
317
+ * @param params.item_set_id - The identifier of item set (required)
318
+ *
319
+ * @returns A promise that resolves to the apply item set response
320
+ *
321
+ * @throws {Error} When the API request fails or returns an error
322
+ */
323
+ async applyItemSet(params) {
324
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/apply_item_set", {
325
+ method: "POST",
326
+ body: params,
327
+ });
328
+ return response;
329
+ }
330
+ /**
331
+ * Get the list of available item sets.
332
+ * Only available for TW, ID, TH regions.
333
+ *
334
+ * @param params - Parameters for getting item set list
335
+ * @param params.offset - Starting entry of data to return (required)
336
+ * @param params.page_size - Maximum number of entries per page, 1-100 (required)
337
+ *
338
+ * @returns A promise that resolves to the item set list response containing:
339
+ * - more: Whether there are more pages
340
+ * - next_offset: Next offset for pagination
341
+ * - list: List of item sets with ID, name, and item count
342
+ *
343
+ * @throws {Error} When the API request fails or returns an error
344
+ */
345
+ async getItemSetList(params) {
346
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/get_item_set_list", {
347
+ method: "GET",
348
+ params,
349
+ });
350
+ return response;
351
+ }
352
+ /**
353
+ * Get the items in a specific item set.
354
+ * Only available for TW, ID, TH regions.
355
+ *
356
+ * @param params - Parameters for getting item set item list
357
+ * @param params.item_set_id - The identifier of item set (required)
358
+ * @param params.offset - Starting entry of data to return (required)
359
+ * @param params.page_size - Maximum number of entries per page, 1-100 (required)
360
+ *
361
+ * @returns A promise that resolves to the item set item list response
362
+ *
363
+ * @throws {Error} When the API request fails or returns an error
364
+ */
365
+ async getItemSetItemList(params) {
366
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/get_item_set_item_list", {
367
+ method: "GET",
368
+ params,
369
+ });
370
+ return response;
371
+ }
372
+ /**
373
+ * Get the currently displayed item in a livestream session.
374
+ * Only available for TW, ID, TH regions.
375
+ *
376
+ * @param params - Parameters for getting show item
377
+ * @param params.session_id - The identifier of livestream session (required)
378
+ *
379
+ * @returns A promise that resolves to the show item response containing:
380
+ * - item: The currently displayed item (null if no item is being shown)
381
+ *
382
+ * @throws {Error} When the API request fails or returns an error
383
+ */
384
+ async getShowItem(params) {
385
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/get_show_item", {
386
+ method: "GET",
387
+ params,
388
+ });
389
+ return response;
390
+ }
391
+ /**
392
+ * Update which item to display in a livestream session.
393
+ * Only available for TW, ID, TH regions.
394
+ *
395
+ * @param params - Parameters for updating show item
396
+ * @param params.session_id - The identifier of livestream session (required)
397
+ * @param params.item_id - Shopee's unique identifier for an item (required)
398
+ * @param params.shop_id - The shop id of this item (required)
399
+ *
400
+ * @returns A promise that resolves to the update show item response
401
+ *
402
+ * @throws {Error} When the API request fails or returns an error
403
+ */
404
+ async updateShowItem(params) {
405
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/update_show_item", {
406
+ method: "POST",
407
+ body: params,
408
+ });
409
+ return response;
410
+ }
411
+ /**
412
+ * Remove the currently displayed item from a livestream session.
413
+ * Only available for TW, ID, TH regions.
414
+ *
415
+ * @param params - Parameters for deleting show item
416
+ * @param params.session_id - The identifier of livestream session (required)
417
+ *
418
+ * @returns A promise that resolves to the delete show item response
419
+ *
420
+ * @throws {Error} When the API request fails or returns an error
421
+ */
422
+ async deleteShowItem(params) {
423
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/delete_show_item", {
424
+ method: "POST",
425
+ body: params,
426
+ });
427
+ return response;
428
+ }
429
+ /**
430
+ * Post a comment to a livestream session.
431
+ * Only available for TW, ID, TH regions.
432
+ *
433
+ * @param params - Parameters for posting a comment
434
+ * @param params.session_id - The identifier of livestream session (required)
435
+ * @param params.comment - Comment text (required)
436
+ *
437
+ * @returns A promise that resolves to the post comment response
438
+ *
439
+ * @throws {Error} When the API request fails or returns an error
440
+ */
441
+ async postComment(params) {
442
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/post_comment", {
443
+ method: "POST",
444
+ body: params,
445
+ });
446
+ return response;
447
+ }
448
+ /**
449
+ * Get the latest comments from a livestream session.
450
+ * Only available for TW, ID, TH regions.
451
+ *
452
+ * @param params - Parameters for getting latest comment list
453
+ * @param params.session_id - The identifier of livestream session (required)
454
+ * @param params.offset - Starting entry of data to return (required)
455
+ * @param params.page_size - Maximum number of entries per page, 1-100 (required)
456
+ *
457
+ * @returns A promise that resolves to the latest comment list response containing:
458
+ * - more: Whether there are more pages
459
+ * - next_offset: Next offset for pagination
460
+ * - list: List of comments with user info and timestamp
461
+ *
462
+ * @throws {Error} When the API request fails or returns an error
463
+ */
464
+ async getLatestCommentList(params) {
465
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/get_latest_comment_list", {
466
+ method: "GET",
467
+ params,
468
+ });
469
+ return response;
470
+ }
471
+ /**
472
+ * Ban a user from commenting in a livestream session.
473
+ * Only available for TW, ID, TH regions.
474
+ *
475
+ * @param params - Parameters for banning a user
476
+ * @param params.session_id - The identifier of livestream session (required)
477
+ * @param params.user_id - User ID to ban (required)
478
+ *
479
+ * @returns A promise that resolves to the ban user comment response
480
+ *
481
+ * @throws {Error} When the API request fails or returns an error
482
+ */
483
+ async banUserComment(params) {
484
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/ban_user_comment", {
485
+ method: "POST",
486
+ body: params,
487
+ });
488
+ return response;
489
+ }
490
+ /**
491
+ * Unban a user from commenting in a livestream session.
492
+ * Only available for TW, ID, TH regions.
493
+ *
494
+ * @param params - Parameters for unbanning a user
495
+ * @param params.session_id - The identifier of livestream session (required)
496
+ * @param params.user_id - User ID to unban (required)
497
+ *
498
+ * @returns A promise that resolves to the unban user comment response
499
+ *
500
+ * @throws {Error} When the API request fails or returns an error
501
+ */
502
+ async unbanUserComment(params) {
503
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/unban_user_comment", {
504
+ method: "POST",
505
+ body: params,
506
+ });
507
+ return response;
508
+ }
509
+ /**
510
+ * Upload an image for use in livestream (e.g., cover image).
511
+ * Only available for TW, ID, TH regions.
512
+ *
513
+ * @param params - Parameters for uploading an image
514
+ * @param params.image - The image file to upload (required)
515
+ *
516
+ * @returns A promise that resolves to the upload image response containing:
517
+ * - image_url: The uploaded image URL
518
+ *
519
+ * @throws {Error} When the API request fails or returns an error
520
+ */
521
+ async uploadImage(params) {
522
+ const response = await ShopeeFetch.fetch(this.config, "/livestream/upload_image", {
523
+ method: "POST",
524
+ body: params,
525
+ });
526
+ return response;
527
+ }
528
+ }
529
+ //# sourceMappingURL=livestream.manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"livestream.manager.js","sourceRoot":"","sources":["../../src/managers/livestream.manager.ts"],"names":[],"mappings":"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"}