@gofynd/fdk-client-javascript 1.4.8-beta.3 → 1.4.9

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 (189) hide show
  1. package/README.md +26 -1
  2. package/package.json +2 -2
  3. package/sdk/application/ApplicationClient.d.ts +8 -0
  4. package/sdk/application/ApplicationClient.js +14 -0
  5. package/sdk/application/Cart/CartApplicationClient.d.ts +20 -20
  6. package/sdk/application/Cart/CartApplicationClient.js +20 -20
  7. package/sdk/application/Cart/CartApplicationModel.d.ts +2446 -664
  8. package/sdk/application/Cart/CartApplicationModel.js +783 -552
  9. package/sdk/application/Cart/CartApplicationValidator.d.ts +268 -194
  10. package/sdk/application/Cart/CartApplicationValidator.js +100 -114
  11. package/sdk/application/Catalog/CatalogApplicationClient.d.ts +53 -53
  12. package/sdk/application/Catalog/CatalogApplicationClient.js +53 -53
  13. package/sdk/application/Catalog/CatalogApplicationModel.d.ts +2012 -503
  14. package/sdk/application/Catalog/CatalogApplicationModel.js +603 -453
  15. package/sdk/application/Catalog/CatalogApplicationValidator.d.ts +64 -64
  16. package/sdk/application/Catalog/CatalogApplicationValidator.js +32 -32
  17. package/sdk/application/Common/CommonApplicationClient.d.ts +2 -2
  18. package/sdk/application/Common/CommonApplicationClient.js +2 -2
  19. package/sdk/application/Common/CommonApplicationModel.d.ts +170 -90
  20. package/sdk/application/Common/CommonApplicationModel.js +59 -58
  21. package/sdk/application/Common/CommonApplicationValidator.d.ts +8 -5
  22. package/sdk/application/Common/CommonApplicationValidator.js +3 -3
  23. package/sdk/application/Communication/CommunicationApplicationClient.d.ts +2 -2
  24. package/sdk/application/Communication/CommunicationApplicationClient.js +2 -2
  25. package/sdk/application/Communication/CommunicationApplicationModel.d.ts +170 -35
  26. package/sdk/application/Communication/CommunicationApplicationModel.js +54 -33
  27. package/sdk/application/Configuration/ConfigurationApplicationClient.d.ts +15 -15
  28. package/sdk/application/Configuration/ConfigurationApplicationClient.js +15 -15
  29. package/sdk/application/Configuration/ConfigurationApplicationModel.d.ts +624 -443
  30. package/sdk/application/Configuration/ConfigurationApplicationModel.js +259 -248
  31. package/sdk/application/Configuration/ConfigurationApplicationValidator.d.ts +32 -24
  32. package/sdk/application/Configuration/ConfigurationApplicationValidator.js +14 -13
  33. package/sdk/application/Content/ContentApplicationClient.d.ts +16 -16
  34. package/sdk/application/Content/ContentApplicationClient.js +16 -16
  35. package/sdk/application/Content/ContentApplicationModel.d.ts +1205 -282
  36. package/sdk/application/Content/ContentApplicationModel.js +341 -277
  37. package/sdk/application/Content/ContentApplicationValidator.d.ts +28 -17
  38. package/sdk/application/Content/ContentApplicationValidator.js +11 -10
  39. package/sdk/application/FileStorage/FileStorageApplicationClient.d.ts +3 -3
  40. package/sdk/application/FileStorage/FileStorageApplicationClient.js +3 -3
  41. package/sdk/application/FileStorage/FileStorageApplicationModel.d.ts +146 -37
  42. package/sdk/application/FileStorage/FileStorageApplicationModel.js +38 -36
  43. package/sdk/application/Lead/LeadApplicationClient.d.ts +3 -3
  44. package/sdk/application/Lead/LeadApplicationClient.js +3 -3
  45. package/sdk/application/Lead/LeadApplicationModel.d.ts +195 -134
  46. package/sdk/application/Lead/LeadApplicationModel.js +110 -67
  47. package/sdk/application/Lead/LeadApplicationValidator.d.ts +8 -8
  48. package/sdk/application/Lead/LeadApplicationValidator.js +4 -4
  49. package/sdk/application/Logistic/LogisticApplicationClient.d.ts +10 -10
  50. package/sdk/application/Logistic/LogisticApplicationClient.js +10 -10
  51. package/sdk/application/Logistic/LogisticApplicationModel.d.ts +1039 -221
  52. package/sdk/application/Logistic/LogisticApplicationModel.js +342 -199
  53. package/sdk/application/Logistic/LogisticApplicationValidator.d.ts +76 -82
  54. package/sdk/application/Logistic/LogisticApplicationValidator.js +38 -41
  55. package/sdk/application/Order/OrderApplicationClient.d.ts +10 -10
  56. package/sdk/application/Order/OrderApplicationClient.js +10 -10
  57. package/sdk/application/Order/OrderApplicationModel.d.ts +1400 -325
  58. package/sdk/application/Order/OrderApplicationModel.js +391 -317
  59. package/sdk/application/Order/OrderApplicationValidator.d.ts +32 -30
  60. package/sdk/application/Order/OrderApplicationValidator.js +15 -14
  61. package/sdk/application/Payment/PaymentApplicationClient.d.ts +43 -43
  62. package/sdk/application/Payment/PaymentApplicationClient.js +43 -43
  63. package/sdk/application/Payment/PaymentApplicationModel.d.ts +1111 -1022
  64. package/sdk/application/Payment/PaymentApplicationModel.js +537 -521
  65. package/sdk/application/Payment/PaymentApplicationValidator.d.ts +82 -49
  66. package/sdk/application/Payment/PaymentApplicationValidator.js +30 -30
  67. package/sdk/application/Rewards/RewardsApplicationModel.d.ts +28 -7
  68. package/sdk/application/Rewards/RewardsApplicationModel.js +7 -7
  69. package/sdk/application/Share/ShareApplicationModel.d.ts +178 -38
  70. package/sdk/application/Share/ShareApplicationModel.js +53 -37
  71. package/sdk/application/Share/ShareApplicationValidator.d.ts +4 -2
  72. package/sdk/application/Share/ShareApplicationValidator.js +2 -1
  73. package/sdk/application/Theme/ThemeApplicationClient.d.ts +4 -4
  74. package/sdk/application/Theme/ThemeApplicationClient.js +14 -8
  75. package/sdk/application/Theme/ThemeApplicationModel.d.ts +528 -287
  76. package/sdk/application/Theme/ThemeApplicationModel.js +208 -172
  77. package/sdk/application/Theme/ThemeApplicationValidator.d.ts +17 -12
  78. package/sdk/application/Theme/ThemeApplicationValidator.js +8 -6
  79. package/sdk/application/User/UserApplicationClient.d.ts +36 -36
  80. package/sdk/application/User/UserApplicationClient.js +36 -36
  81. package/sdk/application/User/UserApplicationModel.d.ts +1062 -255
  82. package/sdk/application/User/UserApplicationModel.js +298 -244
  83. package/sdk/application/User/UserApplicationValidator.d.ts +80 -80
  84. package/sdk/application/User/UserApplicationValidator.js +40 -40
  85. package/sdk/application/Webhook/WebhookApplicationClient.d.ts +1 -1
  86. package/sdk/application/Webhook/WebhookApplicationClient.js +1 -1
  87. package/sdk/application/Webhook/WebhookApplicationModel.d.ts +20 -5
  88. package/sdk/application/Webhook/WebhookApplicationModel.js +5 -5
  89. package/sdk/common/Clickstream.js +95 -15
  90. package/sdk/common/Constant.d.ts +9 -0
  91. package/sdk/common/Constant.js +11 -0
  92. package/sdk/common/Utility.js +19 -0
  93. package/sdk/common/utils.js +8 -1
  94. package/sdk/partner/Lead/LeadPartnerModel.d.ts +28 -7
  95. package/sdk/partner/Lead/LeadPartnerModel.js +7 -7
  96. package/sdk/partner/Logistics/LogisticsPartnerModel.d.ts +28 -7
  97. package/sdk/partner/Logistics/LogisticsPartnerModel.js +7 -7
  98. package/sdk/partner/PartnerClient.d.ts +8 -0
  99. package/sdk/partner/PartnerClient.js +14 -0
  100. package/sdk/partner/Theme/ThemePartnerClient.d.ts +20 -0
  101. package/sdk/partner/Theme/ThemePartnerClient.js +158 -0
  102. package/sdk/partner/Theme/ThemePartnerModel.d.ts +45 -6
  103. package/sdk/partner/Theme/ThemePartnerModel.js +33 -4
  104. package/sdk/partner/Theme/ThemePartnerValidator.d.ts +2 -0
  105. package/sdk/partner/Theme/ThemePartnerValidator.js +14 -0
  106. package/sdk/partner/Webhook/WebhookPartnerModel.d.ts +28 -7
  107. package/sdk/partner/Webhook/WebhookPartnerModel.js +7 -7
  108. package/sdk/platform/Analytics/AnalyticsPlatformModel.d.ts +28 -7
  109. package/sdk/platform/Analytics/AnalyticsPlatformModel.js +7 -7
  110. package/sdk/platform/Billing/BillingPlatformClient.d.ts +6 -397
  111. package/sdk/platform/Billing/BillingPlatformClient.js +77 -3215
  112. package/sdk/platform/Billing/BillingPlatformModel.d.ts +621 -2021
  113. package/sdk/platform/Billing/BillingPlatformModel.js +353 -2405
  114. package/sdk/platform/Billing/BillingPlatformValidator.d.ts +12 -451
  115. package/sdk/platform/Billing/BillingPlatformValidator.js +8 -483
  116. package/sdk/platform/Cart/CartPlatformModel.d.ts +28 -7
  117. package/sdk/platform/Cart/CartPlatformModel.js +8 -8
  118. package/sdk/platform/Catalog/CatalogPlatformClient.d.ts +12 -2
  119. package/sdk/platform/Catalog/CatalogPlatformClient.js +41 -1
  120. package/sdk/platform/Catalog/CatalogPlatformModel.d.ts +46 -12
  121. package/sdk/platform/Catalog/CatalogPlatformModel.js +14 -11
  122. package/sdk/platform/Catalog/CatalogPlatformValidator.d.ts +40 -0
  123. package/sdk/platform/Catalog/CatalogPlatformValidator.js +17 -0
  124. package/sdk/platform/Communication/CommunicationPlatformModel.d.ts +28 -7
  125. package/sdk/platform/Communication/CommunicationPlatformModel.js +7 -7
  126. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.d.ts +28 -7
  127. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.js +7 -7
  128. package/sdk/platform/Configuration/ConfigurationPlatformClient.d.ts +0 -97
  129. package/sdk/platform/Configuration/ConfigurationPlatformClient.js +77 -782
  130. package/sdk/platform/Configuration/ConfigurationPlatformModel.d.ts +24 -701
  131. package/sdk/platform/Configuration/ConfigurationPlatformModel.js +7 -539
  132. package/sdk/platform/Configuration/ConfigurationPlatformValidator.d.ts +1 -183
  133. package/sdk/platform/Configuration/ConfigurationPlatformValidator.js +0 -134
  134. package/sdk/platform/Content/ContentPlatformApplicationClient.d.ts +0 -10
  135. package/sdk/platform/Content/ContentPlatformApplicationClient.js +0 -79
  136. package/sdk/platform/Content/ContentPlatformApplicationValidator.d.ts +1 -15
  137. package/sdk/platform/Content/ContentPlatformApplicationValidator.js +0 -13
  138. package/sdk/platform/Content/ContentPlatformModel.d.ts +58 -17
  139. package/sdk/platform/Content/ContentPlatformModel.js +28 -15
  140. package/sdk/platform/Discount/DiscountPlatformModel.d.ts +28 -7
  141. package/sdk/platform/Discount/DiscountPlatformModel.js +7 -7
  142. package/sdk/platform/FileStorage/FileStoragePlatformModel.d.ts +127 -25
  143. package/sdk/platform/FileStorage/FileStoragePlatformModel.js +37 -25
  144. package/sdk/platform/Finance/FinancePlatformClient.d.ts +28 -28
  145. package/sdk/platform/Finance/FinancePlatformClient.js +28 -28
  146. package/sdk/platform/Finance/FinancePlatformModel.d.ts +1583 -347
  147. package/sdk/platform/Finance/FinancePlatformModel.js +463 -351
  148. package/sdk/platform/Lead/LeadPlatformModel.d.ts +28 -7
  149. package/sdk/platform/Lead/LeadPlatformModel.js +7 -7
  150. package/sdk/platform/Order/OrderPlatformClient.d.ts +22 -0
  151. package/sdk/platform/Order/OrderPlatformClient.js +165 -0
  152. package/sdk/platform/Order/OrderPlatformModel.d.ts +613 -39
  153. package/sdk/platform/Order/OrderPlatformModel.js +359 -41
  154. package/sdk/platform/Order/OrderPlatformValidator.d.ts +32 -1
  155. package/sdk/platform/Order/OrderPlatformValidator.js +28 -0
  156. package/sdk/platform/Payment/PaymentPlatformModel.d.ts +30 -9
  157. package/sdk/platform/Payment/PaymentPlatformModel.js +9 -9
  158. package/sdk/platform/PlatformClient.d.ts +8 -0
  159. package/sdk/platform/PlatformClient.js +14 -0
  160. package/sdk/platform/Rewards/RewardsPlatformModel.d.ts +28 -7
  161. package/sdk/platform/Rewards/RewardsPlatformModel.js +7 -7
  162. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.d.ts +12 -9
  163. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.js +12 -9
  164. package/sdk/platform/Serviceability/ServiceabilityPlatformModel.d.ts +120 -22
  165. package/sdk/platform/Serviceability/ServiceabilityPlatformModel.js +76 -21
  166. package/sdk/platform/Share/SharePlatformModel.d.ts +28 -7
  167. package/sdk/platform/Share/SharePlatformModel.js +7 -7
  168. package/sdk/platform/Theme/ThemePlatformModel.d.ts +18 -5
  169. package/sdk/platform/Theme/ThemePlatformModel.js +7 -4
  170. package/sdk/platform/User/UserPlatformModel.d.ts +18 -18
  171. package/sdk/platform/User/UserPlatformModel.js +9 -9
  172. package/sdk/platform/Webhook/WebhookPlatformModel.d.ts +28 -7
  173. package/sdk/platform/Webhook/WebhookPlatformModel.js +7 -7
  174. package/sdk/public/PublicClient.d.ts +0 -4
  175. package/sdk/public/PublicClient.js +0 -8
  176. package/sdk/public/index.d.ts +0 -2
  177. package/sdk/public/index.js +0 -4
  178. package/sdk/public/Billing/BillingPublicClient.d.ts +0 -45
  179. package/sdk/public/Billing/BillingPublicClient.js +0 -269
  180. package/sdk/public/Billing/BillingPublicModel.d.ts +0 -434
  181. package/sdk/public/Billing/BillingPublicModel.js +0 -395
  182. package/sdk/public/Billing/BillingPublicValidator.d.ts +0 -34
  183. package/sdk/public/Billing/BillingPublicValidator.js +0 -38
  184. package/sdk/public/Inventory/InventoryPublicClient.d.ts +0 -87
  185. package/sdk/public/Inventory/InventoryPublicClient.js +0 -529
  186. package/sdk/public/Inventory/InventoryPublicModel.d.ts +0 -393
  187. package/sdk/public/Inventory/InventoryPublicModel.js +0 -448
  188. package/sdk/public/Inventory/InventoryPublicValidator.d.ts +0 -91
  189. package/sdk/public/Inventory/InventoryPublicValidator.js +0 -85
