@stigg/typescript 0.1.0-alpha.2 → 0.1.0-alpha.21

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 (378) hide show
  1. package/CHANGELOG.md +270 -0
  2. package/README.md +9 -0
  3. package/client.d.mts +7 -9
  4. package/client.d.mts.map +1 -1
  5. package/client.d.ts +7 -9
  6. package/client.d.ts.map +1 -1
  7. package/client.js +29 -26
  8. package/client.js.map +1 -1
  9. package/client.mjs +30 -27
  10. package/client.mjs.map +1 -1
  11. package/internal/parse.d.mts.map +1 -1
  12. package/internal/parse.d.ts.map +1 -1
  13. package/internal/parse.js +5 -0
  14. package/internal/parse.js.map +1 -1
  15. package/internal/parse.mjs +5 -0
  16. package/internal/parse.mjs.map +1 -1
  17. package/internal/qs/formats.d.mts +7 -0
  18. package/internal/qs/formats.d.mts.map +1 -0
  19. package/internal/qs/formats.d.ts +7 -0
  20. package/internal/qs/formats.d.ts.map +1 -0
  21. package/internal/qs/formats.js +13 -0
  22. package/internal/qs/formats.js.map +1 -0
  23. package/internal/qs/formats.mjs +9 -0
  24. package/internal/qs/formats.mjs.map +1 -0
  25. package/internal/qs/index.d.mts +10 -0
  26. package/internal/qs/index.d.mts.map +1 -0
  27. package/internal/qs/index.d.ts +10 -0
  28. package/internal/qs/index.d.ts.map +1 -0
  29. package/internal/qs/index.js +14 -0
  30. package/internal/qs/index.js.map +1 -0
  31. package/internal/qs/index.mjs +10 -0
  32. package/internal/qs/index.mjs.map +1 -0
  33. package/internal/qs/stringify.d.mts +3 -0
  34. package/internal/qs/stringify.d.mts.map +1 -0
  35. package/internal/qs/stringify.d.ts +3 -0
  36. package/internal/qs/stringify.d.ts.map +1 -0
  37. package/internal/qs/stringify.js +277 -0
  38. package/internal/qs/stringify.js.map +1 -0
  39. package/internal/qs/stringify.mjs +274 -0
  40. package/internal/qs/stringify.mjs.map +1 -0
  41. package/internal/qs/types.d.mts +57 -0
  42. package/internal/qs/types.d.mts.map +1 -0
  43. package/internal/qs/types.d.ts +57 -0
  44. package/internal/qs/types.d.ts.map +1 -0
  45. package/internal/qs/types.js +3 -0
  46. package/internal/qs/types.js.map +1 -0
  47. package/internal/qs/types.mjs +2 -0
  48. package/internal/qs/types.mjs.map +1 -0
  49. package/internal/qs/utils.d.mts +15 -0
  50. package/internal/qs/utils.d.mts.map +1 -0
  51. package/internal/qs/utils.d.ts +15 -0
  52. package/internal/qs/utils.d.ts.map +1 -0
  53. package/internal/qs/utils.js +230 -0
  54. package/internal/qs/utils.js.map +1 -0
  55. package/internal/qs/utils.mjs +217 -0
  56. package/internal/qs/utils.mjs.map +1 -0
  57. package/internal/tslib.js +17 -17
  58. package/internal/utils/query.d.mts +2 -0
  59. package/internal/utils/query.d.mts.map +1 -0
  60. package/internal/utils/query.d.ts +2 -0
  61. package/internal/utils/query.d.ts.map +1 -0
  62. package/internal/utils/query.js +10 -0
  63. package/internal/utils/query.js.map +1 -0
  64. package/internal/utils/query.mjs +6 -0
  65. package/internal/utils/query.mjs.map +1 -0
  66. package/internal/utils.d.mts +1 -0
  67. package/internal/utils.d.ts +1 -0
  68. package/internal/utils.js +1 -0
  69. package/internal/utils.js.map +1 -1
  70. package/internal/utils.mjs +1 -0
  71. package/package.json +12 -1
  72. package/resources/index.d.mts +1 -1
  73. package/resources/index.d.mts.map +1 -1
  74. package/resources/index.d.ts +1 -1
  75. package/resources/index.d.ts.map +1 -1
  76. package/resources/index.js.map +1 -1
  77. package/resources/index.mjs +1 -1
  78. package/resources/index.mjs.map +1 -1
  79. package/resources/v1/addons/addons.d.mts +1305 -0
  80. package/resources/v1/addons/addons.d.mts.map +1 -0
  81. package/resources/v1/addons/addons.d.ts +1305 -0
  82. package/resources/v1/addons/addons.d.ts.map +1 -0
  83. package/resources/v1/addons/addons.js +81 -0
  84. package/resources/v1/addons/addons.js.map +1 -0
  85. package/resources/v1/addons/addons.mjs +76 -0
  86. package/resources/v1/addons/addons.mjs.map +1 -0
  87. package/resources/v1/addons/entitlements.d.mts +860 -0
  88. package/resources/v1/addons/entitlements.d.mts.map +1 -0
  89. package/resources/v1/addons/entitlements.d.ts +860 -0
  90. package/resources/v1/addons/entitlements.d.ts.map +1 -0
  91. package/resources/v1/addons/entitlements.js +36 -0
  92. package/resources/v1/addons/entitlements.js.map +1 -0
  93. package/resources/v1/addons/entitlements.mjs +32 -0
  94. package/resources/v1/addons/entitlements.mjs.map +1 -0
  95. package/resources/v1/addons/index.d.mts +3 -0
  96. package/resources/v1/addons/index.d.mts.map +1 -0
  97. package/resources/v1/addons/index.d.ts +3 -0
  98. package/resources/v1/addons/index.d.ts.map +1 -0
  99. package/resources/v1/addons/index.js +9 -0
  100. package/resources/v1/addons/index.js.map +1 -0
  101. package/resources/v1/addons/index.mjs +4 -0
  102. package/resources/v1/addons/index.mjs.map +1 -0
  103. package/resources/v1/addons.d.mts +2 -0
  104. package/resources/v1/addons.d.mts.map +1 -0
  105. package/resources/v1/addons.d.ts +2 -0
  106. package/resources/v1/addons.d.ts.map +1 -0
  107. package/resources/v1/addons.js +6 -0
  108. package/resources/v1/addons.js.map +1 -0
  109. package/resources/v1/addons.mjs +3 -0
  110. package/resources/v1/addons.mjs.map +1 -0
  111. package/resources/v1/coupons.d.mts +113 -82
  112. package/resources/v1/coupons.d.mts.map +1 -1
  113. package/resources/v1/coupons.d.ts +113 -82
  114. package/resources/v1/coupons.d.ts.map +1 -1
  115. package/resources/v1/coupons.js +19 -3
  116. package/resources/v1/coupons.js.map +1 -1
  117. package/resources/v1/coupons.mjs +19 -3
  118. package/resources/v1/coupons.mjs.map +1 -1
  119. package/resources/v1/customers/customers.d.mts +221 -45
  120. package/resources/v1/customers/customers.d.mts.map +1 -1
  121. package/resources/v1/customers/customers.d.ts +221 -45
  122. package/resources/v1/customers/customers.d.ts.map +1 -1
  123. package/resources/v1/customers/customers.js +32 -15
  124. package/resources/v1/customers/customers.js.map +1 -1
  125. package/resources/v1/customers/customers.mjs +32 -15
  126. package/resources/v1/customers/customers.mjs.map +1 -1
  127. package/resources/v1/customers/index.d.mts +2 -2
  128. package/resources/v1/customers/index.d.mts.map +1 -1
  129. package/resources/v1/customers/index.d.ts +2 -2
  130. package/resources/v1/customers/index.d.ts.map +1 -1
  131. package/resources/v1/customers/index.js +3 -3
  132. package/resources/v1/customers/index.js.map +1 -1
  133. package/resources/v1/customers/index.mjs +1 -1
  134. package/resources/v1/customers/index.mjs.map +1 -1
  135. package/resources/v1/customers/payment-method.d.mts +10 -2
  136. package/resources/v1/customers/payment-method.d.mts.map +1 -1
  137. package/resources/v1/customers/payment-method.d.ts +10 -2
  138. package/resources/v1/customers/payment-method.d.ts.map +1 -1
  139. package/resources/v1/customers/payment-method.js +7 -2
  140. package/resources/v1/customers/payment-method.js.map +1 -1
  141. package/resources/v1/customers/payment-method.mjs +7 -2
  142. package/resources/v1/customers/payment-method.mjs.map +1 -1
  143. package/resources/v1/customers/promotional-entitlements.d.mts +501 -0
  144. package/resources/v1/customers/promotional-entitlements.d.mts.map +1 -0
  145. package/resources/v1/customers/promotional-entitlements.d.ts +501 -0
  146. package/resources/v1/customers/promotional-entitlements.d.ts.map +1 -0
  147. package/resources/v1/customers/promotional-entitlements.js +35 -0
  148. package/resources/v1/customers/promotional-entitlements.js.map +1 -0
  149. package/resources/v1/customers/promotional-entitlements.mjs +31 -0
  150. package/resources/v1/customers/promotional-entitlements.mjs.map +1 -0
  151. package/resources/v1/events/credits/credits.d.mts +260 -0
  152. package/resources/v1/events/credits/credits.d.mts.map +1 -0
  153. package/resources/v1/events/credits/credits.d.ts +260 -0
  154. package/resources/v1/events/credits/credits.d.ts.map +1 -0
  155. package/resources/v1/events/credits/credits.js +41 -0
  156. package/resources/v1/events/credits/credits.js.map +1 -0
  157. package/resources/v1/events/credits/credits.mjs +36 -0
  158. package/resources/v1/events/credits/credits.mjs.map +1 -0
  159. package/resources/v1/events/credits/grants.d.mts +549 -0
  160. package/resources/v1/events/credits/grants.d.mts.map +1 -0
  161. package/resources/v1/events/credits/grants.d.ts +549 -0
  162. package/resources/v1/events/credits/grants.d.ts.map +1 -0
  163. package/resources/v1/events/credits/grants.js +37 -0
  164. package/resources/v1/events/credits/grants.js.map +1 -0
  165. package/resources/v1/events/credits/grants.mjs +33 -0
  166. package/resources/v1/events/credits/grants.mjs.map +1 -0
  167. package/resources/v1/events/credits/index.d.mts +3 -0
  168. package/resources/v1/events/credits/index.d.mts.map +1 -0
  169. package/resources/v1/events/credits/index.d.ts +3 -0
  170. package/resources/v1/events/credits/index.d.ts.map +1 -0
  171. package/resources/v1/events/credits/index.js +9 -0
  172. package/resources/v1/events/credits/index.js.map +1 -0
  173. package/resources/v1/events/credits/index.mjs +4 -0
  174. package/resources/v1/events/credits/index.mjs.map +1 -0
  175. package/resources/v1/events/credits.d.mts +2 -0
  176. package/resources/v1/events/credits.d.mts.map +1 -0
  177. package/resources/v1/events/credits.d.ts +2 -0
  178. package/resources/v1/events/credits.d.ts.map +1 -0
  179. package/resources/v1/events/credits.js +6 -0
  180. package/resources/v1/events/credits.js.map +1 -0
  181. package/resources/v1/events/credits.mjs +3 -0
  182. package/resources/v1/events/credits.mjs.map +1 -0
  183. package/resources/v1/events/events.d.mts +70 -0
  184. package/resources/v1/events/events.d.mts.map +1 -0
  185. package/resources/v1/events/events.d.ts +70 -0
  186. package/resources/v1/events/events.d.ts.map +1 -0
  187. package/resources/v1/events/events.js +27 -0
  188. package/resources/v1/events/events.js.map +1 -0
  189. package/resources/v1/events/events.mjs +22 -0
  190. package/resources/v1/events/events.mjs.map +1 -0
  191. package/resources/v1/events/index.d.mts +3 -0
  192. package/resources/v1/events/index.d.mts.map +1 -0
  193. package/resources/v1/events/index.d.ts +3 -0
  194. package/resources/v1/events/index.d.ts.map +1 -0
  195. package/resources/v1/events/index.js +9 -0
  196. package/resources/v1/events/index.js.map +1 -0
  197. package/resources/v1/events/index.mjs +4 -0
  198. package/resources/v1/events/index.mjs.map +1 -0
  199. package/resources/v1/events.d.mts +2 -0
  200. package/resources/v1/events.d.mts.map +1 -0
  201. package/resources/v1/events.d.ts +2 -0
  202. package/resources/v1/events.d.ts.map +1 -0
  203. package/resources/v1/events.js +6 -0
  204. package/resources/v1/events.js.map +1 -0
  205. package/resources/v1/events.mjs +3 -0
  206. package/resources/v1/events.mjs.map +1 -0
  207. package/resources/v1/features.d.mts +447 -0
  208. package/resources/v1/features.d.mts.map +1 -0
  209. package/resources/v1/features.d.ts +447 -0
  210. package/resources/v1/features.d.ts.map +1 -0
  211. package/resources/v1/features.js +54 -0
  212. package/resources/v1/features.js.map +1 -0
  213. package/resources/v1/features.mjs +50 -0
  214. package/resources/v1/features.mjs.map +1 -0
  215. package/resources/v1/index.d.mts +10 -4
  216. package/resources/v1/index.d.mts.map +1 -1
  217. package/resources/v1/index.d.ts +10 -4
  218. package/resources/v1/index.d.ts.map +1 -1
  219. package/resources/v1/index.js +17 -5
  220. package/resources/v1/index.js.map +1 -1
  221. package/resources/v1/index.mjs +7 -1
  222. package/resources/v1/index.mjs.map +1 -1
  223. package/resources/v1/plans/entitlements.d.mts +860 -0
  224. package/resources/v1/plans/entitlements.d.mts.map +1 -0
  225. package/resources/v1/plans/entitlements.d.ts +860 -0
  226. package/resources/v1/plans/entitlements.d.ts.map +1 -0
  227. package/resources/v1/plans/entitlements.js +36 -0
  228. package/resources/v1/plans/entitlements.js.map +1 -0
  229. package/resources/v1/plans/entitlements.mjs +32 -0
  230. package/resources/v1/plans/entitlements.mjs.map +1 -0
  231. package/resources/v1/plans/index.d.mts +3 -0
  232. package/resources/v1/plans/index.d.mts.map +1 -0
  233. package/resources/v1/plans/index.d.ts +3 -0
  234. package/resources/v1/plans/index.d.ts.map +1 -0
  235. package/resources/v1/plans/index.js +9 -0
  236. package/resources/v1/plans/index.js.map +1 -0
  237. package/resources/v1/plans/index.mjs +4 -0
  238. package/resources/v1/plans/index.mjs.map +1 -0
  239. package/resources/v1/plans/plans.d.mts +976 -0
  240. package/resources/v1/plans/plans.d.mts.map +1 -0
  241. package/resources/v1/plans/plans.d.ts +976 -0
  242. package/resources/v1/plans/plans.d.ts.map +1 -0
  243. package/resources/v1/plans/plans.js +79 -0
  244. package/resources/v1/plans/plans.js.map +1 -0
  245. package/resources/v1/plans/plans.mjs +74 -0
  246. package/resources/v1/plans/plans.mjs.map +1 -0
  247. package/resources/v1/plans.d.mts +2 -0
  248. package/resources/v1/plans.d.mts.map +1 -0
  249. package/resources/v1/plans.d.ts +2 -0
  250. package/resources/v1/plans.d.ts.map +1 -0
  251. package/resources/v1/plans.js +6 -0
  252. package/resources/v1/plans.js.map +1 -0
  253. package/resources/v1/plans.mjs +3 -0
  254. package/resources/v1/plans.mjs.map +1 -0
  255. package/resources/v1/products.d.mts +335 -0
  256. package/resources/v1/products.d.mts.map +1 -0
  257. package/resources/v1/products.d.ts +335 -0
  258. package/resources/v1/products.d.ts.map +1 -0
  259. package/resources/v1/products.js +55 -0
  260. package/resources/v1/products.js.map +1 -0
  261. package/resources/v1/products.mjs +51 -0
  262. package/resources/v1/products.mjs.map +1 -0
  263. package/resources/v1/subscriptions/future-update.d.mts +15 -19
  264. package/resources/v1/subscriptions/future-update.d.mts.map +1 -1
  265. package/resources/v1/subscriptions/future-update.d.ts +15 -19
  266. package/resources/v1/subscriptions/future-update.d.ts.map +1 -1
  267. package/resources/v1/subscriptions/future-update.js +6 -2
  268. package/resources/v1/subscriptions/future-update.js.map +1 -1
  269. package/resources/v1/subscriptions/future-update.mjs +6 -2
  270. package/resources/v1/subscriptions/future-update.mjs.map +1 -1
  271. package/resources/v1/subscriptions/index.d.mts +4 -2
  272. package/resources/v1/subscriptions/index.d.mts.map +1 -1
  273. package/resources/v1/subscriptions/index.d.ts +4 -2
  274. package/resources/v1/subscriptions/index.d.ts.map +1 -1
  275. package/resources/v1/subscriptions/index.js +5 -1
  276. package/resources/v1/subscriptions/index.js.map +1 -1
  277. package/resources/v1/subscriptions/index.mjs +3 -1
  278. package/resources/v1/subscriptions/index.mjs.map +1 -1
  279. package/resources/v1/subscriptions/invoice.d.mts +37 -0
  280. package/resources/v1/subscriptions/invoice.d.mts.map +1 -0
  281. package/resources/v1/subscriptions/invoice.d.ts +37 -0
  282. package/resources/v1/subscriptions/invoice.d.ts.map +1 -0
  283. package/resources/v1/subscriptions/invoice.js +20 -0
  284. package/resources/v1/subscriptions/invoice.js.map +1 -0
  285. package/resources/v1/subscriptions/invoice.mjs +16 -0
  286. package/resources/v1/subscriptions/invoice.mjs.map +1 -0
  287. package/resources/v1/subscriptions/subscriptions.d.mts +2547 -561
  288. package/resources/v1/subscriptions/subscriptions.d.mts.map +1 -1
  289. package/resources/v1/subscriptions/subscriptions.d.ts +2547 -561
  290. package/resources/v1/subscriptions/subscriptions.d.ts.map +1 -1
  291. package/resources/v1/subscriptions/subscriptions.js +47 -11
  292. package/resources/v1/subscriptions/subscriptions.js.map +1 -1
  293. package/resources/v1/subscriptions/subscriptions.mjs +49 -13
  294. package/resources/v1/subscriptions/subscriptions.mjs.map +1 -1
  295. package/resources/v1/subscriptions/usage.d.mts +101 -0
  296. package/resources/v1/subscriptions/usage.d.mts.map +1 -0
  297. package/resources/v1/subscriptions/usage.d.ts +101 -0
  298. package/resources/v1/subscriptions/usage.d.ts.map +1 -0
  299. package/resources/v1/subscriptions/usage.js +27 -0
  300. package/resources/v1/subscriptions/usage.js.map +1 -0
  301. package/resources/v1/subscriptions/usage.mjs +23 -0
  302. package/resources/v1/subscriptions/usage.mjs.map +1 -0
  303. package/resources/v1/usage.d.mts +238 -0
  304. package/resources/v1/usage.d.mts.map +1 -0
  305. package/resources/v1/usage.d.ts +238 -0
  306. package/resources/v1/usage.d.ts.map +1 -0
  307. package/resources/v1/usage.js +27 -0
  308. package/resources/v1/usage.js.map +1 -0
  309. package/resources/v1/usage.mjs +23 -0
  310. package/resources/v1/usage.mjs.map +1 -0
  311. package/resources/v1/v1.d.mts +30 -149
  312. package/resources/v1/v1.d.mts.map +1 -1
  313. package/resources/v1/v1.d.ts +30 -149
  314. package/resources/v1/v1.d.ts.map +1 -1
  315. package/resources/v1/v1.js +24 -12
  316. package/resources/v1/v1.js.map +1 -1
  317. package/resources/v1/v1.mjs +24 -12
  318. package/resources/v1/v1.mjs.map +1 -1
  319. package/src/client.ts +41 -47
  320. package/src/internal/parse.ts +6 -0
  321. package/src/internal/qs/LICENSE.md +13 -0
  322. package/src/internal/qs/README.md +3 -0
  323. package/src/internal/qs/formats.ts +10 -0
  324. package/src/internal/qs/index.ts +13 -0
  325. package/src/internal/qs/stringify.ts +385 -0
  326. package/src/internal/qs/types.ts +71 -0
  327. package/src/internal/qs/utils.ts +265 -0
  328. package/src/internal/utils/query.ts +7 -0
  329. package/src/internal/utils.ts +1 -0
  330. package/src/resources/index.ts +1 -7
  331. package/src/resources/v1/addons/addons.ts +3253 -0
  332. package/src/resources/v1/addons/entitlements.ts +1120 -0
  333. package/src/resources/v1/addons/index.ts +26 -0
  334. package/src/resources/v1/addons.ts +3 -0
  335. package/src/resources/v1/coupons.ts +126 -216
  336. package/src/resources/v1/customers/customers.ts +296 -61
  337. package/src/resources/v1/customers/index.ts +16 -2
  338. package/src/resources/v1/customers/payment-method.ts +10 -2
  339. package/src/resources/v1/customers/promotional-entitlements.ts +672 -0
  340. package/src/resources/v1/events/credits/credits.ts +356 -0
  341. package/src/resources/v1/events/credits/grants.ts +795 -0
  342. package/src/resources/v1/events/credits/index.ts +20 -0
  343. package/src/resources/v1/events/credits.ts +3 -0
  344. package/src/resources/v1/events/events.ts +103 -0
  345. package/src/resources/v1/events/index.ts +13 -0
  346. package/src/resources/v1/events.ts +3 -0
  347. package/src/resources/v1/features.ts +574 -0
  348. package/src/resources/v1/index.ts +70 -15
  349. package/src/resources/v1/plans/entitlements.ts +1112 -0
  350. package/src/resources/v1/plans/index.ts +24 -0
  351. package/src/resources/v1/plans/plans.ts +2035 -0
  352. package/src/resources/v1/plans.ts +3 -0
  353. package/src/resources/v1/products.ts +426 -0
  354. package/src/resources/v1/subscriptions/future-update.ts +15 -27
  355. package/src/resources/v1/subscriptions/index.ts +15 -11
  356. package/src/resources/v1/subscriptions/invoice.ts +45 -0
  357. package/src/resources/v1/subscriptions/subscriptions.ts +5836 -777
  358. package/src/resources/v1/subscriptions/usage.ts +129 -0
  359. package/src/resources/v1/usage.ts +293 -0
  360. package/src/resources/v1/v1.ts +168 -197
  361. package/src/version.ts +1 -1
  362. package/version.d.mts +1 -1
  363. package/version.d.mts.map +1 -1
  364. package/version.d.ts +1 -1
  365. package/version.d.ts.map +1 -1
  366. package/version.js +1 -1
  367. package/version.js.map +1 -1
  368. package/version.mjs +1 -1
  369. package/version.mjs.map +1 -1
  370. package/resources/v1/customers/usage.d.mts +0 -98
  371. package/resources/v1/customers/usage.d.mts.map +0 -1
  372. package/resources/v1/customers/usage.d.ts +0 -98
  373. package/resources/v1/customers/usage.d.ts.map +0 -1
  374. package/resources/v1/customers/usage.js +0 -20
  375. package/resources/v1/customers/usage.js.map +0 -1
  376. package/resources/v1/customers/usage.mjs +0 -16
  377. package/resources/v1/customers/usage.mjs.map +0 -1
  378. package/src/resources/v1/customers/usage.ts +0 -132
