@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
@@ -0,0 +1,672 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../../core/resource';
4
+ import { APIPromise } from '../../../core/api-promise';
5
+ import { MyCursorIDPage, type MyCursorIDPageParams, PagePromise } from '../../../core/pagination';
6
+ import { RequestOptions } from '../../../internal/request-options';
7
+ import { path } from '../../../internal/utils/path';
8
+
9
+ /**
10
+ * Operations related to promotional entitlements
11
+ */
12
+ export class PromotionalEntitlements extends APIResource {
13
+ /**
14
+ * Grants promotional entitlements to a customer, providing feature access outside
15
+ * their subscription. Entitlements can be time-limited or permanent.
16
+ */
17
+ create(
18
+ id: string,
19
+ body: PromotionalEntitlementCreateParams,
20
+ options?: RequestOptions,
21
+ ): APIPromise<PromotionalEntitlementCreateResponse> {
22
+ return this._client.post(path`/api/v1/customers/${id}/promotional-entitlements`, { body, ...options });
23
+ }
24
+
25
+ /**
26
+ * Retrieves a paginated list of a customer's promotional entitlements.
27
+ */
28
+ list(
29
+ id: string,
30
+ query: PromotionalEntitlementListParams | null | undefined = {},
31
+ options?: RequestOptions,
32
+ ): PagePromise<PromotionalEntitlementListResponsesMyCursorIDPage, PromotionalEntitlementListResponse> {
33
+ return this._client.getAPIList(
34
+ path`/api/v1/customers/${id}/promotional-entitlements`,
35
+ MyCursorIDPage<PromotionalEntitlementListResponse>,
36
+ { query, ...options },
37
+ );
38
+ }
39
+
40
+ /**
41
+ * Revokes a previously granted promotional entitlement from a customer for a
42
+ * specific feature.
43
+ */
44
+ revoke(
45
+ featureID: string,
46
+ params: PromotionalEntitlementRevokeParams,
47
+ options?: RequestOptions,
48
+ ): APIPromise<PromotionalEntitlementRevokeResponse> {
49
+ const { id } = params;
50
+ return this._client.delete(path`/api/v1/customers/${id}/promotional-entitlements/${featureID}`, options);
51
+ }
52
+ }
53
+
54
+ export type PromotionalEntitlementListResponsesMyCursorIDPage =
55
+ MyCursorIDPage<PromotionalEntitlementListResponse>;
56
+
57
+ /**
58
+ * Response object
59
+ */
60
+ export interface PromotionalEntitlementCreateResponse {
61
+ data: Array<PromotionalEntitlementCreateResponse.Data>;
62
+ }
63
+
64
+ export namespace PromotionalEntitlementCreateResponse {
65
+ /**
66
+ * Granted feature entitlement
67
+ */
68
+ export interface Data {
69
+ /**
70
+ * Unique identifier for the entity
71
+ */
72
+ id: string;
73
+
74
+ /**
75
+ * Timestamp of when the record was created
76
+ */
77
+ createdAt: string;
78
+
79
+ /**
80
+ * The description of the entitlement
81
+ */
82
+ description: string | null;
83
+
84
+ /**
85
+ * The end date of the promotional entitlement
86
+ */
87
+ endDate: string | null;
88
+
89
+ /**
90
+ * The enum values of the entitlement
91
+ */
92
+ enumValues: Array<string> | null;
93
+
94
+ /**
95
+ * The unique identifier for the environment
96
+ */
97
+ environmentId: string;
98
+
99
+ /**
100
+ * Feature group IDs associated with this entitlement
101
+ */
102
+ featureGroupIds: Array<string> | null;
103
+
104
+ /**
105
+ * The unique identifier of the entitlement feature
106
+ */
107
+ featureId: string;
108
+
109
+ /**
110
+ * Whether the entitlement has a soft limit
111
+ */
112
+ hasSoftLimit: boolean | null;
113
+
114
+ /**
115
+ * Whether the entitlement has an unlimited usage
116
+ */
117
+ hasUnlimitedUsage: boolean | null;
118
+
119
+ /**
120
+ * Whether the entitlement is visible
121
+ */
122
+ isVisible: boolean;
123
+
124
+ /**
125
+ * The grant period of the promotional entitlement
126
+ */
127
+ period: '1 week' | '1 month' | '6 month' | '1 year' | 'lifetime' | 'custom';
128
+
129
+ /**
130
+ * The reset period of the entitlement
131
+ */
132
+ resetPeriod: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR' | null;
133
+
134
+ /**
135
+ * The reset period configuration of the entitlement
136
+ */
137
+ resetPeriodConfiguration:
138
+ | Data.YearlyResetPeriodConfig
139
+ | Data.MonthlyResetPeriodConfig
140
+ | Data.WeeklyResetPeriodConfig
141
+ | null;
142
+
143
+ /**
144
+ * The start date of the entitlement
145
+ */
146
+ startDate: string;
147
+
148
+ /**
149
+ * The status of the entitlement
150
+ */
151
+ status: 'Active' | 'Expired' | 'Paused';
152
+
153
+ /**
154
+ * Timestamp of when the record was last updated
155
+ */
156
+ updatedAt: string;
157
+
158
+ /**
159
+ * The usage limit of the entitlement
160
+ */
161
+ usageLimit: number | null;
162
+ }
163
+
164
+ export namespace Data {
165
+ /**
166
+ * Yearly reset configuration
167
+ */
168
+ export interface YearlyResetPeriodConfig {
169
+ /**
170
+ * Reset anchor (SubscriptionStart)
171
+ */
172
+ accordingTo: 'SubscriptionStart';
173
+ }
174
+
175
+ /**
176
+ * Monthly reset configuration
177
+ */
178
+ export interface MonthlyResetPeriodConfig {
179
+ /**
180
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
181
+ */
182
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
183
+ }
184
+
185
+ /**
186
+ * Weekly reset configuration
187
+ */
188
+ export interface WeeklyResetPeriodConfig {
189
+ /**
190
+ * Reset anchor (SubscriptionStart or specific day)
191
+ */
192
+ accordingTo:
193
+ | 'SubscriptionStart'
194
+ | 'EverySunday'
195
+ | 'EveryMonday'
196
+ | 'EveryTuesday'
197
+ | 'EveryWednesday'
198
+ | 'EveryThursday'
199
+ | 'EveryFriday'
200
+ | 'EverySaturday';
201
+ }
202
+ }
203
+ }
204
+
205
+ /**
206
+ * Granted feature entitlement
207
+ */
208
+ export interface PromotionalEntitlementListResponse {
209
+ /**
210
+ * Unique identifier for the entity
211
+ */
212
+ id: string;
213
+
214
+ /**
215
+ * Timestamp of when the record was created
216
+ */
217
+ createdAt: string;
218
+
219
+ /**
220
+ * The description of the entitlement
221
+ */
222
+ description: string | null;
223
+
224
+ /**
225
+ * The end date of the promotional entitlement
226
+ */
227
+ endDate: string | null;
228
+
229
+ /**
230
+ * The enum values of the entitlement
231
+ */
232
+ enumValues: Array<string> | null;
233
+
234
+ /**
235
+ * The unique identifier for the environment
236
+ */
237
+ environmentId: string;
238
+
239
+ /**
240
+ * Feature group IDs associated with this entitlement
241
+ */
242
+ featureGroupIds: Array<string> | null;
243
+
244
+ /**
245
+ * The unique identifier of the entitlement feature
246
+ */
247
+ featureId: string;
248
+
249
+ /**
250
+ * Whether the entitlement has a soft limit
251
+ */
252
+ hasSoftLimit: boolean | null;
253
+
254
+ /**
255
+ * Whether the entitlement has an unlimited usage
256
+ */
257
+ hasUnlimitedUsage: boolean | null;
258
+
259
+ /**
260
+ * Whether the entitlement is visible
261
+ */
262
+ isVisible: boolean;
263
+
264
+ /**
265
+ * The grant period of the promotional entitlement
266
+ */
267
+ period: '1 week' | '1 month' | '6 month' | '1 year' | 'lifetime' | 'custom';
268
+
269
+ /**
270
+ * The reset period of the entitlement
271
+ */
272
+ resetPeriod: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR' | null;
273
+
274
+ /**
275
+ * The reset period configuration of the entitlement
276
+ */
277
+ resetPeriodConfiguration:
278
+ | PromotionalEntitlementListResponse.YearlyResetPeriodConfig
279
+ | PromotionalEntitlementListResponse.MonthlyResetPeriodConfig
280
+ | PromotionalEntitlementListResponse.WeeklyResetPeriodConfig
281
+ | null;
282
+
283
+ /**
284
+ * The start date of the entitlement
285
+ */
286
+ startDate: string;
287
+
288
+ /**
289
+ * The status of the entitlement
290
+ */
291
+ status: 'Active' | 'Expired' | 'Paused';
292
+
293
+ /**
294
+ * Timestamp of when the record was last updated
295
+ */
296
+ updatedAt: string;
297
+
298
+ /**
299
+ * The usage limit of the entitlement
300
+ */
301
+ usageLimit: number | null;
302
+ }
303
+
304
+ export namespace PromotionalEntitlementListResponse {
305
+ /**
306
+ * Yearly reset configuration
307
+ */
308
+ export interface YearlyResetPeriodConfig {
309
+ /**
310
+ * Reset anchor (SubscriptionStart)
311
+ */
312
+ accordingTo: 'SubscriptionStart';
313
+ }
314
+
315
+ /**
316
+ * Monthly reset configuration
317
+ */
318
+ export interface MonthlyResetPeriodConfig {
319
+ /**
320
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
321
+ */
322
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
323
+ }
324
+
325
+ /**
326
+ * Weekly reset configuration
327
+ */
328
+ export interface WeeklyResetPeriodConfig {
329
+ /**
330
+ * Reset anchor (SubscriptionStart or specific day)
331
+ */
332
+ accordingTo:
333
+ | 'SubscriptionStart'
334
+ | 'EverySunday'
335
+ | 'EveryMonday'
336
+ | 'EveryTuesday'
337
+ | 'EveryWednesday'
338
+ | 'EveryThursday'
339
+ | 'EveryFriday'
340
+ | 'EverySaturday';
341
+ }
342
+ }
343
+
344
+ /**
345
+ * Response object
346
+ */
347
+ export interface PromotionalEntitlementRevokeResponse {
348
+ /**
349
+ * Granted feature entitlement
350
+ */
351
+ data: PromotionalEntitlementRevokeResponse.Data;
352
+ }
353
+
354
+ export namespace PromotionalEntitlementRevokeResponse {
355
+ /**
356
+ * Granted feature entitlement
357
+ */
358
+ export interface Data {
359
+ /**
360
+ * Unique identifier for the entity
361
+ */
362
+ id: string;
363
+
364
+ /**
365
+ * Timestamp of when the record was created
366
+ */
367
+ createdAt: string;
368
+
369
+ /**
370
+ * The description of the entitlement
371
+ */
372
+ description: string | null;
373
+
374
+ /**
375
+ * The end date of the promotional entitlement
376
+ */
377
+ endDate: string | null;
378
+
379
+ /**
380
+ * The enum values of the entitlement
381
+ */
382
+ enumValues: Array<string> | null;
383
+
384
+ /**
385
+ * The unique identifier for the environment
386
+ */
387
+ environmentId: string;
388
+
389
+ /**
390
+ * Feature group IDs associated with this entitlement
391
+ */
392
+ featureGroupIds: Array<string> | null;
393
+
394
+ /**
395
+ * The unique identifier of the entitlement feature
396
+ */
397
+ featureId: string;
398
+
399
+ /**
400
+ * Whether the entitlement has a soft limit
401
+ */
402
+ hasSoftLimit: boolean | null;
403
+
404
+ /**
405
+ * Whether the entitlement has an unlimited usage
406
+ */
407
+ hasUnlimitedUsage: boolean | null;
408
+
409
+ /**
410
+ * Whether the entitlement is visible
411
+ */
412
+ isVisible: boolean;
413
+
414
+ /**
415
+ * The grant period of the promotional entitlement
416
+ */
417
+ period: '1 week' | '1 month' | '6 month' | '1 year' | 'lifetime' | 'custom';
418
+
419
+ /**
420
+ * The reset period of the entitlement
421
+ */
422
+ resetPeriod: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR' | null;
423
+
424
+ /**
425
+ * The reset period configuration of the entitlement
426
+ */
427
+ resetPeriodConfiguration:
428
+ | Data.YearlyResetPeriodConfig
429
+ | Data.MonthlyResetPeriodConfig
430
+ | Data.WeeklyResetPeriodConfig
431
+ | null;
432
+
433
+ /**
434
+ * The start date of the entitlement
435
+ */
436
+ startDate: string;
437
+
438
+ /**
439
+ * The status of the entitlement
440
+ */
441
+ status: 'Active' | 'Expired' | 'Paused';
442
+
443
+ /**
444
+ * Timestamp of when the record was last updated
445
+ */
446
+ updatedAt: string;
447
+
448
+ /**
449
+ * The usage limit of the entitlement
450
+ */
451
+ usageLimit: number | null;
452
+ }
453
+
454
+ export namespace Data {
455
+ /**
456
+ * Yearly reset configuration
457
+ */
458
+ export interface YearlyResetPeriodConfig {
459
+ /**
460
+ * Reset anchor (SubscriptionStart)
461
+ */
462
+ accordingTo: 'SubscriptionStart';
463
+ }
464
+
465
+ /**
466
+ * Monthly reset configuration
467
+ */
468
+ export interface MonthlyResetPeriodConfig {
469
+ /**
470
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
471
+ */
472
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
473
+ }
474
+
475
+ /**
476
+ * Weekly reset configuration
477
+ */
478
+ export interface WeeklyResetPeriodConfig {
479
+ /**
480
+ * Reset anchor (SubscriptionStart or specific day)
481
+ */
482
+ accordingTo:
483
+ | 'SubscriptionStart'
484
+ | 'EverySunday'
485
+ | 'EveryMonday'
486
+ | 'EveryTuesday'
487
+ | 'EveryWednesday'
488
+ | 'EveryThursday'
489
+ | 'EveryFriday'
490
+ | 'EverySaturday';
491
+ }
492
+ }
493
+ }
494
+
495
+ export interface PromotionalEntitlementCreateParams {
496
+ /**
497
+ * Promotional entitlements to grant
498
+ */
499
+ promotionalEntitlements: Array<PromotionalEntitlementCreateParams.PromotionalEntitlement>;
500
+ }
501
+
502
+ export namespace PromotionalEntitlementCreateParams {
503
+ /**
504
+ * Single entitlement grant config
505
+ */
506
+ export interface PromotionalEntitlement {
507
+ /**
508
+ * The custom end date of the promotional entitlement
509
+ */
510
+ customEndDate: string | null;
511
+
512
+ /**
513
+ * The enum values of the entitlement
514
+ */
515
+ enumValues: Array<string> | null;
516
+
517
+ /**
518
+ * The unique identifier of the entitlement feature
519
+ */
520
+ featureId: string;
521
+
522
+ /**
523
+ * Whether the entitlement has a soft limit
524
+ */
525
+ hasSoftLimit: boolean | null;
526
+
527
+ /**
528
+ * Whether the entitlement has an unlimited usage
529
+ */
530
+ hasUnlimitedUsage: boolean | null;
531
+
532
+ /**
533
+ * Whether the entitlement is visible
534
+ */
535
+ isVisible: boolean | null;
536
+
537
+ /**
538
+ * The monthly reset period configuration of the entitlement, defined when reset
539
+ * period is monthly
540
+ */
541
+ monthlyResetPeriodConfiguration: PromotionalEntitlement.MonthlyResetPeriodConfiguration | null;
542
+
543
+ /**
544
+ * The grant period of the promotional entitlement
545
+ */
546
+ period: '1 week' | '1 month' | '6 month' | '1 year' | 'lifetime' | 'custom';
547
+
548
+ /**
549
+ * The reset period of the entitlement
550
+ */
551
+ resetPeriod: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR' | null;
552
+
553
+ /**
554
+ * The usage limit of the entitlement
555
+ */
556
+ usageLimit: number | null;
557
+
558
+ /**
559
+ * The weekly reset period configuration of the entitlement, defined when reset
560
+ * period is weekly
561
+ */
562
+ weeklyResetPeriodConfiguration: PromotionalEntitlement.WeeklyResetPeriodConfiguration | null;
563
+
564
+ /**
565
+ * The yearly reset period configuration of the entitlement, defined when reset
566
+ * period is yearly
567
+ */
568
+ yearlyResetPeriodConfiguration: PromotionalEntitlement.YearlyResetPeriodConfiguration | null;
569
+ }
570
+
571
+ export namespace PromotionalEntitlement {
572
+ /**
573
+ * The monthly reset period configuration of the entitlement, defined when reset
574
+ * period is monthly
575
+ */
576
+ export interface MonthlyResetPeriodConfiguration {
577
+ /**
578
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
579
+ */
580
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
581
+ }
582
+
583
+ /**
584
+ * The weekly reset period configuration of the entitlement, defined when reset
585
+ * period is weekly
586
+ */
587
+ export interface WeeklyResetPeriodConfiguration {
588
+ /**
589
+ * Reset anchor (SubscriptionStart or specific day)
590
+ */
591
+ accordingTo:
592
+ | 'SubscriptionStart'
593
+ | 'EverySunday'
594
+ | 'EveryMonday'
595
+ | 'EveryTuesday'
596
+ | 'EveryWednesday'
597
+ | 'EveryThursday'
598
+ | 'EveryFriday'
599
+ | 'EverySaturday';
600
+ }
601
+
602
+ /**
603
+ * The yearly reset period configuration of the entitlement, defined when reset
604
+ * period is yearly
605
+ */
606
+ export interface YearlyResetPeriodConfiguration {
607
+ /**
608
+ * Reset anchor (SubscriptionStart)
609
+ */
610
+ accordingTo: 'SubscriptionStart';
611
+ }
612
+ }
613
+ }
614
+
615
+ export interface PromotionalEntitlementListParams extends MyCursorIDPageParams {
616
+ /**
617
+ * Filter by creation date using range operators: gt, gte, lt, lte
618
+ */
619
+ createdAt?: PromotionalEntitlementListParams.CreatedAt;
620
+
621
+ /**
622
+ * Filter by promotional entitlement status. Supports comma-separated values for
623
+ * multiple statuses
624
+ */
625
+ status?: string;
626
+ }
627
+
628
+ export namespace PromotionalEntitlementListParams {
629
+ /**
630
+ * Filter by creation date using range operators: gt, gte, lt, lte
631
+ */
632
+ export interface CreatedAt {
633
+ /**
634
+ * Greater than the specified createdAt value
635
+ */
636
+ gt?: string;
637
+
638
+ /**
639
+ * Greater than or equal to the specified createdAt value
640
+ */
641
+ gte?: string;
642
+
643
+ /**
644
+ * Less than the specified createdAt value
645
+ */
646
+ lt?: string;
647
+
648
+ /**
649
+ * Less than or equal to the specified createdAt value
650
+ */
651
+ lte?: string;
652
+ }
653
+ }
654
+
655
+ export interface PromotionalEntitlementRevokeParams {
656
+ /**
657
+ * The unique identifier of the customer
658
+ */
659
+ id: string;
660
+ }
661
+
662
+ export declare namespace PromotionalEntitlements {
663
+ export {
664
+ type PromotionalEntitlementCreateResponse as PromotionalEntitlementCreateResponse,
665
+ type PromotionalEntitlementListResponse as PromotionalEntitlementListResponse,
666
+ type PromotionalEntitlementRevokeResponse as PromotionalEntitlementRevokeResponse,
667
+ type PromotionalEntitlementListResponsesMyCursorIDPage as PromotionalEntitlementListResponsesMyCursorIDPage,
668
+ type PromotionalEntitlementCreateParams as PromotionalEntitlementCreateParams,
669
+ type PromotionalEntitlementListParams as PromotionalEntitlementListParams,
670
+ type PromotionalEntitlementRevokeParams as PromotionalEntitlementRevokeParams,
671
+ };
672
+ }