@prezly/sdk 7.12.0 → 9.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 (383) hide show
  1. package/README.md +8 -8
  2. package/dist/Client.d.ts +29 -0
  3. package/dist/Client.js +35 -0
  4. package/dist/{Sdk → api}/ApiClient.d.ts +2 -2
  5. package/dist/api/ApiClient.js +88 -0
  6. package/dist/{Sdk → api}/DeferredJobsApiClient.d.ts +3 -3
  7. package/dist/api/DeferredJobsApiClient.js +92 -0
  8. package/dist/{Sdk → api}/constants.d.ts +0 -0
  9. package/dist/api/constants.js +3 -0
  10. package/dist/api/index.d.ts +2 -0
  11. package/dist/api/index.js +2 -0
  12. package/dist/endpoints/Accounts/Client.d.ts +10 -0
  13. package/dist/endpoints/Accounts/Client.js +22 -0
  14. package/dist/endpoints/Accounts/index.d.ts +2 -0
  15. package/dist/endpoints/Accounts/index.js +2 -0
  16. package/dist/endpoints/Accounts/types.d.ts +16 -0
  17. package/dist/endpoints/Accounts/types.js +1 -0
  18. package/dist/endpoints/CampaignRecipients/Client.d.ts +29 -0
  19. package/dist/endpoints/CampaignRecipients/Client.js +78 -0
  20. package/dist/endpoints/CampaignRecipients/index.d.ts +3 -0
  21. package/dist/endpoints/CampaignRecipients/index.js +3 -0
  22. package/dist/endpoints/CampaignRecipients/scopes.d.ts +27 -0
  23. package/dist/endpoints/CampaignRecipients/scopes.js +1 -0
  24. package/dist/endpoints/CampaignRecipients/types.d.ts +14 -0
  25. package/dist/endpoints/CampaignRecipients/types.js +1 -0
  26. package/dist/endpoints/Campaigns/Client.d.ts +21 -0
  27. package/dist/endpoints/Campaigns/Client.js +85 -0
  28. package/dist/endpoints/Campaigns/index.d.ts +2 -0
  29. package/dist/endpoints/Campaigns/index.js +2 -0
  30. package/dist/{Sdk → endpoints}/Campaigns/types.d.ts +11 -9
  31. package/dist/endpoints/Campaigns/types.js +1 -0
  32. package/dist/endpoints/Coverage/Client.d.ts +23 -0
  33. package/dist/endpoints/Coverage/Client.js +102 -0
  34. package/dist/endpoints/Coverage/index.d.ts +2 -0
  35. package/dist/endpoints/Coverage/index.js +2 -0
  36. package/dist/{Sdk → endpoints}/Coverage/types.d.ts +14 -12
  37. package/dist/endpoints/Coverage/types.js +1 -0
  38. package/dist/endpoints/Jobs/Client.d.ts +7 -0
  39. package/dist/endpoints/Jobs/Client.js +12 -0
  40. package/dist/endpoints/Jobs/index.d.ts +2 -0
  41. package/dist/endpoints/Jobs/index.js +2 -0
  42. package/dist/endpoints/Jobs/types.d.ts +7 -0
  43. package/dist/endpoints/Jobs/types.js +1 -0
  44. package/dist/endpoints/Licenses/Client.d.ts +7 -0
  45. package/dist/endpoints/Licenses/Client.js +13 -0
  46. package/dist/endpoints/Licenses/index.d.ts +1 -0
  47. package/dist/endpoints/Licenses/index.js +1 -0
  48. package/dist/endpoints/NewsroomCategories/Client.d.ts +14 -0
  49. package/dist/endpoints/NewsroomCategories/Client.js +48 -0
  50. package/dist/endpoints/NewsroomCategories/index.d.ts +2 -0
  51. package/dist/endpoints/NewsroomCategories/index.js +2 -0
  52. package/dist/{Sdk → endpoints}/NewsroomCategories/types.d.ts +3 -3
  53. package/dist/endpoints/NewsroomCategories/types.js +1 -0
  54. package/dist/endpoints/NewsroomContacts/Client.d.ts +16 -0
  55. package/dist/endpoints/NewsroomContacts/Client.js +69 -0
  56. package/dist/endpoints/NewsroomContacts/index.d.ts +2 -0
  57. package/dist/endpoints/NewsroomContacts/index.js +2 -0
  58. package/dist/{Sdk → endpoints}/NewsroomContacts/types.d.ts +7 -11
  59. package/dist/endpoints/NewsroomContacts/types.js +1 -0
  60. package/dist/endpoints/NewsroomDomains/Client.d.ts +15 -0
  61. package/dist/endpoints/NewsroomDomains/Client.js +41 -0
  62. package/dist/endpoints/NewsroomDomains/index.d.ts +2 -0
  63. package/dist/endpoints/NewsroomDomains/index.js +2 -0
  64. package/dist/endpoints/NewsroomDomains/types.d.ts +3 -0
  65. package/dist/endpoints/NewsroomDomains/types.js +1 -0
  66. package/dist/endpoints/NewsroomGalleries/Client.d.ts +17 -0
  67. package/dist/endpoints/NewsroomGalleries/Client.js +75 -0
  68. package/dist/endpoints/NewsroomGalleries/index.d.ts +2 -0
  69. package/dist/endpoints/NewsroomGalleries/index.js +2 -0
  70. package/dist/{Sdk → endpoints}/NewsroomGalleries/types.d.ts +13 -11
  71. package/dist/endpoints/NewsroomGalleries/types.js +1 -0
  72. package/dist/{Sdk/NewsroomLanguages/NewsroomLanguages.d.ts → endpoints/NewsroomLanguages/Client.d.ts} +9 -11
  73. package/dist/endpoints/NewsroomLanguages/Client.js +93 -0
  74. package/dist/endpoints/NewsroomLanguages/index.d.ts +2 -0
  75. package/dist/endpoints/NewsroomLanguages/index.js +2 -0
  76. package/dist/endpoints/NewsroomLanguages/lib.d.ts +2 -0
  77. package/dist/endpoints/NewsroomLanguages/lib.js +3 -0
  78. package/dist/{Sdk → endpoints}/NewsroomLanguages/types.d.ts +5 -5
  79. package/dist/endpoints/NewsroomLanguages/types.js +1 -0
  80. package/dist/endpoints/NewsroomPrivacyRequests/Client.d.ts +9 -0
  81. package/dist/endpoints/NewsroomPrivacyRequests/Client.js +22 -0
  82. package/dist/endpoints/NewsroomPrivacyRequests/index.d.ts +2 -0
  83. package/dist/endpoints/NewsroomPrivacyRequests/index.js +2 -0
  84. package/dist/{Sdk → endpoints}/NewsroomPrivacyRequests/types.d.ts +5 -5
  85. package/dist/endpoints/NewsroomPrivacyRequests/types.js +1 -0
  86. package/dist/endpoints/NewsroomSubscriptions/Client.d.ts +13 -0
  87. package/dist/endpoints/NewsroomSubscriptions/Client.js +15 -0
  88. package/dist/endpoints/NewsroomSubscriptions/index.d.ts +2 -0
  89. package/dist/endpoints/NewsroomSubscriptions/index.js +2 -0
  90. package/dist/{Sdk → endpoints}/NewsroomSubscriptions/types.d.ts +3 -3
  91. package/dist/endpoints/NewsroomSubscriptions/types.js +1 -0
  92. package/dist/{Sdk/NewsroomThemes/NewsroomThemes.d.ts → endpoints/NewsroomThemes/Client.d.ts} +4 -6
  93. package/dist/endpoints/NewsroomThemes/Client.js +36 -0
  94. package/dist/endpoints/NewsroomThemes/index.d.ts +1 -0
  95. package/dist/endpoints/NewsroomThemes/index.js +1 -0
  96. package/dist/endpoints/NewsroomWebhooks/Client.d.ts +14 -0
  97. package/dist/endpoints/NewsroomWebhooks/Client.js +42 -0
  98. package/dist/endpoints/NewsroomWebhooks/index.d.ts +2 -0
  99. package/dist/endpoints/NewsroomWebhooks/index.js +2 -0
  100. package/dist/endpoints/NewsroomWebhooks/types.d.ts +15 -0
  101. package/dist/endpoints/NewsroomWebhooks/types.js +1 -0
  102. package/dist/endpoints/Newsrooms/Client.d.ts +19 -0
  103. package/dist/endpoints/Newsrooms/Client.js +90 -0
  104. package/dist/endpoints/Newsrooms/index.d.ts +2 -0
  105. package/dist/endpoints/Newsrooms/index.js +2 -0
  106. package/dist/{Sdk → endpoints}/Newsrooms/types.d.ts +11 -11
  107. package/dist/endpoints/Newsrooms/types.js +1 -0
  108. package/dist/endpoints/SenderAddresses/Client.d.ts +12 -0
  109. package/dist/endpoints/SenderAddresses/Client.js +37 -0
  110. package/dist/endpoints/SenderAddresses/index.d.ts +2 -0
  111. package/dist/endpoints/SenderAddresses/index.js +2 -0
  112. package/dist/{Sdk → endpoints}/SenderAddresses/types.d.ts +2 -2
  113. package/dist/endpoints/SenderAddresses/types.js +1 -0
  114. package/dist/endpoints/Snippets/Client.d.ts +14 -0
  115. package/dist/endpoints/Snippets/Client.js +42 -0
  116. package/dist/endpoints/Snippets/index.d.ts +2 -0
  117. package/dist/endpoints/Snippets/index.js +2 -0
  118. package/dist/{Sdk → endpoints}/Snippets/types.d.ts +2 -2
  119. package/dist/endpoints/Snippets/types.js +1 -0
  120. package/dist/endpoints/Stories/Client.d.ts +17 -0
  121. package/dist/endpoints/Stories/Client.js +63 -0
  122. package/dist/endpoints/Stories/index.d.ts +2 -0
  123. package/dist/endpoints/Stories/index.js +2 -0
  124. package/dist/{Sdk → endpoints}/Stories/types.d.ts +19 -18
  125. package/dist/endpoints/Stories/types.js +1 -0
  126. package/dist/{Sdk/Subscriptions/Subscriptions.d.ts → endpoints/Subscriptions/Client.d.ts} +6 -8
  127. package/dist/endpoints/Subscriptions/Client.js +51 -0
  128. package/dist/endpoints/Subscriptions/index.d.ts +2 -0
  129. package/dist/endpoints/Subscriptions/index.js +2 -0
  130. package/dist/{Sdk → endpoints}/Subscriptions/types.d.ts +13 -6
  131. package/dist/endpoints/Subscriptions/types.js +8 -0
  132. package/dist/endpoints/index.d.ts +20 -0
  133. package/dist/endpoints/index.js +20 -0
  134. package/dist/{Api → http}/ApiError.d.ts +2 -2
  135. package/dist/http/ApiError.js +14 -0
  136. package/dist/http/Http.d.ts +8 -0
  137. package/dist/http/Http.js +62 -0
  138. package/dist/{Api → http}/constants.d.ts +0 -0
  139. package/dist/http/constants.js +3 -0
  140. package/dist/{Api → http}/createRequest.d.ts +2 -2
  141. package/dist/http/createRequest.js +99 -0
  142. package/dist/http/index.d.ts +3 -0
  143. package/dist/http/index.js +3 -0
  144. package/dist/http/lib.d.ts +3 -0
  145. package/dist/http/lib.js +29 -0
  146. package/dist/{Api → http}/types.d.ts +0 -0
  147. package/dist/http/types.js +16 -0
  148. package/dist/index.d.ts +3 -2
  149. package/dist/index.js +4 -22
  150. package/dist/{Sdk/routing.d.ts → routing.d.ts} +1 -2
  151. package/dist/routing.js +27 -0
  152. package/dist/types/Campaign.d.ts +33 -31
  153. package/dist/types/Campaign.js +23 -20
  154. package/dist/types/Category.d.ts +1 -1
  155. package/dist/types/Category.js +1 -3
  156. package/dist/types/Contact.d.ts +83 -69
  157. package/dist/types/Contact.js +34 -26
  158. package/dist/types/ContactDuplicateSuggestion.d.ts +9 -7
  159. package/dist/types/ContactDuplicateSuggestion.js +7 -7
  160. package/dist/types/{CountryRef.d.ts → Country.d.ts} +0 -0
  161. package/dist/types/Country.js +1 -0
  162. package/dist/types/{Coverage.d.ts → CoverageEntry.d.ts} +32 -30
  163. package/dist/types/CoverageEntry.js +25 -0
  164. package/dist/types/Culture.d.ts +14 -0
  165. package/dist/types/Culture.js +9 -0
  166. package/dist/types/DnsConfigurationInstruction.js +1 -3
  167. package/dist/types/EmailRecipient.d.ts +14 -12
  168. package/dist/types/EmailRecipient.js +7 -7
  169. package/dist/types/EmailSubscription.js +1 -3
  170. package/dist/types/Entity.js +1 -3
  171. package/dist/types/JobState.js +5 -9
  172. package/dist/types/License.d.ts +12 -2
  173. package/dist/types/License.js +14 -3
  174. package/dist/types/Newsroom.d.ts +30 -14
  175. package/dist/types/Newsroom.js +23 -10
  176. package/dist/types/NewsroomCompanyInformation.js +1 -3
  177. package/dist/types/NewsroomContact.d.ts +2 -2
  178. package/dist/types/NewsroomContact.js +1 -3
  179. package/dist/types/NewsroomDomain.d.ts +7 -1
  180. package/dist/types/NewsroomDomain.js +2 -3
  181. package/dist/types/NewsroomGallery.d.ts +17 -5
  182. package/dist/types/NewsroomGallery.js +9 -3
  183. package/dist/types/NewsroomLanguageSettings.d.ts +3 -3
  184. package/dist/types/NewsroomLanguageSettings.js +1 -3
  185. package/dist/types/NewsroomTheme.d.ts +53 -0
  186. package/dist/types/NewsroomTheme.js +25 -0
  187. package/dist/types/NewsroomWebhook.d.ts +11 -9
  188. package/dist/types/NewsroomWebhook.js +13 -13
  189. package/dist/types/Permissions.js +10 -14
  190. package/dist/types/PrivacyRequest.d.ts +13 -11
  191. package/dist/types/PrivacyRequest.js +17 -16
  192. package/dist/types/SenderAddress.d.ts +8 -6
  193. package/dist/types/SenderAddress.js +9 -9
  194. package/dist/types/SenderDomain.d.ts +8 -6
  195. package/dist/types/SenderDomain.js +10 -10
  196. package/dist/types/Snippet.d.ts +1 -1
  197. package/dist/types/Snippet.js +1 -3
  198. package/dist/types/Story.d.ts +66 -64
  199. package/dist/types/Story.js +33 -30
  200. package/dist/types/{UserRef.d.ts → User.d.ts} +0 -0
  201. package/dist/types/User.js +1 -0
  202. package/dist/types/UserAccount.d.ts +3 -3
  203. package/dist/types/UserAccount.js +1 -3
  204. package/dist/types/common/Notification.d.ts +14 -12
  205. package/dist/types/common/Notification.js +11 -11
  206. package/dist/types/common/OEmbedInfo.js +1 -3
  207. package/dist/types/common/Pagination.js +9 -9
  208. package/dist/types/common/Query.d.ts +4 -1
  209. package/dist/types/common/Query.js +15 -3
  210. package/dist/types/common/Utm.js +1 -3
  211. package/dist/types/common/Warning.js +1 -3
  212. package/dist/types/common/index.js +6 -19
  213. package/dist/types/index.d.ts +12 -23
  214. package/dist/types/index.js +28 -53
  215. package/dist/{Sdk/utils.d.ts → utils.d.ts} +1 -1
  216. package/dist/utils.js +23 -0
  217. package/package.json +20 -6
  218. package/dist/Api/Api.d.ts +0 -9
  219. package/dist/Api/Api.js +0 -55
  220. package/dist/Api/ApiError.js +0 -30
  221. package/dist/Api/constants.js +0 -7
  222. package/dist/Api/createRequest.js +0 -154
  223. package/dist/Api/index.d.ts +0 -3
  224. package/dist/Api/index.js +0 -14
  225. package/dist/Api/lib.d.ts +0 -12
  226. package/dist/Api/lib.js +0 -67
  227. package/dist/Api/types.js +0 -20
  228. package/dist/Sdk/Accounts/Accounts.d.ts +0 -12
  229. package/dist/Sdk/Accounts/Accounts.js +0 -79
  230. package/dist/Sdk/Accounts/index.d.ts +0 -2
  231. package/dist/Sdk/Accounts/index.js +0 -15
  232. package/dist/Sdk/Accounts/types.d.ts +0 -16
  233. package/dist/Sdk/Accounts/types.js +0 -3
  234. package/dist/Sdk/ApiClient.js +0 -68
  235. package/dist/Sdk/CampaignRecipients/CampaignRecipients.d.ts +0 -28
  236. package/dist/Sdk/CampaignRecipients/CampaignRecipients.js +0 -126
  237. package/dist/Sdk/CampaignRecipients/index.d.ts +0 -2
  238. package/dist/Sdk/CampaignRecipients/index.js +0 -20
  239. package/dist/Sdk/CampaignRecipients/types.d.ts +0 -12
  240. package/dist/Sdk/CampaignRecipients/types.js +0 -3
  241. package/dist/Sdk/Campaigns/Campaigns.d.ts +0 -23
  242. package/dist/Sdk/Campaigns/Campaigns.js +0 -168
  243. package/dist/Sdk/Campaigns/index.d.ts +0 -2
  244. package/dist/Sdk/Campaigns/index.js +0 -9
  245. package/dist/Sdk/Campaigns/types.js +0 -3
  246. package/dist/Sdk/Coverage/Coverage.d.ts +0 -24
  247. package/dist/Sdk/Coverage/Coverage.js +0 -159
  248. package/dist/Sdk/Coverage/index.d.ts +0 -2
  249. package/dist/Sdk/Coverage/index.js +0 -9
  250. package/dist/Sdk/Coverage/types.js +0 -3
  251. package/dist/Sdk/DeferredJobsApiClient.js +0 -126
  252. package/dist/Sdk/Jobs/Jobs.d.ts +0 -9
  253. package/dist/Sdk/Jobs/Jobs.js +0 -64
  254. package/dist/Sdk/Jobs/index.d.ts +0 -2
  255. package/dist/Sdk/Jobs/index.js +0 -9
  256. package/dist/Sdk/Jobs/types.d.ts +0 -7
  257. package/dist/Sdk/Jobs/types.js +0 -3
  258. package/dist/Sdk/Licenses/Licenses.d.ts +0 -9
  259. package/dist/Sdk/Licenses/Licenses.js +0 -66
  260. package/dist/Sdk/Licenses/index.d.ts +0 -1
  261. package/dist/Sdk/Licenses/index.js +0 -9
  262. package/dist/Sdk/NewsroomCategories/NewsroomCategories.d.ts +0 -16
  263. package/dist/Sdk/NewsroomCategories/NewsroomCategories.js +0 -129
  264. package/dist/Sdk/NewsroomCategories/index.d.ts +0 -2
  265. package/dist/Sdk/NewsroomCategories/index.js +0 -9
  266. package/dist/Sdk/NewsroomCategories/types.js +0 -3
  267. package/dist/Sdk/NewsroomContacts/NewsroomContacts.d.ts +0 -18
  268. package/dist/Sdk/NewsroomContacts/NewsroomContacts.js +0 -145
  269. package/dist/Sdk/NewsroomContacts/index.d.ts +0 -2
  270. package/dist/Sdk/NewsroomContacts/index.js +0 -9
  271. package/dist/Sdk/NewsroomContacts/types.js +0 -3
  272. package/dist/Sdk/NewsroomDomains/NewsroomDomains.d.ts +0 -17
  273. package/dist/Sdk/NewsroomDomains/NewsroomDomains.js +0 -137
  274. package/dist/Sdk/NewsroomDomains/index.d.ts +0 -2
  275. package/dist/Sdk/NewsroomDomains/index.js +0 -9
  276. package/dist/Sdk/NewsroomDomains/types.d.ts +0 -3
  277. package/dist/Sdk/NewsroomDomains/types.js +0 -3
  278. package/dist/Sdk/NewsroomGalleries/NewsroomGalleries.d.ts +0 -19
  279. package/dist/Sdk/NewsroomGalleries/NewsroomGalleries.js +0 -140
  280. package/dist/Sdk/NewsroomGalleries/index.d.ts +0 -1
  281. package/dist/Sdk/NewsroomGalleries/index.js +0 -9
  282. package/dist/Sdk/NewsroomGalleries/types.js +0 -3
  283. package/dist/Sdk/NewsroomLanguages/NewsroomLanguages.js +0 -173
  284. package/dist/Sdk/NewsroomLanguages/index.d.ts +0 -2
  285. package/dist/Sdk/NewsroomLanguages/index.js +0 -9
  286. package/dist/Sdk/NewsroomLanguages/lib.d.ts +0 -2
  287. package/dist/Sdk/NewsroomLanguages/lib.js +0 -15
  288. package/dist/Sdk/NewsroomLanguages/types.js +0 -3
  289. package/dist/Sdk/NewsroomPrivacyRequests/NewsroomPrivacyRequests.d.ts +0 -11
  290. package/dist/Sdk/NewsroomPrivacyRequests/NewsroomPrivacyRequests.js +0 -83
  291. package/dist/Sdk/NewsroomPrivacyRequests/index.d.ts +0 -2
  292. package/dist/Sdk/NewsroomPrivacyRequests/index.js +0 -9
  293. package/dist/Sdk/NewsroomPrivacyRequests/types.js +0 -3
  294. package/dist/Sdk/NewsroomSubscriptions/NewsroomSubscriptions.d.ts +0 -15
  295. package/dist/Sdk/NewsroomSubscriptions/NewsroomSubscriptions.js +0 -65
  296. package/dist/Sdk/NewsroomSubscriptions/index.d.ts +0 -2
  297. package/dist/Sdk/NewsroomSubscriptions/index.js +0 -9
  298. package/dist/Sdk/NewsroomSubscriptions/types.js +0 -3
  299. package/dist/Sdk/NewsroomThemes/NewsroomThemes.js +0 -111
  300. package/dist/Sdk/NewsroomThemes/index.d.ts +0 -1
  301. package/dist/Sdk/NewsroomThemes/index.js +0 -9
  302. package/dist/Sdk/NewsroomWebhooks/NewsroomWebhooks.d.ts +0 -16
  303. package/dist/Sdk/NewsroomWebhooks/NewsroomWebhooks.js +0 -124
  304. package/dist/Sdk/NewsroomWebhooks/index.d.ts +0 -2
  305. package/dist/Sdk/NewsroomWebhooks/index.js +0 -9
  306. package/dist/Sdk/NewsroomWebhooks/types.d.ts +0 -15
  307. package/dist/Sdk/NewsroomWebhooks/types.js +0 -3
  308. package/dist/Sdk/Newsrooms/Newsrooms.d.ts +0 -21
  309. package/dist/Sdk/Newsrooms/Newsrooms.js +0 -184
  310. package/dist/Sdk/Newsrooms/index.d.ts +0 -2
  311. package/dist/Sdk/Newsrooms/index.js +0 -9
  312. package/dist/Sdk/Newsrooms/types.js +0 -3
  313. package/dist/Sdk/Sdk.d.ts +0 -42
  314. package/dist/Sdk/Sdk.js +0 -59
  315. package/dist/Sdk/SenderAddresses/SenderAddresses.d.ts +0 -14
  316. package/dist/Sdk/SenderAddresses/SenderAddresses.js +0 -110
  317. package/dist/Sdk/SenderAddresses/index.d.ts +0 -2
  318. package/dist/Sdk/SenderAddresses/index.js +0 -9
  319. package/dist/Sdk/SenderAddresses/types.js +0 -3
  320. package/dist/Sdk/Snippets/Snippets.d.ts +0 -16
  321. package/dist/Sdk/Snippets/Snippets.js +0 -124
  322. package/dist/Sdk/Snippets/index.d.ts +0 -2
  323. package/dist/Sdk/Snippets/index.js +0 -9
  324. package/dist/Sdk/Snippets/types.js +0 -3
  325. package/dist/Sdk/Stories/Stories.d.ts +0 -19
  326. package/dist/Sdk/Stories/Stories.js +0 -129
  327. package/dist/Sdk/Stories/index.d.ts +0 -2
  328. package/dist/Sdk/Stories/index.js +0 -9
  329. package/dist/Sdk/Stories/types.js +0 -3
  330. package/dist/Sdk/Subscriptions/Subscriptions.js +0 -136
  331. package/dist/Sdk/Subscriptions/index.d.ts +0 -2
  332. package/dist/Sdk/Subscriptions/index.js +0 -9
  333. package/dist/Sdk/Subscriptions/types.js +0 -3
  334. package/dist/Sdk/constants.js +0 -8
  335. package/dist/Sdk/index.d.ts +0 -14
  336. package/dist/Sdk/index.js +0 -32
  337. package/dist/Sdk/routing.js +0 -31
  338. package/dist/Sdk/types.d.ts +0 -6
  339. package/dist/Sdk/types.js +0 -3
  340. package/dist/Sdk/utils.js +0 -40
  341. package/dist/types/ContactRef.d.ts +0 -12
  342. package/dist/types/ContactRef.js +0 -3
  343. package/dist/types/CountryRef.js +0 -3
  344. package/dist/types/Coverage.js +0 -24
  345. package/dist/types/CultureRef.d.ts +0 -12
  346. package/dist/types/CultureRef.js +0 -9
  347. package/dist/types/EmailBranding.d.ts +0 -8
  348. package/dist/types/EmailBranding.js +0 -3
  349. package/dist/types/EmailBrandingMode.d.ts +0 -4
  350. package/dist/types/EmailBrandingMode.js +0 -9
  351. package/dist/types/GalleryStatus.d.ts +0 -4
  352. package/dist/types/GalleryStatus.js +0 -9
  353. package/dist/types/LicenseStatus.d.ts +0 -9
  354. package/dist/types/LicenseStatus.js +0 -14
  355. package/dist/types/NewsroomDomainShareInstructions.d.ts +0 -4
  356. package/dist/types/NewsroomDomainShareInstructions.js +0 -3
  357. package/dist/types/NewsroomGalleryImage.d.ts +0 -8
  358. package/dist/types/NewsroomGalleryImage.js +0 -3
  359. package/dist/types/NewsroomThemePreset.d.ts +0 -36
  360. package/dist/types/NewsroomThemePreset.js +0 -3
  361. package/dist/types/ThemeFeature.d.ts +0 -12
  362. package/dist/types/ThemeFeature.js +0 -17
  363. package/dist/types/ThemeStatus.d.ts +0 -4
  364. package/dist/types/ThemeStatus.js +0 -9
  365. package/dist/types/TrackingPolicy.d.ts +0 -5
  366. package/dist/types/TrackingPolicy.js +0 -10
  367. package/dist/types/UnsubscribeReason.d.ts +0 -7
  368. package/dist/types/UnsubscribeReason.js +0 -12
  369. package/dist/types/UserRef.js +0 -3
  370. package/dist/types/scopes/AllContactsScope.d.ts +0 -6
  371. package/dist/types/scopes/AllContactsScope.js +0 -3
  372. package/dist/types/scopes/CampaignRecipientsScope.d.ts +0 -8
  373. package/dist/types/scopes/CampaignRecipientsScope.js +0 -3
  374. package/dist/types/scopes/CampaignReportScope.d.ts +0 -9
  375. package/dist/types/scopes/CampaignReportScope.js +0 -3
  376. package/dist/types/scopes/ContactEmployeesScope.d.ts +0 -7
  377. package/dist/types/scopes/ContactEmployeesScope.js +0 -3
  378. package/dist/types/scopes/ContactOrganisationsScope.d.ts +0 -7
  379. package/dist/types/scopes/ContactOrganisationsScope.js +0 -3
  380. package/dist/types/scopes/ContactsScope.d.ts +0 -6
  381. package/dist/types/scopes/ContactsScope.js +0 -3
  382. package/dist/types/scopes/index.d.ts +0 -6
  383. package/dist/types/scopes/index.js +0 -19