@@ -2,31 +2,37 @@ const Joi = require("joi");
2
2
 
3
3
  /**
4
4
  * @typedef OrederFreezeResponse
5
- * @property {boolean} [success]
6
- * @property {boolean} [oms_freeze]
7
- * @property {string} [source]
5
+ * @property {boolean} [success] - Indicates whether the operation was successful or not.
6
+ * @property {boolean} [oms_freeze] - Flag indicating if the system is frozen
7
+ * for order management.
8
+ * @property {string} [source] - Optional field indicating the data source of
9
+ * the information.
8
10
  */
9
11
 
10
12
  /**
11
13
  * @typedef GenerateReportMeta
12
- * @property {string} [brand]
13
- * @property {string} [company]
14
- * @property {string} [channel]
14
+ * @property {string} [brand] - The brand name associated with the report meta
15
+ * information.
16
+ * @property {string} [company] - The company name associated with the report
17
+ * meta information.
18
+ * @property {string} [channel] - The sale channel name associated with seller.
15
19
  */
16
20
 
17
21
  /**
18
22
  * @typedef GenerateReportFilters
19
- * @property {string[]} [brand]
20
- * @property {string[]} [company]
21
- * @property {string[]} [channel]
23
+ * @property {string[]} [brand] - An array of brand names to filter the report data.
24
+ * @property {string[]} [company] - An array of company id to filter the report data.
25
+ * @property {string[]} [channel] - An array of sale channel names associated
26
+ * with seller to filter the report data.
22
27
  */
23
28
 
24
29
  /**
25
30
  * @typedef GenerateReportPlatform
26
- * @property {string} [start_date]
27
- * @property {string} [end_date]
31
+ * @property {string} [start_date] - The start date to generate report specific preiod.
32
+ * @property {string} [end_date] - The end date to generate report specific preiod.
28
33
  * @property {GenerateReportMeta} [meta]
29
- * @property {string} [report_id]
34
+ * @property {string} [report_id] - The unique identifier of the generate report
35
+ * where different report configure.
30
36
  * @property {GenerateReportFilters} [filters]
31
37
  */
32
38
 
@@ -37,31 +43,32 @@ const Joi = require("joi");
37
43
 
38
44
  /**
39
45
  * @typedef Page
40
- * @property {number} [item_total]
41
- * @property {string} [next_id]
42
- * @property {boolean} [has_previous]
43
- * @property {boolean} [has_next]
44
- * @property {number} [current]
45
- * @property {string} type
46
- * @property {number} [size]
46
+ * @property {number} [item_total] - The total number of items on the page.
47
+ * @property {string} [next_id] - The identifier for the next page.
48
+ * @property {boolean} [has_previous] - Indicates whether there is a previous page.
49
+ * @property {boolean} [has_next] - Indicates whether there is a next page.
50
+ * @property {number} [current] - The current page number.
51
+ * @property {string} type - The type of the page, such as 'PageType'.
52
+ * @property {number} [size] - The number of items per page.
47
53
  */