@@ -3,8 +3,17 @@
3
3
  import { APIResource } from '../../../core/resource';
4
4
  import * as PaymentMethodAPI from './payment-method';
5
5
  import { PaymentMethod, PaymentMethodAttachParams } from './payment-method';
6
- import * as UsageAPI from './usage';
7
- import { Usage, UsageRetrieveParams, UsageRetrieveResponse } from './usage';
6
+ import * as PromotionalEntitlementsAPI from './promotional-entitlements';
7
+ import {
8
+ PromotionalEntitlementCreateParams,
9
+ PromotionalEntitlementCreateResponse,
10
+ PromotionalEntitlementListParams,
11
+ PromotionalEntitlementListResponse,
12
+ PromotionalEntitlementListResponsesMyCursorIDPage,
13
+ PromotionalEntitlementRevokeParams,
14
+ PromotionalEntitlementRevokeResponse,
15
+ PromotionalEntitlements,
16
+ } from './promotional-entitlements';
8
17
  import { APIPromise } from '../../../core/api-promise';
9
18
  import { MyCursorIDPage, type MyCursorIDPageParams, PagePromise } from '../../../core/pagination';
10
19
  import { RequestOptions } from '../../../internal/request-options';
@@ -12,31 +21,27 @@ import { path } from '../../../internal/utils/path';
12
21
 