package/README.md CHANGED
@@ -13,9 +13,9 @@ yarn add @prezly/sdk
13
13
  Using ES Modules:
14
14
 
15
15
  ```js
16
- import PrezlySdk from '@prezly/sdk';
16
+ import { createPrezlyClient } from '@prezly/sdk';
17
17
 
18
- const prezlySdk = new PrezlySdk({
18
+ const prezlyClient = createPrezlyClient({
19
19
  accessToken: 'your-access-token',
20
20
  });
21
21
  ```
@@ -23,9 +23,9 @@ const prezlySdk = new PrezlySdk({
23
23
  Or Using CommonJS:
24
24
 
25
25
  ```js
26
- const PrezlySdk = require('@prezly/sdk').default;
26
+ const { createPrezlyClient } = require('@prezly/sdk').default;
27
27
 
28
- const prezlySdk = new PrezlySdk({
28
+ const prezlyClient = createPrezlyClient({
29
29
  accessToken: 'your-access-token',
30
30
  });
31
31
  ```
@@ -53,7 +53,7 @@ yarn add whatwg-fetch
53
53
  ```js
54
54
  import 'whatwg-fetch';
55
55
  // ...
56
- import PrezlySdk from '@prezly/sdk';
56
+ import { createPrezlyClient } from '@prezly/sdk';
57
57
  ```
58
58
 
59
59
  We recommend referring to the [official `whatwg-fetch` module documentation](https://www.npmjs.com/package/whatwg-fetch) for more information.
@@ -69,7 +69,7 @@ yarn add node-fetch
69
69
  ```js
70
70
  global.fetch = require('node-fetch');
71
71
  // ...
72
- const PrezlySdk = require('@prezly/sdk').default;
72
+ const { createPrezlyClient } = require('@prezly/sdk');
73
73
  ```
74
74
 
75
75
  We recommend referring to the [official `node-fetch` module documentation](https://www.npmjs.com/package/node-fetch) for more information.
@@ -87,7 +87,7 @@ Using ES Modules:
87
87
  ```js
88
88
  import 'cross-fetch/polyfill';
89
89
  // ...
90
- import PrezlySdk from '@prezly/sdk';
90
+ import { createPrezlyClient } from '@prezly/sdk';
91
91
  ```
92
92
 
93
93
  Or Using CommonJS:
@@ -95,7 +95,7 @@ Or Using CommonJS:
95
95
  ```js
96
96
  require('cross-fetch/polyfill');
97
97
  // ...
98
- const PrezlySdk = require('@prezly/sdk').default;
98
+ const { createPrezlyClient } = require('@prezly/sdk');
99
99
  ```
100
100
 
101
101
  We recommend referring to the [official `cross-fetch` module documentation](https://www.npmjs.com/package/cross-fetch) for more information.
@@ -0,0 +1,29 @@
1
+ import { Accounts, Campaigns, CampaignRecipients, Coverage, Jobs, Licenses, Newsrooms, NewsroomCategories, NewsroomContacts, NewsroomLanguages, NewsroomThemes, NewsroomWebhooks, NewsroomPrivacyRequests, NewsroomDomains, NewsroomGalleries, SenderAddresses, Stories, Snippets, Subscriptions } from './endpoints';
2
+ import type { HeadersMap } from './http';
3
+ export interface ClientOptions {
4
+ accessToken: string;
5
+ baseUrl?: string;
6
+ headers?: HeadersMap;
7
+ }
8
+ export interface Client {
9
+ accounts: Accounts.Client;
10
+ campaigns: Campaigns.Client;
11
+ campaignRecipients: CampaignRecipients.Client;
12
+ coverage: Coverage.Client;
13
+ jobs: Jobs.Client;
14
+ licenses: Licenses.Client;
15
+ newsrooms: Newsrooms.Client;
16
+ newsroomCategories: NewsroomCategories.Client;
17
+ newsroomContacts: NewsroomContacts.Client;
18
+ newsroomLanguages: NewsroomLanguages.Client;
19
+ newsroomThemes: NewsroomThemes.Client;
20
+ newsroomWebhooks: NewsroomWebhooks.Client;
21
+ newsroomPrivacyRequests: NewsroomPrivacyRequests.Client;
22
+ newsroomDomains: NewsroomDomains.Client;
23
+ newsroomGalleries: NewsroomGalleries.Client;
24
+ senderAddresses: SenderAddresses.Client;
25
+ stories: Stories.Client;
26
+ snippets: Snippets.Client;
27
+ subscriptions: Subscriptions.Client;
28
+ }
29
+ export declare function createClient({ accessToken, baseUrl, headers, }: ClientOptions): Client;
package/dist/Client.js ADDED
@@ -0,0 +1,35 @@
1
+ import { ApiClient, DeferredJobsApiClient } from "./api/index.js";
2
+ import { Accounts, Campaigns, CampaignRecipients, Coverage, Jobs, Licenses, Newsrooms, NewsroomCategories, NewsroomContacts, NewsroomLanguages, NewsroomThemes, NewsroomWebhooks, NewsroomPrivacyRequests, NewsroomDomains, NewsroomGalleries, SenderAddresses, Stories, Snippets, Subscriptions } from "./endpoints/index.js";
3
+ const DEFAULT_BASE_URL = 'https://api.prezly.com';
4
+ export function createClient({
5
+ accessToken,
6
+ baseUrl = DEFAULT_BASE_URL,
7
+ headers = {}
8
+ }) {
9
+ const apiClient = new DeferredJobsApiClient(new ApiClient({
10
+ accessToken,
11
+ baseUrl,
12
+ headers
13
+ }));
14
+ return {
15
+ accounts: new Accounts.Client(apiClient),
16
+ campaigns: new Campaigns.Client(apiClient),
17
+ campaignRecipients: new CampaignRecipients.Client(apiClient),
18
+ coverage: new Coverage.Client(apiClient),
19
+ jobs: new Jobs.Client(apiClient),
20
+ licenses: new Licenses.Client(apiClient),
21
+ newsrooms: new Newsrooms.Client(apiClient),
22
+ newsroomCategories: new NewsroomCategories.Client(apiClient),
23
+ newsroomContacts: new NewsroomContacts.Client(apiClient),
24
+ newsroomLanguages: new NewsroomLanguages.Client(apiClient),
25
+ newsroomThemes: new NewsroomThemes.Client(apiClient),
26
+ newsroomWebhooks: new NewsroomWebhooks.Client(apiClient),
27
+ newsroomPrivacyRequests: new NewsroomPrivacyRequests.Client(apiClient),
28
+ newsroomDomains: new NewsroomDomains.Client(apiClient),
29
+ newsroomGalleries: new NewsroomGalleries.Client(apiClient),
30
+ senderAddresses: new SenderAddresses.Client(apiClient),
31
+ stories: new Stories.Client(apiClient),
32
+ snippets: new Snippets.Client(apiClient),
33
+ subscriptions: new Subscriptions.Client(apiClient)
34
+ };
35
+ }
@@ -1,10 +1,10 @@
1
- import { ApiResponse, HeadersMap, Params, ParamsWithPayload } from '../Api';
1
+ import type { ApiResponse, HeadersMap, Params, ParamsWithPayload } from '../http';
2
2
  export interface Options {
3
3
  accessToken: string;
4
4
  baseUrl: string;
5
5
  headers: HeadersMap;
6
6
  }
7
- export default class ApiClient {
7
+ export declare class ApiClient {
8
8
  private readonly baseUrl;
9
9
  private readonly headers;
10
10
  constructor({ accessToken, baseUrl, headers }: Options);
@@ -0,0 +1,88 @@
1
+ import { Http } from "../http/index.js";
2
+ import { stripSlashes } from "../utils.js";
3
+ import { DEFAULT_USER_AGENT } from "./constants.js";
4
+ export class ApiClient {
5
+ constructor({
6
+ accessToken,
7
+ baseUrl,
8
+ headers
9
+ }) {
10
+ this.baseUrl = baseUrl;
11
+ this.headers = {
12
+ authorization: `Bearer ${accessToken}`,
13
+ 'User-Agent': DEFAULT_USER_AGENT,
14
+ ...headers
15
+ };
16
+ }
17
+ get(endpointUri, {
18
+ headers,
19
+ query
20
+ } = {}) {
21
+ return Http.get(this.buildEndpointUrl(endpointUri), {
22
+ headers: {
23
+ ...this.headers,
24
+ ...headers
25
+ },
26
+ query
27
+ });
28
+ }
29
+ post(endpointUri, {
30
+ headers,
31
+ payload,
32
+ query
33
+ } = {}) {
34
+ return Http.post(this.buildEndpointUrl(endpointUri), {
35
+ headers: {
36
+ ...this.headers,
37
+ ...headers
38
+ },
39
+ payload,
40
+ query
41
+ });
42
+ }
43
+ put(endpointUri, {
44
+ headers,
45
+ payload,
46
+ query
47
+ } = {}) {
48
+ return Http.put(this.buildEndpointUrl(endpointUri), {
49
+ headers: {
50
+ ...this.headers,
51
+ ...headers
52
+ },
53
+ payload,
54
+ query
55
+ });
56
+ }
57
+ patch(endpointUri, {
58
+ headers,
59
+ payload,
60
+ query
61
+ } = {}) {
62
+ return Http.patch(this.buildEndpointUrl(endpointUri), {
63
+ headers: {
64
+ ...this.headers,
65
+ ...headers
66
+ },
67
+ payload,
68
+ query
69
+ });
70
+ }
71
+ delete(endpointUri, {
72
+ headers,
73
+ payload,
74
+ query
75
+ } = {}) {
76
+ return Http.delete(this.buildEndpointUrl(endpointUri), {
77
+ headers: {
78
+ ...this.headers,
79
+ ...headers
80
+ },
81
+ payload,
82
+ query
83
+ });
84
+ }
85
+ buildEndpointUrl(endpointUri) {
86
+ return `${stripSlashes(this.baseUrl)}/${stripSlashes(endpointUri)}`;
87
+ }
88
+ }
@@ -1,7 +1,7 @@
1
1
  import { ProgressPromise } from '@prezly/progress-promise';
2
- import { Params, ParamsWithPayload } from '../Api';
3
- import ApiClient from './ApiClient';
4
- export default class DeferredJobsApiClient {
2
+ import type { Params, ParamsWithPayload } from '../http';
3
+ import type { ApiClient } from './ApiClient';
4
+ export declare class DeferredJobsApiClient {
5
5
  private readonly apiClient;
6
6
  constructor(apiClient: ApiClient);
7
7
  get<V = any, P = any>(endpointUri: string, { headers, query }?: Params): ProgressPromise<V, P>;
@@ -0,0 +1,92 @@
1
+ import { ProgressPromise } from '@prezly/progress-promise';
2
+ import { Http, HttpCodes, isDeferredJobResponse } from "../http/index.js";
3
+ import { routing } from "../routing.js";
4
+ import { JobStatus } from "../types/index.js";
5
+ const JOB_STATUS_POLLING_INTERVAL = 2000; // ms
6
+
7
+ async function sleep(milliseconds) {
8
+ return new Promise(resolve => setTimeout(resolve, milliseconds));
9
+ }
10
+ async function handleDeferredJob(request) {
11
+ const response = await request;
12
+ if (response.status === HttpCodes.ACCEPTED && isDeferredJobResponse(response.payload)) {
13
+ return new ProgressPromise(async function (resolve, reject, progress) {
14
+ do {
15
+ const response = await Http.get(routing.jobsUrl);
16
+ const {
17
+ job
18
+ } = response.payload;
19
+ if (job.status === JobStatus.RESOLVED) {
20
+ resolve(job.value);
21
+ return;
22
+ }
23
+ if (job.status === JobStatus.REJECTED) {
24
+ reject(job.value);
25
+ return;
26
+ }
27
+ progress(job.progress, job.value);
28
+ await sleep(JOB_STATUS_POLLING_INTERVAL);
29
+ } while (true); // eslint-disable-line no-constant-condition
30
+ });
31
+ }
32
+
33
+ return ProgressPromise.resolve(response.payload);
34
+ }
35
+ export class DeferredJobsApiClient {
36
+ constructor(apiClient) {
37
+ this.apiClient = apiClient;
38
+ }
39
+ get(endpointUri, {
40
+ headers,
41
+ query
42
+ } = {}) {
43
+ return handleDeferredJob(this.apiClient.get(endpointUri, {
44
+ headers,
45
+ query
46
+ }));
47
+ }
48
+ post(endpointUri, {
49
+ headers,
50
+ payload,
51
+ query
52
+ } = {}) {
53
+ return handleDeferredJob(this.apiClient.post(endpointUri, {
54
+ headers,
55
+ payload,
56
+ query
57
+ }));
58
+ }
59
+ put(endpointUri, {
60
+ headers,
61
+ payload,
62
+ query
63
+ } = {}) {
64
+ return handleDeferredJob(this.apiClient.put(endpointUri, {
65
+ headers,
66
+ payload,
67
+ query
68
+ }));
69
+ }
70
+ patch(endpointUri, {
71
+ headers,
72
+ payload,
73
+ query
74
+ } = {}) {
75
+ return handleDeferredJob(this.apiClient.patch(endpointUri, {
76
+ headers,
77
+ payload,
78
+ query
79
+ }));
80
+ }
81
+ delete(endpointUri, {
82
+ headers,
83
+ payload,
84
+ query
85
+ } = {}) {
86
+ return handleDeferredJob(this.apiClient.delete(endpointUri, {
87
+ headers,
88
+ payload,
89
+ query
90
+ }));
91
+ }
92
+ }
File without changes
@@ -0,0 +1,3 @@
1
+ const VERSION = "8.0.0";
2
+ const URL = 'https://github.com/prezly/javascript-sdk';
3
+ export const DEFAULT_USER_AGENT = `prezly-javascript-sdk/${VERSION} (+${URL})`;
@@ -0,0 +1,2 @@
1
+ export { ApiClient } from './ApiClient';
2
+ export { DeferredJobsApiClient } from './DeferredJobsApiClient';
@@ -0,0 +1,2 @@
1
+ export { ApiClient } from "./ApiClient.js";
2
+ export { DeferredJobsApiClient } from "./DeferredJobsApiClient.js";
@@ -0,0 +1,10 @@
1
+ import type { DeferredJobsApiClient } from '../../api';
2
+ import type { UserAccount } from '../../types';
3
+ import type { CreateRequest, CreateResponse, ListResponse, UpdateRequest, UpdateResponse } from './types';
4
+ export declare class Client {
5
+ private readonly apiClient;
6
+ constructor(apiClient: DeferredJobsApiClient);
7
+ list(): Promise<ListResponse>;
8
+ create(payload: CreateRequest): Promise<CreateResponse>;
9
+ update(id: UserAccount['id'], payload: UpdateRequest): Promise<UpdateResponse>;
10
+ }
@@ -0,0 +1,22 @@
1
+ import { routing } from "../../routing.js";
2
+ export class Client {
3
+ constructor(apiClient) {
4
+ this.apiClient = apiClient;
5
+ }
6
+ async list() {
7
+ const url = routing.accounts;
8
+ return this.apiClient.get(url);
9
+ }
10
+ async create(payload) {
11
+ const url = routing.accounts;
12
+ return this.apiClient.post(url, {
13
+ payload
14
+ });
15
+ }
16
+ async update(id, payload) {
17
+ const url = `${routing.accounts}/${id}`;
18
+ return this.apiClient.patch(url, {
19
+ payload
20
+ });
21
+ }
22
+ }
@@ -0,0 +1,2 @@
1
+ export * from './Client';
2
+ export * from './types';
@@ -0,0 +1,2 @@
1
+ export * from "./Client.js";
2
+ export * from "./types.js";
@@ -0,0 +1,16 @@
1
+ import type { UserAccount } from '../../types';
2
+ export interface ListResponse {
3
+ accounts: UserAccount[];
4
+ }
5
+ export interface CreateRequest {
6
+ company_name: string;
7
+ }
8
+ export interface CreateResponse {
9
+ activation_url: string;
10
+ }
11
+ export interface UpdateRequest {
12
+ show_in_menu: boolean;
13
+ }
14
+ export interface UpdateResponse {
15
+ account: UserAccount;
16
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,29 @@
1
+ import type { DeferredJobsApiClient } from '../../api';
2
+ import type { Campaign, Contact, EmailRecipient } from '../../types';
3
+ import { Query } from '../../types';
4
+ import type { RecipientsOperationResponse } from '../Campaigns';
5
+ import type { ContactsScope } from './scopes';
6
+ import type { ListOptions, ListResponse, SearchOptions } from './types';
7
+ declare type CampaignId = Campaign['id'];
8
+ declare type ContactId = Contact['id'];
9
+ declare type EmailRecipientId = EmailRecipient['id'];
10
+ export declare class Client {
11
+ private readonly apiClient;
12
+ constructor(apiClient: DeferredJobsApiClient);
13
+ list(campaignId: CampaignId, options: ListOptions): Promise<ListResponse>;
14
+ search(campaignId: CampaignId, options: SearchOptions): Promise<ListResponse>;
15
+ get(campaignId: CampaignId, recipientId: EmailRecipientId): Promise<EmailRecipient>;
16
+ addContact(campaignId: CampaignId, contact: {
17
+ id: ContactId;
18
+ emailAddress?: string;
19
+ }): Promise<RecipientsOperationResponse>;
20
+ addContacts(campaignId: CampaignId, contacts: {
21
+ query?: Query;
22
+ scope?: ContactsScope;
23
+ }): Promise<RecipientsOperationResponse>;
24
+ removeRecipient(campaignId: CampaignId, recipientId: EmailRecipientId): Promise<RecipientsOperationResponse>;
25
+ removeRecipients(campaignId: CampaignId, params?: {
26
+ query: Query;
27
+ }): Promise<RecipientsOperationResponse>;
28
+ }
29
+ export {};
@@ -0,0 +1,78 @@
1
+ import { routing } from "../../routing.js";
2
+ import { Query } from "../../types/index.js";
3
+ export class Client {
4
+ constructor(apiClient) {
5
+ this.apiClient = apiClient;
6
+ }
7
+ async list(campaignId, options) {
8
+ const {
9
+ limit,
10
+ offset,
11
+ sortOrder
12
+ } = options;
13
+ const url = routing.campaignRecipientsUrl.replace(':campaign_id', String(campaignId));
14
+ return this.apiClient.get(url, {
15
+ query: {
16
+ limit,
17
+ offset,
18
+ sort: sortOrder
19
+ }
20
+ });
21
+ }
22
+ async search(campaignId, options) {
23
+ const {
24
+ limit,
25
+ offset,
26
+ sortOrder,
27
+ query
28
+ } = options;
29
+ const url = routing.campaignRecipientsUrl.replace(':campaign_id', String(campaignId));
30
+ // TODO: Introduce dedicated Search POST API
31
+ return this.apiClient.get(url, {
32
+ query: {
33
+ query: Query.stringify(query),
34
+ sort: sortOrder,
35
+ limit,
36
+ offset
37
+ }
38
+ });
39
+ }
40
+ async get(campaignId, recipientId) {
41
+ const url = routing.campaignRecipientsUrl.replace(':campaign_id', String(campaignId));
42
+ const {
43
+ recipient
44
+ } = await this.apiClient.get(`${url}/${recipientId}`);
45
+ return recipient;
46
+ }
47
+ async addContact(campaignId, contact) {
48
+ const url = routing.campaignRecipientsUrl.replace(':campaign_id', String(campaignId));
49
+ return this.apiClient.post(url, {
50
+ payload: {
51
+ contact
52
+ }
53
+ });
54
+ }
55
+ async addContacts(campaignId, contacts) {
56
+ const url = routing.campaignRecipientsUrl.replace(':campaign_id', String(campaignId));
57
+ return this.apiClient.post(url, {
58
+ payload: {
59
+ contacts
60
+ }
61
+ });
62
+ }
63
+ async removeRecipient(campaignId, recipientId) {
64
+ const url = routing.campaignRecipientsUrl.replace(':campaign_id', String(campaignId));
65
+ return this.apiClient.delete(`${url}/${recipientId}`);
66
+ }
67
+ async removeRecipients(campaignId, params) {
68
+ const {
69
+ query
70
+ } = params || {};
71
+ const url = routing.campaignRecipientsUrl.replace(':campaign_id', String(campaignId));
72
+ return this.apiClient.delete(url, {
73
+ payload: {
74
+ query
75
+ }
76
+ });
77
+ }
78
+ }
@@ -0,0 +1,3 @@
1
+ export * from './Client';
2
+ export * from './scopes';
3
+ export * from './types';
@@ -0,0 +1,3 @@
1
+ export * from "./Client.js";
2
+ export * from "./scopes.js";
3
+ export * from "./types.js";
@@ -0,0 +1,27 @@
1
+ import type { Campaign, Contact, EmailRecipient, SelectionValue } from '../../types';
2
+ export interface AllContactsScope {
3
+ type: 'scope:contacts';
4
+ selection?: SelectionValue<Contact['id']>;
5
+ }
6
+ export interface ContactOrganisationsScope {
7
+ type: 'scope:contact_organisations';
8
+ contact_id: Contact['id'];
9
+ selection?: SelectionValue<Contact['id']>;
10
+ }
11
+ export interface ContactEmployeesScope {
12
+ type: 'scope:contact_organisations';
13
+ contact_id: Contact['id'];
14
+ selection?: SelectionValue<Contact['id']>;
15
+ }
16
+ export interface CampaignRecipientsScope {
17
+ type: 'scope:campaign_recipients';
18
+ campaign_id: Campaign['id'];
19
+ selection?: SelectionValue<EmailRecipient['id']>;
20
+ }
21
+ export interface CampaignReportScope {
22
+ type: 'scope:campaign_recipients';
23
+ campaign_id: Campaign['id'];
24
+ report: 'recipients' | 'sent' | 'clicked' | 'opened' | 'unopened' | 'undelivered' | 'unsubscribed';
25
+ selection?: SelectionValue<Contact['id']>;
26
+ }
27
+ export declare type ContactsScope = AllContactsScope | ContactOrganisationsScope | ContactEmployeesScope | CampaignRecipientsScope | CampaignReportScope;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,14 @@
1
+ import type { EmailRecipient, Pagination, Query } from '../../types';
2
+ export interface ListOptions {
3
+ limit?: number;
4
+ offset?: number;
5
+ sortOrder?: string;
6
+ }
7
+ export interface SearchOptions extends ListOptions {
8
+ query?: Query;
9
+ }
10
+ export interface ListResponse {
11
+ recipients: EmailRecipient[];
12
+ pagination: Pagination;
13
+ sort: string;
14
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,21 @@
1
+ import type { ProgressPromise } from '@prezly/progress-promise';
2
+ import type { DeferredJobsApiClient } from '../../api';
3
+ import type { Campaign } from '../../types';
4
+ import type { CreateRequest, RecipientsOperationResponse, CampaignResponse, UpdateRequest, ListResponse, SearchOptions } from './types';
5
+ export declare class Client {
6
+ private readonly apiClient;
7
+ constructor(apiClient: DeferredJobsApiClient);
8
+ list(options: SearchOptions): Promise<ListResponse>;
9
+ search(options: SearchOptions): Promise<ListResponse>;
10
+ get(id: Campaign['id']): Promise<CampaignResponse>;
11
+ duplicate(id: Campaign['id']): Promise<CampaignResponse>;
12
+ delete(id: Campaign['id']): Promise<void>;
13
+ test(id: Campaign['id'], emails: string[]): Promise<void>;
14
+ send(id: Campaign['id']): Promise<void>;
15
+ schedule(id: Campaign['id'], sendAt: Date): Promise<Campaign>;
16
+ unschedule(id: Campaign['id']): Promise<Campaign>;
17
+ create(payload: CreateRequest): ProgressPromise<RecipientsOperationResponse, {
18
+ recipients_number: number;
19
+ }>;
20
+ update(id: Campaign['id'], payload: UpdateRequest): Promise<CampaignResponse>;
21
+ }