48
54
 
49
55
  /**
50
56
  * @typedef Currency
51
- * @property {string} [code]
52
- * @property {string} [symbol]
53
- * @property {string} [name]
57
+ * @property {string} [code] - The unique currency code.
58
+ * @property {string} [symbol] - The unique currency symbol.
59
+ * @property {string} [name] - The unique currency name.
54
60
  */
55
61
 
56
62
  /**
57
63
  * @typedef GenerateReportJson
58
64
  * @property {Object} [data]
59
- * @property {number} [item_count]
65
+ * @property {number} [item_count] - Total number of items in the report.
60
66
  * @property {Page} [page]
61
- * @property {string} [end_date]
62
- * @property {string} [start_date]
63
- * @property {string[][]} [items]
64
- * @property {string[]} [headers]
67
+ * @property {string} [end_date] - The end date to generate report specific preiod.
68
+ * @property {string} [start_date] - The start date to generate report specific preiod.
69
+ * @property {string[][]} [items] - Nested array structure representing report
70
+ * items or data.
71
+ * @property {string[]} [headers] - Headers describing each item in the report data.
65
72
  */
66
73
 
67
74
  /**
@@ -96,47 +103,50 @@ const Joi = require("joi");
96
103
 
97
104
  /**
98
105
  * @typedef DownloadReportData
99
- * @property {number} [page]
100
- * @property {number} [page_size]
101
- * @property {string} [start_date]
102
- * @property {string} [end_date]
106
+ * @property {number} [page] - The current page number of the report.
107
+ * @property {number} [page_size] - The number of items displayed per page.
108
+ * @property {string} [start_date] - The start date for fetching the report
109
+ * history for download.
110
+ * @property {string} [end_date] - The end date for fetching the report history
111
+ * for download.
103
112
  */
104
113
 
105
114
  /**
106
115
  * @typedef DownloadReportItems
107
- * @property {string} [start_date]
108
- * @property {string} [end_date]
116
+ * @property {string} [start_date] - The start date for the report item.
117
+ * @property {string} [end_date] - The end date for the report item.
109
118
  * @property {GenerateReportMeta} [meta]
110
- * @property {string} [report_id]
119
+ * @property {string} [report_id] - The unique identifier of the report item.
111
120
  * @property {GenerateReportFilters} [filters]
112
- * @property {string} [type_of_request]
113
121
  */
114
122
 
115
123
  /**
116
124
  * @typedef DownloadReportList
117
- * @property {DownloadReportItems[]} [items]
125
+ * @property {DownloadReportItems[]} [items] - A list of report items available
126
+ * for download.
118
127
  * @property {Page} [page]
119
- * @property {number} [item_count]
128
+ * @property {number} [item_count] - The total number of items in the report list.
120
129
  */
121
130
 
122
131
  /**
123
132
  * @typedef GetEngineFilters
124
- * @property {string} [config_field]
125
- * @property {string} [status]
126
- * @property {boolean} [is_active]
127
- * @property {string} [seller_id]
133
+ * @property {string} [config_field] - The configuration field used for filtering.
134
+ * @property {string} [status] - The status used for filtering.
135
+ * @property {boolean} [is_active] - Flag indicating if the filter is active.
136
+ * @property {string} [seller_id] - The seller ID used for filtering.
128
137
  */
129
138
 
130
139
  /**
131
140
  * @typedef GetEngineData
132
- * @property {string} [status]
141
+ * @property {string} [status] - Status of the request.
133
142
  * @property {GetEngineFilters} [filters]
134
- * @property {string[]} [project]
135
- * @property {string} [table_name]
136
- * @property {Object} [search]
137
- * @property {number} [page]
138
- * @property {number} [page_size]
139
- * @property {string} [order_by]
143
+ * @property {string[]} [project] - A list of fields to get data from tables.
144
+ * @property {string} [table_name] - The name of the table from which to retrieve data.
145
+ * @property {Object} [search] - Search criteria for querying on given table
146
+ * specific fields.
147
+ * @property {number} [page] - The current page number for pagination.
148
+ * @property {number} [page_size] - The number of items displayed per page.
149
+ * @property {string} [order_by] - The field by which to order the results.
140
150
  */
141
151
 
142
152
  /**
@@ -146,15 +156,15 @@ const Joi = require("joi");
146
156
 
147
157
  /**
148
158
  * @typedef GetEngineResponse
149
- * @property {boolean} [success]
150
- * @property {Object[]} [items]
159
+ * @property {boolean} [success] - Indicates whether the request was successful.
160
+ * @property {Object[]} [items] - A list of items returned by the request.
151
161
  * @property {Page} [page]
152
- * @property {number} [item_count]
162
+ * @property {number} [item_count] - The total number of items returned by the request.
153
163
  */
154
164
 
155
165
  /**
156
166
  * @typedef GetReason
157
- * @property {string} [reason_type]
167
+ * @property {string} [reason_type] - The type of reason associated with the request.
158
168
  */
159
169
 
160
170
  /**
@@ -164,23 +174,24 @@ const Joi = require("joi");
164
174
 
165
175
  /**
166
176
  * @typedef ReasonItem
167
- * @property {string} [id]
168
- * @property {string} [name]
169
- * @property {string} [display_name]
177
+ * @property {string} [id] - Id of the reason for reason_type.
178
+ * @property {string} [name] - Code of the reason for reason_type.
179
+ * @property {string} [display_name] - Display name of the reason for reason_type.
170
180
  */
171
181
 
172
182
  /**
173
183
  * @typedef GetReasonResponse
174
- * @property {boolean} [success]
175
- * @property {ReasonItem[]} [item_list]
176
- * @property {number} [item_count]
184
+ * @property {boolean} [success] - Indicates whether the request was successfull.
185
+ * @property {ReasonItem[]} [item_list] - The list of items returned in the response.
186
+ * @property {number} [item_count] - The number of items in the response.
177
187
  * @property {Page} [page]
178
188
  */
179
189
 
180
190
  /**
181
191
  * @typedef GetReportListData
182
- * @property {string} [role_name]
183
- * @property {boolean} [listing_enabled]
192
+ * @property {string} [role_name] - The name of the role requesting the report list.
193
+ * @property {boolean} [listing_enabled] - Indicates whether listing is enabled
194
+ * for the role.
184
195
  */
185
196
 
186
197
  /**
@@ -188,40 +199,43 @@ const Joi = require("joi");
188
199
  * @property {GetReportListData} [data]
189
200
  */
190
201
 
191
- /**
192
- * @typedef GetAffiliate
193
- * @property {number} [company_id]
194
- */
195
-
196
202
  /**
197
203
  * @typedef GetReportListResponse
198
- * @property {boolean} [success]
199
- * @property {ReportItem[]} [items]
204
+ * @property {boolean} [success] - Indicates whether the request was successful.
205
+ * @property {ReportItem[]} [items] - The list of report items.
200
206
  * @property {Page} [page]
201
- * @property {number} [total_count]
207
+ * @property {number} [total_count] - The total number of items in the report list.
202
208
  */
203
209
 
204
210
  /**
205
211
  * @typedef ReportItem
206
- * @property {string} [id]
207
- * @property {string} [name]
208
- * @property {string} [description]
209
- * @property {string[]} [allowed_filters]
210
- * @property {Object} [config_meta]
211
- * @property {string} [report_type]
212
- * @property {string} [display_date]
212
+ * @property {string} [id] - The unique identifier for the report item.
213
+ * @property {string} [name] - The name of the report item.
214
+ * @property {string} [description] - A brief description of the report item.
215
+ * @property {string[]} [allowed_filters] - The filters that can be applied to
216
+ * the report item.
217
+ * @property {Object} [config_meta] - Metadata related to the report item configuration.
218
+ * @property {string} [report_type] - The type of the report item.
219
+ * @property {string} [display_date] - The display date of the report item, if applicable.
220
+ */
221
+
222
+ /**
223
+ * @typedef GetAffiliate
224
+ * @property {number} [company_id] - The unique identifier of the company
225
+ * associated with the affiliate.
213
226
  */
214
227
 
215
228
  /**
216
229
  * @typedef GetAffiliateResponse
217
- * @property {string} [reason]
218
- * @property {boolean} [success]
219
- * @property {Object[]} [docs]
230
+ * @property {string} [reason] - The reason for the response, if applicable.
231
+ * @property {boolean} [success] - Indicates whether the request was successful.
232
+ * @property {Object[]} [docs] - List of items or data related to the affiliate.
220
233
  */
221
234
 
222
235
  /**
223
236
  * @typedef DownloadCreditDebitNote
224
- * @property {string[]} [note_id]
237
+ * @property {string[]} [note_id] - List of unique identifiers for the
238
+ * credit/debit notes to be download.
225
239
  */
226
240
 
227
241
  /**
@@ -231,33 +245,38 @@ const Joi = require("joi");
231
245
 
232
246
  /**
233
247
  * @typedef DownloadCreditDebitNoteResponseData
234
- * @property {string} [id]
235
- * @property {string} [pdf_s3_url]
248
+ * @property {string} [id] - The unique identifier of the download credit/debit note.
249
+ * @property {string} [pdf_s3_url] - The URL where the PDF of the credit/debit
250
+ * note is stored.
236
251
  */