13
22
  export class Customers extends APIResource {
14
23
  paymentMethod: PaymentMethodAPI.PaymentMethod = new PaymentMethodAPI.PaymentMethod(this._client);
15
- usage: UsageAPI.Usage = new UsageAPI.Usage(this._client);
24
+ promotionalEntitlements: PromotionalEntitlementsAPI.PromotionalEntitlements =
25
+ new PromotionalEntitlementsAPI.PromotionalEntitlements(this._client);
16
26
 
17
27
  /**
18
- * Create a new Customer
19
- */
20
- create(body: CustomerCreateParams, options?: RequestOptions): APIPromise<CustomerResponse> {
21
- return this._client.post('/api/v1/customers', { body, ...options });
22
- }
23
-
24
- /**
25
- * Get a single Customer by id
28
+ * Retrieves a customer by their unique identifier, including billing information
29
+ * and subscription status.
26
30
  */
27
31
  retrieve(id: string, options?: RequestOptions): APIPromise<CustomerResponse> {
28
32
  return this._client.get(path`/api/v1/customers/${id}`, options);
29
33
  }
30
34
 
31
35
  /**
32
- * Update an existing Customer
36
+ * Updates an existing customer's properties such as name, email, and billing
37
+ * information.
33
38
  */
34
39
  update(id: string, body: CustomerUpdateParams, options?: RequestOptions): APIPromise<CustomerResponse> {
35
40
  return this._client.patch(path`/api/v1/customers/${id}`, { body, ...options });
36
41
  }
37
42
 
38
43
  /**
39
- * Get a list of Customers
44
+ * Retrieves a paginated list of customers in the environment.
40
45
  */
41
46
  list(
42
47
  query: CustomerListParams | null | undefined = {},
@@ -49,14 +54,46 @@ export class Customers extends APIResource {
49
54
  }
50
55
 
51
56
  /**
52
- * Perform archive on a Customer
57
+ * Archives a customer, preventing new subscriptions. Optionally cancels existing
58
+ * subscriptions.
53
59
  */
54
60
  archive(id: string, options?: RequestOptions): APIPromise<CustomerResponse> {
55
61
  return this._client.post(path`/api/v1/customers/${id}/archive`, options);
56
62
  }
57
63
 
58
64
  /**
59
- * Perform unarchive on a Customer
65
+ * Imports multiple customers in bulk. Used for migrating customer data from
66
+ * external systems.
67
+ */
68
+ import(body: CustomerImportParams, options?: RequestOptions): APIPromise<CustomerImportResponse> {
69
+ return this._client.post('/api/v1/customers/import', { body, ...options });
70
+ }
71
+
72
+ /**
73
+ * Retrieves a paginated list of resources within the same customer.
74
+ */
75
+ listResources(
76
+ id: string,
77
+ query: CustomerListResourcesParams | null | undefined = {},
78
+ options?: RequestOptions,
79
+ ): PagePromise<CustomerListResourcesResponsesMyCursorIDPage, CustomerListResourcesResponse> {
80
+ return this._client.getAPIList(
81
+ path`/api/v1/customers/${id}/resources`,
82
+ MyCursorIDPage<CustomerListResourcesResponse>,
83
+ { query, ...options },
84
+ );
85
+ }
86
+
87
+ /**
88
+ * Creates a new customer and optionally provisions an initial subscription in a
89
+ * single operation.
90
+ */
91
+ provision(body: CustomerProvisionParams, options?: RequestOptions): APIPromise<CustomerResponse> {
92
+ return this._client.post('/api/v1/customers', { body, ...options });
93
+ }
94
+
95
+ /**
96
+ * Restores an archived customer, allowing them to create new subscriptions again.
60
97
  */
61
98
  unarchive(id: string, options?: RequestOptions): APIPromise<CustomerResponse> {
62
99
  return this._client.post(path`/api/v1/customers/${id}/unarchive`, options);
@@ -65,11 +102,22 @@ export class Customers extends APIResource {
65
102
 
66
103
  export type CustomerListResponsesMyCursorIDPage = MyCursorIDPage<CustomerListResponse>;
67
104
 
105
+ export type CustomerListResourcesResponsesMyCursorIDPage = MyCursorIDPage<CustomerListResourcesResponse>;
106
+
107
+ /**
108
+ * Response object
109
+ */
68
110
  export interface CustomerResponse {
111
+ /**
112
+ * A customer can be either an organization or an individual
113
+ */
69
114
  data: CustomerResponse.Data;
70
115
  }
71
116
 
72
117
  export namespace CustomerResponse {
118
+ /**
119
+ * A customer can be either an organization or an individual
120
+ */
73
121
  export interface Data {
74
122
  /**
75
123
  * Customer slug
@@ -91,6 +139,11 @@ export namespace CustomerResponse {
91
139
  */
92
140
  updatedAt: string;
93
141
 
142
+ /**
143
+ * The unique identifier for the entity in the billing provider
144
+ */
145
+ billingId?: string | null;
146
+
94
147
  /**
95
148
  * Customer level coupon
96
149
  */
@@ -153,6 +206,9 @@ export namespace CustomerResponse {
153
206
  type: 'CARD' | 'BANK' | 'CASH_APP';
154
207
  }
155
208
 
209
+ /**
210
+ * External billing or CRM integration link
211
+ */
156
212
  export interface Integration {
157
213
  /**
158
214
  * Integration details
@@ -182,6 +238,9 @@ export namespace CustomerResponse {
182
238
  }
183
239
  }
184
240
 
241
+ /**
242
+ * A customer can be either an organization or an individual
243
+ */
185
244
  export interface CustomerListResponse {
186
245
  /**
187
246
  * Customer slug
@@ -203,6 +262,11 @@ export interface CustomerListResponse {
203
262
  */
204
263
  updatedAt: string;
205
264
 
265
+ /**
266
+ * The unique identifier for the entity in the billing provider
267
+ */
268
+ billingId?: string | null;
269
+
206
270
  /**
207
271
  * Customer level coupon
208
272
  */
@@ -265,6 +329,9 @@ export namespace CustomerListResponse {
265
329
  type: 'CARD' | 'BANK' | 'CASH_APP';
266
330
  }
267
331
 
332
+ /**
333
+ * External billing or CRM integration link
334
+ */
268
335
  export interface Integration {
269
336
  /**
270
337
  * Integration details
@@ -293,21 +360,58 @@ export namespace CustomerListResponse {
293
360
  }
294
361
  }
295
362
 
296
- export interface CustomerCreateParams {
363
+ /**
364
+ * Response object
365
+ */
366
+ export interface CustomerImportResponse {
297
367
  /**
298
- * Customer slug
368
+ * List of newly created customer IDs from the import operation.
369
+ */
370
+ data: CustomerImportResponse.Data;
371
+ }
372
+
373
+ export namespace CustomerImportResponse {
374
+ /**
375
+ * List of newly created customer IDs from the import operation.
376
+ */
377
+ export interface Data {
378
+ /**
379
+ * Customer IDs created during import
380
+ */
381
+ newCustomers: Array<string>;
382
+ }
383
+ }
384
+
385
+ /**
386
+ * Resource object that belongs to a customer
387
+ */
388
+ export interface CustomerListResourcesResponse {
389
+ /**
390
+ * Resource slug
299
391
  */
300
392
  id: string;
301
393
 
302
394
  /**
303
- * Customer level coupon
395
+ * Timestamp of when the record was created
304
396
  */
305
- couponId?: string | null;
397
+ createdAt: string;
306
398
 
307
399
  /**
308
- * The default payment method details
400
+ * Timestamp of when the record was last updated
309
401
  */
310
- defaultPaymentMethod?: CustomerCreateParams.DefaultPaymentMethod | null;
402
+ updatedAt: string;
403
+ }
404
+
405
+ export interface CustomerUpdateParams {
406
+ /**
407
+ * The unique identifier for the entity in the billing provider
408
+ */
409
+ billingId?: string | null;
410
+
411
+ /**
412
+ * Customer level coupon
413
+ */
414
+ couponId?: string | null;
311
415
 
312
416
  /**
313
417
  * The email of the customer
@@ -317,7 +421,7 @@ export interface CustomerCreateParams {
317
421
  /**
318
422
  * List of integrations
319
423
  */
320
- integrations?: Array<CustomerCreateParams.Integration>;
424
+ integrations?: Array<CustomerUpdateParams.Integration>;
321
425
 
322
426
  /**
323
427
  * Additional metadata
@@ -330,37 +434,10 @@ export interface CustomerCreateParams {
330
434
  name?: string | null;
331
435
  }
332
436
 
333
- export namespace CustomerCreateParams {
437
+ export namespace CustomerUpdateParams {
334
438
  /**
335
- * The default payment method details
439
+ * External billing or CRM integration link
336
440
  */
337
- export interface DefaultPaymentMethod {
338
- /**
339
- * The default payment method id
340
- */
341
- billingId: string | null;
342
-
343
- /**
344
- * The expiration month of the default payment method
345
- */
346
- cardExpiryMonth: number | null;
347
-
348
- /**
349
- * The expiration year of the default payment method
350
- */
351
- cardExpiryYear: number | null;
352
-
353
- /**
354
- * The last 4 digits of the default payment method
355
- */
356
- cardLast4Digits: string | null;
357
-
358
- /**
359
- * The default payment method type
360
- */
361
- type: 'CARD' | 'BANK' | 'CASH_APP';
362
- }
363
-
364
441
  export interface Integration {
365
442
  /**
366
443
  * Integration details
@@ -389,12 +466,129 @@ export namespace CustomerCreateParams {
389
466
  }
390
467
  }
391
468
 
392
- export interface CustomerUpdateParams {
469
+ export interface CustomerListParams extends MyCursorIDPageParams {
470
+ /**
471
+ * Filter by creation date using range operators: gt, gte, lt, lte
472
+ */
473
+ createdAt?: CustomerListParams.CreatedAt;
474
+
475
+ /**
476
+ * Filter by exact customer email address
477
+ */
478
+ email?: string;
479
+
480
+ /**
481
+ * Filter by exact customer name
482
+ */
483
+ name?: string;
484
+ }
485
+
486
+ export namespace CustomerListParams {
487
+ /**
488
+ * Filter by creation date using range operators: gt, gte, lt, lte
489
+ */
490
+ export interface CreatedAt {
491
+ /**
492
+ * Greater than the specified createdAt value
493
+ */
494
+ gt?: string;
495
+
496
+ /**
497
+ * Greater than or equal to the specified createdAt value
498
+ */
499
+ gte?: string;
500
+
501
+ /**
502
+ * Less than the specified createdAt value
503
+ */
504
+ lt?: string;
505
+
506
+ /**
507
+ * Less than or equal to the specified createdAt value
508
+ */
509
+ lte?: string;
510
+ }
511
+ }
512
+
513
+ export interface CustomerImportParams {
514
+ /**
515
+ * List of customer objects to import
516
+ */
517
+ customers: Array<CustomerImportParams.Customer>;
518
+
519
+ /**
520
+ * Integration details
521
+ */
522
+ integrationId?: string;
523
+ }
524
+
525
+ export namespace CustomerImportParams {
526
+ export interface Customer {
527
+ /**
528
+ * Customer slug
529
+ */
530
+ id: string;
531
+
532
+ /**
533
+ * The email of the customer
534
+ */
535
+ email: string | null;
536
+
537
+ /**
538
+ * The name of the customer
539
+ */
540
+ name: string | null;
541
+
542
+ /**
543
+ * Id in the billing provider
544
+ */
545
+ billingId?: string;
546
+
547
+ /**
548
+ * Additional metadata
549
+ */
550
+ metadata?: { [key: string]: string };
551
+
552
+ /**
553
+ * Billing provider payment method id
554
+ */
555
+ paymentMethodId?: string;
556
+
557
+ /**
558
+ * The unique identifier for the customer in Salesforce integration
559
+ */
560
+ salesforceId?: string;
561
+
562
+ /**
563
+ * Timestamp of when the record was last updated
564
+ */
565
+ updatedAt?: string;
566
+ }
567
+ }
568
+
569
+ export interface CustomerListResourcesParams extends MyCursorIDPageParams {}
570
+
571
+ export interface CustomerProvisionParams {
572
+ /**
573
+ * Customer slug
574
+ */
575
+ id: string;
576
+
577
+ /**
578
+ * The unique identifier for the entity in the billing provider
579
+ */
580
+ billingId?: string | null;
581
+
393
582
  /**
394
583
  * Customer level coupon
395
584
  */
396
585
  couponId?: string | null;
397
586
 
587
+ /**
588
+ * The default payment method details
589
+ */
590
+ defaultPaymentMethod?: CustomerProvisionParams.DefaultPaymentMethod | null;
591
+
398
592
  /**
399
593
  * The email of the customer
400
594
  */
@@ -403,7 +597,7 @@ export interface CustomerUpdateParams {
403
597
  /**
404
598
  * List of integrations
405
599
  */
406
- integrations?: Array<CustomerUpdateParams.Integration>;
600
+ integrations?: Array<CustomerProvisionParams.Integration>;
407
601
 
408
602
  /**
409
603
  * Additional metadata
@@ -416,7 +610,40 @@ export interface CustomerUpdateParams {
416
610
  name?: string | null;
417
611
  }
418
612
 
419
- export namespace CustomerUpdateParams {
613
+ export namespace CustomerProvisionParams {
614
+ /**
615
+ * The default payment method details
616
+ */
617
+ export interface DefaultPaymentMethod {
618
+ /**
619
+ * The default payment method id
620
+ */
621
+ billingId: string | null;
622
+
623
+ /**
624
+ * The expiration month of the default payment method
625
+ */
626
+ cardExpiryMonth: number | null;
627
+
628
+ /**
629
+ * The expiration year of the default payment method
630
+ */
631
+ cardExpiryYear: number | null;
632
+
633
+ /**
634
+ * The last 4 digits of the default payment method
635
+ */
636
+ cardLast4Digits: string | null;
637
+
638
+ /**
639
+ * The default payment method type
640
+ */
641
+ type: 'CARD' | 'BANK' | 'CASH_APP';
642
+ }
643
+
644
+ /**
645
+ * External billing or CRM integration link
646
+ */
420
647
  export interface Integration {
421
648
  /**
422
649
  * Integration details
@@ -445,26 +672,34 @@ export namespace CustomerUpdateParams {
445
672
  }
446
673
  }
447
674
 
448
- export interface CustomerListParams extends MyCursorIDPageParams {}
449
-
450
675
  Customers.PaymentMethod = PaymentMethod;
451
- Customers.Usage = Usage;
676
+ Customers.PromotionalEntitlements = PromotionalEntitlements;
452
677
 
453
678
  export declare namespace Customers {
454
679
  export {
455
680
  type CustomerResponse as CustomerResponse,
456
681
  type CustomerListResponse as CustomerListResponse,
682
+ type CustomerImportResponse as CustomerImportResponse,
683
+ type CustomerListResourcesResponse as CustomerListResourcesResponse,
457
684
  type CustomerListResponsesMyCursorIDPage as CustomerListResponsesMyCursorIDPage,
458
- type CustomerCreateParams as CustomerCreateParams,
685
+ type CustomerListResourcesResponsesMyCursorIDPage as CustomerListResourcesResponsesMyCursorIDPage,
459
686
  type CustomerUpdateParams as CustomerUpdateParams,
460
687
  type CustomerListParams as CustomerListParams,
688
+ type CustomerImportParams as CustomerImportParams,
689
+ type CustomerListResourcesParams as CustomerListResourcesParams,
690
+ type CustomerProvisionParams as CustomerProvisionParams,
461
691
  };
462
692
 
463
693
  export { PaymentMethod as PaymentMethod, type PaymentMethodAttachParams as PaymentMethodAttachParams };
464
694
 
465
695
  export {
466
- Usage as Usage,
467
- type UsageRetrieveResponse as UsageRetrieveResponse,
468
- type UsageRetrieveParams as UsageRetrieveParams,
696
+ PromotionalEntitlements as PromotionalEntitlements,
697
+ type PromotionalEntitlementCreateResponse as PromotionalEntitlementCreateResponse,
698
+ type PromotionalEntitlementListResponse as PromotionalEntitlementListResponse,
699
+ type PromotionalEntitlementRevokeResponse as PromotionalEntitlementRevokeResponse,
700
+ type PromotionalEntitlementListResponsesMyCursorIDPage as PromotionalEntitlementListResponsesMyCursorIDPage,
701
+ type PromotionalEntitlementCreateParams as PromotionalEntitlementCreateParams,
702
+ type PromotionalEntitlementListParams as PromotionalEntitlementListParams,
703
+ type PromotionalEntitlementRevokeParams as PromotionalEntitlementRevokeParams,
469
704
  };
470
705
  }
@@ -4,10 +4,24 @@ export {
4
4
  Customers,
5
5
  type CustomerResponse,
6
6
  type CustomerListResponse,
7
- type CustomerCreateParams,
7
+ type CustomerImportResponse,
8
+ type CustomerListResourcesResponse,
8
9
  type CustomerUpdateParams,
9
10
  type CustomerListParams,
11
+ type CustomerImportParams,
12
+ type CustomerListResourcesParams,
13
+ type CustomerProvisionParams,
10
14
  type CustomerListResponsesMyCursorIDPage,
15
+ type CustomerListResourcesResponsesMyCursorIDPage,
11
16
  } from './customers';
12
17
  export { PaymentMethod, type PaymentMethodAttachParams } from './payment-method';
13
- export { Usage, type UsageRetrieveResponse, type UsageRetrieveParams } from './usage';
18
+ export {
19
+ PromotionalEntitlements,
20
+ type PromotionalEntitlementCreateResponse,
21
+ type PromotionalEntitlementListResponse,
22
+ type PromotionalEntitlementRevokeResponse,
23
+ type PromotionalEntitlementCreateParams,
24
+ type PromotionalEntitlementListParams,
25
+ type PromotionalEntitlementRevokeParams,
26
+ type PromotionalEntitlementListResponsesMyCursorIDPage,
27
+ } from './promotional-entitlements';
@@ -6,9 +6,13 @@ import { APIPromise } from '../../../core/api-promise';
6
6
  import { RequestOptions } from '../../../internal/request-options';
7
7
  import { path } from '../../../internal/utils/path';
8
8
 
9
+ /**
10
+ * Operations related to customers
11
+ */
9
12
  export class PaymentMethod extends APIResource {
10
13
  /**
11
- * Perform payment-method attachment on a Customer
14
+ * Attaches a payment method to a customer for billing. Required for paid
15
+ * subscriptions when integrated with a billing provider.
12
16
  */
13
17
  attach(
14
18
  id: string,
@@ -19,7 +23,8 @@ export class PaymentMethod extends APIResource {
19
23
  }
20
24
 
21
25
  /**
22
- * Perform payment-method detachment on a Customer
26
+ * Removes the payment method from a customer. Ensure active paid subscriptions
27
+ * have an alternative payment method.
23
28
  */
24
29
  detach(id: string, options?: RequestOptions): APIPromise<CustomersAPI.CustomerResponse> {
25
30
  return this._client.delete(path`/api/v1/customers/${id}/payment-method`, options);
@@ -52,6 +57,9 @@ export interface PaymentMethodAttachParams {
52
57
  | 'OPEN_FGA'
53
58
  | 'APP_STORE';
54
59
 
60
+ /**
61
+ * Customers selected currency
62
+ */
55
63
  billingCurrency?:
56
64
  | 'usd'
57
65
  | 'aed'