237
252
 
238
253
  /**
239
254
  * @typedef DownloadCreditDebitNoteResponse
240
- * @property {boolean} [success]
241
- * @property {DownloadCreditDebitNoteResponseData[]} [data]
255
+ * @property {boolean} [success] - Indicates whether the request to download the
256
+ * credit/debit notes was successful.
257
+ * @property {DownloadCreditDebitNoteResponseData[]} [data] - List of
258
+ * credit/debit notes download data.
242
259
  */
243
260
 
244
261
  /**
245
262
  * @typedef InvoiceBillingItem
246
- * @property {string} [invoice_number]
247
- * @property {number} [amount]
263
+ * @property {string} [invoice_number] - The number of the invoice associated
264
+ * with the billing item.
265
+ * @property {number} [amount] - The amount of the billing item.
248
266
  */
249
267
 
250
268
  /**
251
269
  * @typedef PaymentProcessPayload
252
- * @property {string} [platform]
253
- * @property {number} [amount]
254
- * @property {string} [transaction_type]
255
- * @property {string} [source_reference]
256
- * @property {number} [total_amount]
257
- * @property {Object} [meta]
258
- * @property {string} [currency]
259
- * @property {string} [seller_id]
260
- * @property {string} [mode_of_payment]
270
+ * @property {string} [platform] - The platform through which the payment is processed.
271
+ * @property {number} [amount] - The total amount to be processed in the payment.
272
+ * @property {string} [transaction_type] - The type of transaction (e.g., seller_online).
273
+ * @property {string} [source_reference] - The reference for the source of the payment.
274
+ * @property {number} [total_amount] - The total amount to be processed in the payment.
275
+ * @property {Object} [meta] - Additional metadata related to the payment.
276
+ * @property {string} [currency] - The currency in which the payment is made.
277
+ * @property {string} [seller_id] - The unique identifier for the seller
278
+ * receiving the payment.
279
+ * @property {string} [mode_of_payment] - The mode of payment (e.g., online).
261
280
  * @property {InvoiceBillingItem[]} [invoice_billing_items]
262
281
  */
263
282
 
@@ -268,20 +287,24 @@ const Joi = require("joi");
268
287
 
269
288
  /**
270
289
  * @typedef PaymentProcessResponse
271
- * @property {number} [code]
272
- * @property {string} [message]
273
- * @property {Object} [meta]
274
- * @property {string} [transaction_id]
275
- * @property {string} [redirect_url]
290
+ * @property {number} [code] - Response code indicating the status of the payment process.
291
+ * @property {string} [message] - A message providing additional information
292
+ * about the payment process response.
293
+ * @property {Object} [meta] - Additional metadata related to the payment
294
+ * process response.
295
+ * @property {string} [transaction_id] - The unique identifier for the payment
296
+ * transaction.
297
+ * @property {string} [redirect_url] - URL to redirect the user to complete the
298
+ * payment process, if applicable.
276
299
  */
277
300
 
278
301
  /**
279
302
  * @typedef CreditlineDataPlatformPayload
280
- * @property {number} [page]
281
- * @property {string} [seller_id]
282
- * @property {string} [end_date]
283
- * @property {string} [start_date]
284
- * @property {number} [page_size]
303
+ * @property {number} [page] - The page number for pagination.
304
+ * @property {string} [seller_id] - The unique identifier for the seller.
305
+ * @property {string} [end_date] - The end date for the query.
306
+ * @property {string} [start_date] - The start date for the query.
307
+ * @property {number} [page_size] - The number of items per page.
285
308
  */
286
309
 
287
310
  /**
@@ -291,18 +314,20 @@ const Joi = require("joi");
291
314
 
292
315
  /**
293
316
  * @typedef CreditlineDataPlatformResponse
294
- * @property {Object[]} [items]
295
- * @property {number} [code]
296
- * @property {boolean} [show_mr]
317
+ * @property {Object[]} [items] - The list of items in the response.
318
+ * @property {number} [code] - The response status code.
319
+ * @property {boolean} [show_mr] - A flag indicating whether to show MR (some
320
+ * specific field).
297
321
  * @property {Page} [page]
298
- * @property {string} [message]
299
- * @property {string[]} [headers]
300
- * @property {number} [item_count]
322
+ * @property {string} [message] - The response message.
323
+ * @property {string[]} [headers] - The list of response headers.
324
+ * @property {number} [item_count] - The total number of items.
301
325
  */
302
326
 
303
327
  /**
304
328
  * @typedef IsCreditlinePayload
305
- * @property {string} [seller_id]
329
+ * @property {string} [seller_id] - The unique identifier for the seller to
330
+ * check for credit line eligibility.
306
331
  */
307
332
 
308
333
  /**
@@ -312,13 +337,15 @@ const Joi = require("joi");
312
337
 
313
338
  /**
314
339
  * @typedef IsCreditlinePlatformResponse
315
- * @property {boolean} [is_creditline_opted]
316
- * @property {number} [code]
340
+ * @property {boolean} [is_creditline_opted] - Indicates whether the seller has
341
+ * opted for a credit line.
342
+ * @property {number} [code] - Response code indicating the status of the credit
343
+ * line check.
317
344
  */
318
345
 
319
346
  /**
320
347
  * @typedef InvoiceTypePayloadData
321
- * @property {boolean} [is_active]
348
+ * @property {boolean} [is_active] - Indicates if the invoice type is active.
322
349
  */
323
350
 
324
351
  /**
@@ -328,31 +355,33 @@ const Joi = require("joi");
328
355
 
329
356
  /**
330
357
  * @typedef InvoiceTypeResponseItems
331
- * @property {string} [text]
332
- * @property {string} [value]
358
+ * @property {string} [text] - The text description of the invoice type.
359
+ * @property {string} [value] - The value or code representing the invoice type.
333
360
  */
334
361
 
335
362
  /**
336
363
  * @typedef InvoiceTypeResponse
337
- * @property {boolean} [success]
338
- * @property {InvoiceTypeResponseItems[]} [invoice_type_list]
339
- * @property {InvoiceTypeResponseItems[]} [payment_status_list]
364
+ * @property {boolean} [success] - Indicates whether the request was successful.
365
+ * @property {InvoiceTypeResponseItems[]} [invoice_type_list] - List of invoice
366
+ * types available.
367
+ * @property {InvoiceTypeResponseItems[]} [payment_status_list] - List of
368
+ * payment statuses available.
340
369
  */
341
370
 
342
371
  /**
343
372
  * @typedef InoviceListingPayloadDataFilters
344
- * @property {string[]} [payment_status]
345
- * @property {string[]} [invoice_type]
346
- * @property {string[]} [company_id]
373
+ * @property {string[]} [payment_status] - List of payment statuses to filter by.
374
+ * @property {string[]} [invoice_type] - List of invoice types to filter by.
375
+ * @property {string[]} [company_id] - List of company IDs to filter by.
347
376
  */
348
377
 
349
378
  /**
350
379
  * @typedef InvoiceListingPayloadData
351
- * @property {number} [page_size]
352
- * @property {number} [page]
353
- * @property {string} [start_date]
354
- * @property {string} [end_date]
355
- * @property {string} [search]
380
+ * @property {number} [page_size] - The number of items per page for pagination.
381
+ * @property {number} [page] - The page number for pagination.
382
+ * @property {string} [start_date] - The start date for the invoice listing filter.
383
+ * @property {string} [end_date] - The end date for the invoice listing filter.
384
+ * @property {string} [search] - Search term for filtering invoices.
356
385
  * @property {InoviceListingPayloadDataFilters} [filters]
357
386
  */
358
387
 
@@ -363,39 +392,43 @@ const Joi = require("joi");
363
392
 
364
393
  /**
365
394
  * @typedef UnpaidInvoiceDataItems
366
- * @property {number} [total_unpaid_invoice_count]
367
- * @property {string} [currency]
368
- * @property {number} [total_unpaid_amount]
395
+ * @property {number} [total_unpaid_invoice_count] - The total count of unpaid invoices.
396
+ * @property {string} [currency] - The currency used for unpaid invoices.
397
+ * @property {number} [total_unpaid_amount] - The total amount of unpaid invoices.
369
398
  */
370
399
 
371
400
  /**
372
401
  * @typedef InvoiceListingResponseItems
373
- * @property {number} [amount]
374
- * @property {string} [company]
375
- * @property {string} [status]
376
- * @property {string} [due_date]
377
- * @property {string} [invoice_date]
378
- * @property {string} [invoice_type]
379
- * @property {string} [period]
380
- * @property {string} [invoice_number]
381
- * @property {boolean} [is_downloadable]
382
- * @property {string} [invoice_id]
402
+ * @property {number} [amount] - The amount of the invoice.
403
+ * @property {string} [company] - The name of the company associated with the invoice.
404
+ * @property {string} [status] - The current status of the invoice (e.g.,
405
+ * 'paid', 'unpaid').
406
+ * @property {string} [due_date] - The due date of the invoice.
407
+ * @property {string} [invoice_date] - The date when the invoice was issued.
408
+ * @property {string} [invoice_type] - The type of invoice.
409
+ * @property {string} [period] - The period covered by the invoice.
410
+ * @property {string} [invoice_number] - The invoice number.
411
+ * @property {boolean} [is_downloadable] - Indicates if the invoice is available
412
+ * for download.
413
+ * @property {string} [invoice_id] - The unique identifier of the invoice.
383
414
  * @property {Currency} [currency]
384
415
  */
385
416
 
386
417
  /**
387
418
  * @typedef InvoiceListingResponse
388
- * @property {boolean} [success]
389
- * @property {string[]} [headers]
419
+ * @property {boolean} [success] - Indicates whether the request was successful.
420
+ * @property {string[]} [headers] - Headers related to the invoice listing response.
390
421
  * @property {UnpaidInvoiceDataItems} [unpaid_invoice_data]
391
- * @property {InvoiceListingResponseItems[]} [items]
422
+ * @property {InvoiceListingResponseItems[]} [items] - List of invoice items in
423
+ * the response.
392
424
  * @property {Page} [page]
393
- * @property {number} [item_count]
425
+ * @property {number} [item_count] - The total number of invoice items in the response.
394
426
  */
395
427
 
396
428
  /**
397
429
  * @typedef InvoicePdfPayloadData
398
- * @property {string[]} [invoice_number]
430
+ * @property {string[]} [invoice_number] - List of invoice numbers for which
431
+ * PDFs are requested.
399
432
  */
400
433
 
401
434
  /**
@@ -405,16 +438,19 @@ const Joi = require("joi");
405
438
 
406
439
  /**
407
440
  * @typedef InvoicePdfResponse
408
- * @property {boolean} [success]
409
- * @property {string[]} [data]
410
- * @property {string[]} [error]
441
+ * @property {boolean} [success] - Indicates whether the PDF generation request
442
+ * was successful.
443
+ * @property {string[]} [data] - List of URLs or paths to the generated PDF files.
444
+ * @property {string[]} [error] - List of errors encountered while generating the PDFs.
411
445
  */
412
446
 
413
447
  /**
414
448
  * @typedef IsCnRefundMethodData
415
- * @property {string} [affiliate_id]
416
- * @property {boolean} [toggle_edit_required]
417
- * @property {number} [seller_id]
449
+ * @property {string} [affiliate_id] - The unique identifier of sale channels or
450
+ * application as affiliate_id associated with the seller.
451
+ * @property {boolean} [toggle_edit_required] - Indicates whether editing the
452
+ * refund method is required.
453
+ * @property {number} [seller_id] - Unique identifier for the seller.
418
454
  */
419
455
 
420
456
  /**
@@ -424,32 +460,40 @@ const Joi = require("joi");
424
460
 
425
461
  /**
426
462
  * @typedef IsCnRefundMethodResponseData
427
- * @property {boolean} [is_first_time_user]
463
+ * @property {boolean} [is_first_time_user] - Indicates whether the seller for
464
+ * specific sale channel is using the refund method for the first time.
428
465
  */
429
466
 
430
467
  /**
431
468
  * @typedef IsCnRefundMethodResponse
432
- * @property {boolean} [success]
469
+ * @property {boolean} [success] - Indicates whether the request to determine
470
+ * the refund method was successful.
433
471
  * @property {IsCnRefundMethodResponseData} [data]
434
472
  */
435
473
 
436
474
  /**
437
475
  * @typedef CreditNoteConfigNotificationEvents
438
- * @property {number} [expiration_reminder_to_customer]
476
+ * @property {number} [expiration_reminder_to_customer] - Number of days before
477
+ * the expiration date to send a reminder notification to the customer.
439
478
  */
440
479
 
441
480
  /**
442
481
  * @typedef CreateSellerCreditNoteConfig
443
- * @property {boolean} [is_cn_as_refund_method]
444
- * @property {string} [affiliate_id]
445
- * @property {string[]} [source_channel]
446
- * @property {number} [seller_id]
482
+ * @property {boolean} [is_cn_as_refund_method] - Indicates if the credit note
483
+ * is used as a refund method.
484
+ * @property {string} [affiliate_id] - The unique identifier of sale channels or
485
+ * application as affiliate_id associated with the seller.
486
+ * @property {string[]} [source_channel] - List of source channels associated
487
+ * with the credit note configuration.
488
+ * @property {number} [seller_id] - Unique identifier for the seller.
447
489
  * @property {CreditNoteConfigNotificationEvents} [notification_events]
448
- * @property {string} [sales_channel_name]
449
- * @property {string[]} [ordering_channel]
450
- * @property {number} [validity]
451
- * @property {string} [currency_type]
452
- * @property {string[]} [slug_values]
490
+ * @property {string} [sales_channel_name] - Name of the sales channel.
491
+ * @property {string[]} [ordering_channel] - List of ordering channels
492
+ * associated with the credit note configuration.
493
+ * @property {number} [validity] - Validity period of the credit note in days.
494
+ * @property {string} [currency_type] - Type of currency used for the credit note.
495
+ * @property {string[]} [slug_values] - List of slug values associated with the
496
+ * credit note configuration.
453
497
  */
454
498
 
455
499
  /**
@@ -459,15 +503,19 @@ const Joi = require("joi");
459
503
 
460
504
  /**
461
505
  * @typedef CreateSellerCreditNoteConfigResponse
462
- * @property {boolean} [success]
463
- * @property {string} [message]
506
+ * @property {boolean} [success] - Indicates if the credit note configuration
507
+ * creation was successful.
508
+ * @property {string} [message] - Additional information or message about the
509
+ * credit note configuration creation process.
464
510
  */
465
511
 
466
512
  /**
467
513
  * @typedef DeleteConfig
468
- * @property {string} [affiliate_id]
469
- * @property {string[]} [slug_values]
470
- * @property {number} [seller_id]
514
+ * @property {string} [affiliate_id] - The unique identifier of sale channels or
515
+ * application as affiliate_id associated with the seller.
516
+ * @property {string[]} [slug_values] - List of slug values associated with the
517
+ * credit note configuration.
518
+ * @property {number} [seller_id] - Unique identifier for the seller.
471
519
  */
472
520
 
473
521
  /**
@@ -477,25 +525,29 @@ const Joi = require("joi");
477
525
 
478
526
  /**
479
527
  * @typedef DeleteConfigResponse
480
- * @property {boolean} [success]
481
- * @property {string} [message]
528
+ * @property {boolean} [success] - Indicates if the configuration deletion was successful.
529
+ * @property {string} [message] - Additional information or message about the
530
+ * configuration deletion process.
482
531
  */
483
532
 
484
533
  /**
485
534
  * @typedef ChannelDisplayNameItems
486
- * @property {string} [key]
487
- * @property {string} [value]
535
+ * @property {string} [key] - The unique key identifying the channel.
536
+ * @property {string} [value] - The display name of the channel associated with the key.
488
537
  */
489
538
 
490
539
  /**
491
540
  * @typedef ChannelDisplayNameResponse
492
- * @property {boolean} [success]
493
- * @property {ChannelDisplayNameItems[]} [items]
541
+ * @property {boolean} [success] - Indicates if the retrieval of channel display
542
+ * names was successful.
543
+ * @property {ChannelDisplayNameItems[]} [items] - List of items containing
544
+ * key-value pairs for channel display names.
494
545
  */
495
546
 
496
547
  /**
497
548
  * @typedef CnReferenceNumber
498
- * @property {string} [cn_reference_number]
549
+ * @property {string} [cn_reference_number] - The unique reference number of the
550
+ * credit note.
499
551
  */
500
552
 
501
553
  /**
@@ -505,13 +557,16 @@ const Joi = require("joi");
505
557
 
506
558
  /**
507
559
  * @typedef GetPdfUrlViewResponseData
508
- * @property {string} [s3_pdf_link]
509
- * @property {string} [cn_reference_number]
560
+ * @property {string} [s3_pdf_link] - The URL link where credit nore pdf stored
561
+ * to view and download.
562
+ * @property {string} [cn_reference_number] - The unique reference number of the
563
+ * credit note.
510
564
  */
511
565
 
512
566
  /**
513
567
  * @typedef GetPdfUrlViewResponse
514
- * @property {boolean} [success]
568
+ * @property {boolean} [success] - Indicates if the retrieval of the pdf URL was
569
+ * successful.
515
570
  * @property {GetPdfUrlViewResponseData} [data]
516
571
  */
517
572
 
@@ -522,55 +577,65 @@ const Joi = require("joi");
522
577
 
523
578
  /**
524
579
  * @typedef CnDetails
525
- * @property {string} [staff_id]
526
- * @property {string} [expiry_date]
527
- * @property {string} [channel_of_issuance]
528
- * @property {string} [order_id]
529
- * @property {string} [date_issued]
530
- * @property {string} [ordering_channel]
531
- * @property {string} [shipment_id]
532
- * @property {string} [store_id]
533
- * @property {string} [invoice_number]
580
+ * @property {string} [staff_id] - ID of the staff member associated with the credit note.
581
+ * @property {string} [expiry_date] - Expiry date of the credit note.
582
+ * @property {string} [channel_of_issuance] - Channel through which the credit
583
+ * note was issued.
584
+ * @property {string} [order_id] - Order ID of order for which credit note created.
585
+ * @property {string} [date_issued] - Date when the credit note was issued.
586
+ * @property {string} [ordering_channel] - Ordering channel associated with the
587
+ * credit note.
588
+ * @property {string} [shipment_id] - Shipment Id associated with the credit note.
589
+ * @property {string} [store_id] - Store Id associated with the credit note.
590
+ * @property {string} [invoice_number] - Invoice number associated with the credit note.
534
591
  */
535
592
 
536
593
  /**
537
594
  * @typedef RedemptionDetails
538
- * @property {Object} [meta]
539
- * @property {string} [staff_id]
540
- * @property {string} [created_at]
541
- * @property {string} [order_id]
542
- * @property {string} [store_id]
543
- * @property {string} [shipment_id]
544
- * @property {string} [ordering_channel]
545
- * @property {number} [amount_debited]
546
- * @property {string} [invoice_number]
595
+ * @property {Object} [meta] - Additional metadata related to the redemption details.
596
+ * @property {string} [staff_id] - ID of the staff member who processed the redemption.
597
+ * @property {string} [created_at] - Date and time when the redemption was processed.
598
+ * @property {string} [order_id] - Order Id of the order associated with the redemption.
599
+ * @property {string} [store_id] - Store Id of the order associated with the redemption.
600
+ * @property {string} [shipment_id] - Shipment Id of the order associated with
601
+ * the redemption.
602
+ * @property {string} [ordering_channel] - Ordering channel associated with the
603
+ * redemption.
604
+ * @property {number} [amount_debited] - Amount debited from the credit note
605
+ * during redemption.
606
+ * @property {string} [invoice_number] - Invoice number associated with the redemption.
547
607
  */
548
608
 
549
609
  /**
550
610
  * @typedef CreditNoteDetails
551
- * @property {string} [currency]
552
- * @property {number} [current_amount_used]
553
- * @property {string} [cn_status]
554
- * @property {string} [customer_mobile_number]
555
- * @property {string} [cn_reference_number]
611
+ * @property {string} [currency] - Currency in which the credit note is issued.
612
+ * @property {number} [current_amount_used] - Current amount used from the credit note.
613
+ * @property {string} [cn_status] - Status of the credit note.
614
+ * @property {string} [customer_mobile_number] - Mobile number of the customer
615
+ * associated with the credit note.
616
+ * @property {string} [cn_reference_number] - Unique Credit number of the credit note.
556
617
  * @property {CnDetails} [cn_details]
557
- * @property {RedemptionDetails[]} [redemption_details]
558
- * @property {number} [remaining_cn_amount]
559
- * @property {number} [available_cn_balance]
560
- * @property {number} [cn_amount]
618
+ * @property {RedemptionDetails[]} [redemption_details] - List of redemption
619
+ * details associated with the credit note.
620
+ * @property {number} [remaining_cn_amount] - Remaining amount left in the credit note.
621
+ * @property {number} [available_cn_balance] - Available balance in the credit note.
622
+ * @property {number} [cn_amount] - Total amount of the credit note.
561
623
  */
562
624
 
563
625
  /**
564
626
  * @typedef CreditNoteDetailsResponse
565
- * @property {boolean} [success]
627
+ * @property {boolean} [success] - Indicates if the retrieval of credit note
628
+ * details was successful.
566
629
  * @property {CreditNoteDetails} [data]
567
630
  */
568
631
 
569
632
  /**
570
633
  * @typedef GetCustomerCreditBalance
571
- * @property {string} [affiliate_id]
572
- * @property {number} [seller_id]
573
- * @property {string} [customer_mobile_number]
634
+ * @property {string} [affiliate_id] - The unique identifier of sale channels or
635
+ * application as affiliate_id associated with the seller.
636
+ * @property {number} [seller_id] - Unique identifier for the seller.
637
+ * @property {string} [customer_mobile_number] - Mobile number of the customer
638
+ * for whom the credit balance is requested.
574
639
  */
575
640
 
576
641
  /**
@@ -580,13 +645,15 @@ const Joi = require("joi");
580
645
 
581
646
  /**
582
647
  * @typedef GetCustomerCreditBalanceResponseData
583
- * @property {string} [customer_mobile_number]
584
- * @property {number} [total_credited_balance]
648
+ * @property {string} [customer_mobile_number] - Mobile number of the customer.
649
+ * @property {number} [total_credited_balance] - Total credited balance
650
+ * available for the customer.
585
651
  */
586
652
 
587
653
  /**
588
654
  * @typedef GetCustomerCreditBalanceResponse
589
- * @property {boolean} [success]
655
+ * @property {boolean} [success] - Indicates if the retrieval of customer credit
656
+ * balance was successful.
590
657
  * @property {GetCustomerCreditBalanceResponseData} [data]
591
658
  */
592
659
 
@@ -597,51 +664,64 @@ const Joi = require("joi");
597
664
 
598
665
  /**
599
666
  * @typedef GetCnConfigResponseMeta
600
- * @property {string} [reason]
601
- * @property {string[]} [source_channel]
667
+ * @property {string} [reason] - Reason associated with the configuration response.
668
+ * @property {string[]} [source_channel] - List of source channels associated
669
+ * with the credit note configuration.
602
670
  */
603
671
 
604
672
  /**
605
673
  * @typedef GetCnConfigResponseData
606
- * @property {boolean} [is_cn_as_refund_method]
607
- * @property {string} [affiliate_id]
674
+ * @property {boolean} [is_cn_as_refund_method] - Indicates if the credit note
675
+ * is configured as a refund method.
676
+ * @property {string} [affiliate_id] - The unique identifier of sale channels or
677
+ * application as affiliate_id associated with the seller.
608
678
  * @property {Object} [meta]
609
- * @property {number} [seller_id]
679
+ * @property {number} [seller_id] - Unique identifier for the seller.
610
680
  * @property {CreditNoteConfigNotificationEvents} [notification_events]
611
- * @property {number} [validity]
612
- * @property {string[]} [redemption_ordering_channel]
613
- * @property {string} [currency_type]
681
+ * @property {number} [validity] - Validity period of the credit note
682
+ * configuration in days.
683
+ * @property {string[]} [redemption_ordering_channel] - List of ordering
684
+ * channels associated with credit note redemption.
685
+ * @property {string} [currency_type] - Type of currency used for the credit note.
614
686
  */
615
687
 
616
688
  /**
617
689
  * @typedef GetCnConfigResponse
618
- * @property {boolean} [success]
690
+ * @property {boolean} [success] - Indicates if the retrieval of credit note
691
+ * configuration was successful.
619
692
  * @property {GetCnConfigResponseData} [data]
620
693
  */
621
694
 
622
695
  /**
623
696
  * @typedef CnGenerateReportFilters
624
- * @property {string[]} [staff_id]
625
- * @property {string[]} [channel_of_issuance]
626
- * @property {string[]} [utilisation]
627
- * @property {string[]} [ordering_channel]
628
- * @property {number[]} [store_id]
629
- * @property {string[]} [type_of_transaction]
630
- * @property {string[]} [issuance_channel]
697
+ * @property {string[]} [staff_id] - Array of staff IDs for filtering credit note reports.
698
+ * @property {string[]} [channel_of_issuance] - Array of channels through which
699
+ * credit notes were issued.
700
+ * @property {string[]} [utilisation] - Array of utilisation types for filtering
701
+ * credit note reports.
702
+ * @property {string[]} [ordering_channel] - Array of ordering channels
703
+ * associated with credit note reports.
704
+ * @property {number[]} [store_id] - Array of store IDs for filtering credit note reports.
705
+ * @property {string[]} [type_of_transaction] - Array of transaction types for
706
+ * filtering credit note reports.
707
+ * @property {string[]} [issuance_channel] - Array of issuance channels for
708
+ * filtering credit note reports.
631
709
  */
632
710
 
633
711
  /**
634
712
  * @typedef CnGenerateReport
635
- * @property {number} [page]
636
- * @property {string} [end_date]
637
- * @property {number} [page_size]
713
+ * @property {number} [page] - Page number of the credit note report.
714
+ * @property {string} [end_date] - End date for filtering credit note data.
715
+ * @property {number} [page_size] - Number of items per page in the credit note report.
638
716
  * @property {CnGenerateReportFilters} [filters]
639
- * @property {string} [affiliate_id]
717
+ * @property {string} [affiliate_id] - The unique identifier of sale channels or
718
+ * application as affiliate_id associated with the seller.
640
719
  * @property {GenerateReportFilters} [meta]
641
- * @property {string} [search]
642
- * @property {string} [report_id]
643
- * @property {string} [search_type]
644
- * @property {string} [start_date]
720
+ * @property {string} [search] - Search query to filter credit note data by keyword.
721
+ * @property {string} [report_id] - Unique identifier for the credit note report.
722
+ * @property {string} [search_type] - Type of search criteria used for filtering
723
+ * credit note data.
724
+ * @property {string} [start_date] - Start date for filtering credit note data.
645
725
  */
646
726
 
647
727
  /**
@@ -651,29 +731,36 @@ const Joi = require("joi");
651
731
 
652
732
  /**
653
733
  * @typedef CnGenerateReportItems
654
- * @property {string} [expiry_date]
655
- * @property {string} [status]
656
- * @property {number} [total_amount]
657
- * @property {string} [order_id]
658
- * @property {string} [date_issued]
659
- * @property {string} [shipment_id]
660
- * @property {string} [invoice_number]
661
- * @property {string} [credit_note_number]
734
+ * @property {string} [expiry_date] - Expiry date of the credit note item.
735
+ * @property {string} [status] - Status of the credit note item.
736
+ * @property {number} [total_amount] - Total amount of the credit note item.
737
+ * @property {string} [order_id] - Order ID of the order associated with the
738
+ * credit note item.
739
+ * @property {string} [date_issued] - Date when the credit note item was issued.
740
+ * @property {string} [shipment_id] - Shipment ID of the order associated with
741
+ * the credit note item.
742
+ * @property {string} [invoice_number] - Invoice number associated with the
743
+ * credit note item.
744
+ * @property {string} [credit_note_number] - Unique number of the credit note item.
662
745
  */
663
746
 
664
747
  /**
665
748
  * @typedef GenerateReportCustomerCnResponseData
666
- * @property {boolean} [success]
667
- * @property {string} [message]
668
- * @property {CnGenerateReportItems[]} [items]
669
- * @property {Object} [row_header_display_order]
670
- * @property {string} [end_date]
749
+ * @property {boolean} [success] - Indicates if the credit note report
750
+ * generation was successful.
751
+ * @property {string} [message] - Additional message or information related to
752
+ * the credit note report.
753
+ * @property {CnGenerateReportItems[]} [items] - List of credit note items in the report.
754
+ * @property {Object} [row_header_display_order] - Display order for row headers
755
+ * in the report.
756
+ * @property {string} [end_date] - End date used in the credit note report.
671
757
  * @property {Page} [page]
672
- * @property {string[]} [headers]
673
- * @property {string[]} [primary_headers]
674
- * @property {string[]} [allowed_filters]
675
- * @property {string} [start_date]
676
- * @property {number} [item_count]
758
+ * @property {string[]} [headers] - Headers included in the credit note report.
759
+ * @property {string[]} [primary_headers] - Primary headers used in the credit
760
+ * note report.
761
+ * @property {string[]} [allowed_filters] - Allowed filters for the credit note report.
762
+ * @property {string} [start_date] - Start date used in the credit note report.
763
+ * @property {number} [item_count] - Total count of credit note items in the report.
677
764
  */
678
765
 
679
766
  /**
@@ -683,14 +770,17 @@ const Joi = require("joi");
683
770
 
684
771
  /**
685
772
  * @typedef CnDownloadReport
686
- * @property {number} [page]
687
- * @property {string} [start_date]
688
- * @property {string} [end_date]
689
- * @property {string} [affiliate_id]
690
- * @property {string} [search]
691
- * @property {string} [status]
692
- * @property {string} [search_type]
693
- * @property {number} [page_size]
773
+ * @property {number} [page] - Page number of the download report.
774
+ * @property {string} [start_date] - Start date for filtering credit note data
775
+ * in the report.
776
+ * @property {string} [end_date] - End date for filtering credit note data in the report.
777
+ * @property {string} [affiliate_id] - The unique identifier of sale channels or
778
+ * application as affiliate_id associated with the seller.
779
+ * @property {string} [search] - Search query to filter credit note data by keyword.
780
+ * @property {string} [status] - Status of the credit note data in the report.
781
+ * @property {string} [search_type] - Type of search criteria used for filtering
782
+ * credit note data.
783
+ * @property {number} [page_size] - Number of items per page in the download report.
694
784
  */
695
785
 
696
786
  /**
@@ -700,74 +790,77 @@ const Joi = require("joi");
700
790
 
701
791
  /**
702
792
  * @typedef DownloadReportResponseData
703
- * @property {string} [report_config_id]
704
- * @property {string} [full_name]
705
- * @property {string} [requested_by]
706
- * @property {string} [start_date]
707
- * @property {string} [end_date]
708
- * @property {Object} [request_dict]
709
- * @property {string} [download_link]
710
- * @property {string} [created_at]
711
- * @property {Object} [meta]
712
- * @property {string} [msg]
713
- * @property {string} [report_name]
714
- * @property {string} [status]
715
- * @property {string} [display_name]
716
- * @property {Object} [filters]
793
+ * @property {string} [report_config_id] - Unique identifier for the report configuration.
794
+ * @property {string} [full_name] - Full name associated with the report request.
795
+ * @property {string} [requested_by] - User who requested the report.
796
+ * @property {string} [start_date] - Start date used in the report.
797
+ * @property {string} [end_date] - End date used in the report.
798
+ * @property {Object} [request_dict] - Dictionary containing request parameters
799
+ * for the report.
800
+ * @property {string} [download_link] - Download link for accessing the generated report.
801
+ * @property {string} [created_at] - Date and time when the report was created.
802
+ * @property {Object} [meta] - Additional metadata associated with the report.
803
+ * @property {string} [msg] - Message related to the report status or generation.
804
+ * @property {string} [report_name] - Name of the generated report.
805
+ * @property {string} [status] - Status of the report.
806
+ * @property {string} [display_name] - Display name of the report.
807
+ * @property {Object} [filters] - Filters applied to generate the report.
717
808
  */
718
809
 
719
810
  /**
720
811
  * @typedef DownloadReportCustomerCnResponse
721
- * @property {DownloadReportResponseData[]} [items]
722
- * @property {DownloadReportResponseData[]} [data]
723
- * @property {number} [item_count]
812
+ * @property {DownloadReportResponseData[]} [items] - List of download report data items.
813
+ * @property {number} [item_count] - Total count of items in the download report.
724
814
  * @property {Page} [page]
725
815
  */
726
816
 
727
817
  /**
728
818
  * @typedef GetReportingFilters
729
- * @property {string} [text]
730
- * @property {string} [type]
731
- * @property {Object[]} [options]
732
- * @property {string} [value]
819
+ * @property {string} [text] - Display text for the filter.
820
+ * @property {string} [type] - Type of the fields like seach, filter(e.g.,
821
+ * single, multi select).
822
+ * @property {Object[]} [options] - Options available for the filter.
823
+ * @property {string} [value] - Value to be pass in response select from options.
733
824
  */
734
825
 
735
826
  /**
736
827
  * @typedef GetReportingNestedFilters
737
- * @property {string} [text]
738
- * @property {Object[]} [options]
739
- * @property {boolean} [required]
740
- * @property {string} [placeholder_text]
741
- * @property {string} [type]
742
- * @property {string} [value]
828
+ * @property {string} [text] - Display text for the nested filter.
829
+ * @property {Object[]} [options] - Options available for the nested filter.
830
+ * @property {boolean} [required] - Indicates if the nested filter is required.
831
+ * @property {string} [placeholder_text] - Placeholder text for the nested filter.
832
+ * @property {string} [type] - Type of the nested filter (e.g., single, multi select).
833
+ * @property {string} [value] - Value to be pass in response select from options.
743
834
  */
744
835
 
745
836
  /**
746
837
  * @typedef GetReportingFiltersReasonOptions
747
- * @property {string} [text]
748
- * @property {string} [value]
749
- * @property {string} [placeholder_text]
838
+ * @property {string} [text] - Display text for the reason option.
839
+ * @property {string} [value] - Value of the reason option.
840
+ * @property {string} [placeholder_text] - Placeholder text for the reason option.
750
841
  */
751
842
 
752
843
  /**
753
844
  * @typedef GetReportingFiltersReason
754
- * @property {string} [text]
755
- * @property {string} [type]
756
- * @property {string} [value]
757
- * @property {GetReportingFiltersReasonOptions[]} [options]
845
+ * @property {string} [text] - Display text for the reason.
846
+ * @property {string} [type] - Type of the reason.
847
+ * @property {string} [value] - Value to be pass in response.
848
+ * @property {GetReportingFiltersReasonOptions[]} [options] - Options available
849
+ * for the reasons select from options.
758
850
  */
759
851
 
760
852
  /**
761
853
  * @typedef GetReportingFiltersResponse
762
854
  * @property {GetReportingFiltersReason} [reason]
763
855
  * @property {GetReportingFilters} [search]
764
- * @property {GetReportingNestedFilters[]} [filters]
856
+ * @property {GetReportingNestedFilters[]} [filters] - Array of nested filter objects.
765
857
  * @property {GetReportingFilters} [status]
766
858
  */
767
859
 
768
860
  /**
769
861
  * @typedef InvoicePaymentOptionsPayloadData
770
- * @property {string[]} [invoice_numbers]
862
+ * @property {string[]} [invoice_numbers] - List of invoice numbers for which
863
+ * payment options are being requested.
771
864
  */
772
865
 
773
866
  /**
@@ -777,93 +870,115 @@ const Joi = require("joi");
777
870
 
778
871
  /**
779
872
  * @typedef InvoicePaymentOptionsResponsePayableAmounts
780
- * @property {number} [amount]
781
- * @property {string} [amount_key]
782
- * @property {string} [header]
873
+ * @property {number} [amount] - Amount that is payable for the invoice.
874
+ * @property {string} [amount_key] - Key associated with the payable amount for
875
+ * identification.
876
+ * @property {string} [header] - Header describing the payable amount.
783
877
  */
784
878
 
785
879
  /**
786
880
  * @typedef InvoicePaymentOptionsResponseDeductedAmounts
787
- * @property {number} [amount]
788
- * @property {string} [header]
789
- * @property {string} [amount_key]
790
- * @property {boolean} [is_payable]
791
- * @property {string} [symbol]
881
+ * @property {number} [amount] - Amount deducted from the invoice.
882
+ * @property {string} [header] - Header describing the deducted amount.
883
+ * @property {string} [amount_key] - Key associated with the deducted amount for
884
+ * identification.
885
+ * @property {boolean} [is_payable] - Indicates whether the deducted amount is payable.
886
+ * @property {string} [symbol] - Currency symbol associated with the deducted amount.
792
887
  */
793
888
 
794
889
  /**
795
890
  * @typedef InvoicePaymentOptionsResponseData
796
- * @property {string} [invoice_number]
797
- * @property {string} [invoice_type]
891
+ * @property {string} [invoice_number] - Invoice number for which payment
892
+ * options are provided.
893
+ * @property {string} [invoice_type] - Type of the invoice (e.g., 'Seller Fynd',
894
+ * 'Platform Subscription').
798
895
  * @property {InvoicePaymentOptionsResponsePayableAmounts[]} [display_amounts]
799
- * @property {Object} [total_amount]
800
- * @property {Object} [deducted_amounts]
896
+ * - List of amounts that are payable for the invoice.
897
+ *
898
+ * @property {Object} [total_amount] - Total amount for the invoice.
899
+ * @property {Object} [deducted_amounts] - Amounts deducted from the total,
900
+ * including any associated details.
801
901
  * @property {InvoicePaymentOptionsResponsePayableAmounts[]} [payable_amounts]
902
+ * - Amounts that are payable for the invoice.
903
+ *
802
904
  * @property {Currency} [currency]
803
905
  */
804
906
 
805
907
  /**
806
908
  * @typedef InvoicePaymentOptionsResponse
807
- * @property {string} [reason]
808
- * @property {InvoicePaymentOptionsResponseData[]} [data]
809
- * @property {number} [total_payable_amount]
810
- * @property {number} [invoice_count]
811
- * @property {boolean} [success]
909
+ * @property {string} [reason] - Reason for the response or any errors encountered.
910
+ * @property {InvoicePaymentOptionsResponseData[]} [data] - List of data objects
911
+ * containing details about invoice payment options.
912
+ * @property {number} [total_payable_amount] - Total amount payable for the invoices.
913
+ * @property {number} [invoice_count] - Number of invoices included in the response.
914
+ * @property {boolean} [success] - Indicates whether the request to retrieve
915
+ * invoice payment options was successful.
812
916
  */
813
917
 
814
918
  /**
815
919
  * @typedef PaymentDetail
816
- * @property {string} [display_name]
817
- * @property {string} [value]
920
+ * @property {string} [display_name] - Name or label displayed for the payment detail.
921
+ * @property {string} [value] - Value associated with the payment detail (e.g.,
922
+ * amount, transaction ID).
818
923
  */
819
924
 
820
925
  /**
821
926
  * @typedef PaidInvoicePaymentDetail
822
- * @property {PaymentDetail[]} [payment_details]
823
- * @property {string} [date_of_payment]
824
- * @property {number} [amount]
927
+ * @property {PaymentDetail[]} [payment_details] - List of payment details for
928
+ * the invoice.
929
+ * @property {string} [date_of_payment] - Date when the payment was made.
930
+ * @property {number} [amount] - Amount paid towards the invoice.
825
931
  */
826
932
 
827
933
  /**
828
934
  * @typedef InvoicePaymentDetailsResponseData
829
- * @property {PaidInvoicePaymentDetail[]} [paid_invoice_payment_details]
830
- * @property {Object[]} [failed_attempts_details]
935
+ * @property {PaidInvoicePaymentDetail[]} [paid_invoice_payment_details] - List
936
+ * of details for paid invoices.
937
+ * @property {Object[]} [failed_attempts_details] - Details of any failed
938
+ * payment attempts for the invoices.
831
939
  */
832
940
 
833
941
  /**
834
942
  * @typedef InvoicePaymentDetailsResponse
835
- * @property {string} [reason]
943
+ * @property {string} [reason] - Reason for the response or any errors encountered.
836
944
  * @property {InvoicePaymentDetailsResponseData} [data]
837
- * @property {boolean} [success]
838
- * @property {boolean} [payment_details_visible]
945
+ * @property {boolean} [success] - Indicates whether the request to retrieve
946
+ * invoice payment details was successful.
947
+ * @property {boolean} [payment_details_visible] - Indicates whether payment
948
+ * details are visible or hidden in the response.
839
949
  */
840
950
 
841
951
  /**
842
952
  * @typedef InvoiceActivityLogsResponseData
843
- * @property {string} [performed_by]
844
- * @property {string} [status]
845
- * @property {string} [reason]
846
- * @property {boolean} [is_resolved]
847
- * @property {number} [retry_attempts]
848
- * @property {number} [max_retry_attempts]
953
+ * @property {string} [performed_by] - Identifier of the user or system that
954
+ * performed the activity.
955
+ * @property {string} [status] - Status of the activity (e.g., 'Completed', 'Pending').
956
+ * @property {string} [reason] - Reason for the activity status or any related notes.
957
+ * @property {boolean} [is_resolved] - Indicates whether the activity issue is resolved.
958
+ * @property {number} [retry_attempts] - Number of retry attempts made for the activity.
959
+ * @property {number} [max_retry_attempts] - Maximum number of retry attempts
960
+ * allowed for the activity.
849
961
  */
850
962
 
851
963
  /**
852
964
  * @typedef InvoiceActivityLogsResponse
853
- * @property {InvoiceActivityLogsResponseData[]} [data]
965
+ * @property {InvoiceActivityLogsResponseData[]} [data] - List of activity logs
966
+ * related to invoices.
854
967
  */
855
968
 
856
969
  /**
857
970
  * @typedef InvoiceActivityLogError
858
- * @property {string} [reason]
971
+ * @property {string} [reason] - Reason for the error or issue encountered with
972
+ * the invoice activity logs.
859
973
  */
860
974
 
861
975
  /**
862
976
  * @typedef UnlockCreditNoteRequestData
863
- * @property {string} [seller_id]
864
- * @property {string[]} [locked_credit_notes]
865
- * @property {string} [unlock_reason]
866
- * @property {string} [description]
977
+ * @property {string} [seller_id] - The unique identifier for the seller.
978
+ * @property {string[]} [locked_credit_notes] - A list of credit notes that are locked.
979
+ * @property {string} [unlock_reason] - The reason for unlocking the credit notes.
980
+ * @property {string} [description] - Additional details or comments about the
981
+ * unlock request.
867
982
  */
868
983
 
869
984
  /**
@@ -873,13 +988,14 @@ const Joi = require("joi");
873
988
 
874
989
  /**
875
990
  * @typedef UnlockCreditNoteResponseData
876
- * @property {boolean} [is_cn_unlocked]
877
- * @property {string} [status]
991
+ * @property {boolean} [is_cn_unlocked] - Indicates whether the credit note is unlocked.
992
+ * @property {string} [status] - The current status of the each credit notes.
878
993
  */
879
994
 
880
995
  /**
881
996
  * @typedef UnlockCreditNoteResponse
882
- * @property {boolean} [success]
997
+ * @property {boolean} [success] - Indicates whether the credit note unlock
998
+ * request was successful.
883
999
  * @property {UnlockCreditNoteResponseData} [data]
884
1000
  */
885
1001
 
@@ -1020,7 +1136,6 @@ class FinancePlatformModel {
1020
1136
  meta: FinancePlatformModel.GenerateReportMeta(),
1021
1137
  report_id: Joi.string().allow(""),
1022
1138
  filters: FinancePlatformModel.GenerateReportFilters(),
1023
- type_of_request: Joi.string().allow(""),
1024
1139
  });
1025
1140
  }
1026
1141
 
@@ -1122,13 +1237,6 @@ class FinancePlatformModel {
1122
1237
  });
1123
1238
  }
1124
1239
 
1125
- /** @returns {GetAffiliate} */
1126
- static GetAffiliate() {
1127
- return Joi.object({
1128
- company_id: Joi.number(),
1129
- });
1130
- }
1131
-
1132
1240
  /** @returns {GetReportListResponse} */
1133
1241
  static GetReportListResponse() {
1134
1242
  return Joi.object({
@@ -1152,6 +1260,13 @@ class FinancePlatformModel {
1152
1260
  });
1153
1261
  }
1154
1262
 
1263
+ /** @returns {GetAffiliate} */
1264
+ static GetAffiliate() {
1265
+ return Joi.object({
1266
+ company_id: Joi.number(),
1267
+ });
1268
+ }
1269
+
1155
1270
  /** @returns {GetAffiliateResponse} */
1156
1271
  static GetAffiliateResponse() {
1157
1272
  return Joi.object({
@@ -1808,9 +1923,6 @@ class FinancePlatformModel {
1808
1923
  items: Joi.array().items(
1809
1924
  FinancePlatformModel.DownloadReportResponseData()
1810
1925
  ),
1811
- data: Joi.array().items(
1812
- FinancePlatformModel.DownloadReportResponseData()
1813
- ),
1814
1926
  item_count: Joi.number(),
1815
1927
  page: FinancePlatformModel.Page(),
1816
1928
  });