@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,1120 @@
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 { RequestOptions } from '../../../internal/request-options';
6
+ import { path } from '../../../internal/utils/path';
7
+
8
+ export class Entitlements extends APIResource {
9
+ /**
10
+ * Creates one or more entitlements (feature or credit) on a draft addon.
11
+ */
12
+ create(
13
+ addonID: string,
14
+ body: EntitlementCreateParams,
15
+ options?: RequestOptions,
16
+ ): APIPromise<EntitlementCreateResponse> {
17
+ return this._client.post(path`/api/v1/addons/${addonID}/entitlements`, { body, ...options });
18
+ }
19
+
20
+ /**
21
+ * Updates an existing entitlement on a draft addon.
22
+ */
23
+ update(
24
+ id: string,
25
+ params: EntitlementUpdateParams,
26
+ options?: RequestOptions,
27
+ ): APIPromise<AddonPackageEntitlement> {
28
+ const { addonId, ...body } = params;
29
+ return this._client.patch(path`/api/v1/addons/${addonId}/entitlements/${id}`, { body, ...options });
30
+ }
31
+
32
+ /**
33
+ * Retrieves a list of entitlements for an addon.
34
+ */
35
+ list(addonID: string, options?: RequestOptions): APIPromise<EntitlementListResponse> {
36
+ return this._client.get(path`/api/v1/addons/${addonID}/entitlements`, options);
37
+ }
38
+
39
+ /**
40
+ * Deletes an entitlement from a draft addon.
41
+ */
42
+ delete(
43
+ id: string,
44
+ params: EntitlementDeleteParams,
45
+ options?: RequestOptions,
46
+ ): APIPromise<AddonPackageEntitlement> {
47
+ const { addonId } = params;
48
+ return this._client.delete(path`/api/v1/addons/${addonId}/entitlements/${id}`, options);
49
+ }
50
+ }
51
+
52
+ /**
53
+ * Response object
54
+ */
55
+ export interface AddonPackageEntitlement {
56
+ /**
57
+ * Feature entitlement response
58
+ */
59
+ data: AddonPackageEntitlement.Feature | AddonPackageEntitlement.Credit;
60
+ }
61
+
62
+ export namespace AddonPackageEntitlement {
63
+ /**
64
+ * Feature entitlement response
65
+ */
66
+ export interface Feature {
67
+ /**
68
+ * Unique identifier of the entitlement
69
+ */
70
+ id: string;
71
+
72
+ /**
73
+ * Entitlement behavior (Increment or Override)
74
+ */
75
+ behavior: 'Increment' | 'Override';
76
+
77
+ /**
78
+ * Timestamp of when the record was created
79
+ */
80
+ createdAt: string;
81
+
82
+ /**
83
+ * Optional description of the entitlement
84
+ */
85
+ description: string | null;
86
+
87
+ /**
88
+ * Override display name for the entitlement
89
+ */
90
+ displayNameOverride: string | null;
91
+
92
+ /**
93
+ * Allowed enum values (for feature entitlements)
94
+ */
95
+ enumValues: Array<string> | null;
96
+
97
+ /**
98
+ * Whether the usage limit is a soft limit (for feature entitlements)
99
+ */
100
+ hasSoftLimit: boolean | null;
101
+
102
+ /**
103
+ * Whether usage is unlimited (for feature entitlements)
104
+ */
105
+ hasUnlimitedUsage: boolean | null;
106
+
107
+ /**
108
+ * Widget types where this entitlement is hidden
109
+ */
110
+ hiddenFromWidgets: Array<'PAYWALL' | 'CUSTOMER_PORTAL' | 'CHECKOUT'>;
111
+
112
+ /**
113
+ * Whether this is a custom entitlement
114
+ */
115
+ isCustom: boolean | null;
116
+
117
+ /**
118
+ * Whether the entitlement is granted
119
+ */
120
+ isGranted: boolean;
121
+
122
+ /**
123
+ * Display order of the entitlement
124
+ */
125
+ order: number | null;
126
+
127
+ /**
128
+ * Usage reset period (for feature entitlements)
129
+ */
130
+ resetPeriod: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR' | null;
131
+
132
+ /**
133
+ * Reset period configuration (for feature entitlements)
134
+ */
135
+ resetPeriodConfiguration:
136
+ | Feature.YearlyResetPeriodConfig
137
+ | Feature.MonthlyResetPeriodConfig
138
+ | Feature.WeeklyResetPeriodConfig
139
+ | null;
140
+
141
+ /**
142
+ * Entitlement type (FEATURE or CREDIT)
143
+ */
144
+ type: 'FEATURE';
145
+
146
+ /**
147
+ * Timestamp of when the record was last updated
148
+ */
149
+ updatedAt: string;
150
+
151
+ /**
152
+ * Usage limit (for feature entitlements)
153
+ */
154
+ usageLimit: number | null;
155
+ }
156
+
157
+ export namespace Feature {
158
+ /**
159
+ * Yearly reset configuration
160
+ */
161
+ export interface YearlyResetPeriodConfig {
162
+ /**
163
+ * Reset anchor (SubscriptionStart)
164
+ */
165
+ accordingTo: 'SubscriptionStart';
166
+ }
167
+
168
+ /**
169
+ * Monthly reset configuration
170
+ */
171
+ export interface MonthlyResetPeriodConfig {
172
+ /**
173
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
174
+ */
175
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
176
+ }
177
+
178
+ /**
179
+ * Weekly reset configuration
180
+ */
181
+ export interface WeeklyResetPeriodConfig {
182
+ /**
183
+ * Reset anchor (SubscriptionStart or specific day)
184
+ */
185
+ accordingTo:
186
+ | 'SubscriptionStart'
187
+ | 'EverySunday'
188
+ | 'EveryMonday'
189
+ | 'EveryTuesday'
190
+ | 'EveryWednesday'
191
+ | 'EveryThursday'
192
+ | 'EveryFriday'
193
+ | 'EverySaturday';
194
+ }
195
+ }
196
+
197
+ /**
198
+ * Credit entitlement response
199
+ */
200
+ export interface Credit {
201
+ /**
202
+ * Unique identifier of the entitlement
203
+ */
204
+ id: string;
205
+
206
+ /**
207
+ * Credit amount (for credit entitlements)
208
+ */
209
+ amount: number | null;
210
+
211
+ /**
212
+ * Entitlement behavior (Increment or Override)
213
+ */
214
+ behavior: 'Increment' | 'Override';
215
+
216
+ /**
217
+ * Credit grant cadence (for credit entitlements)
218
+ */
219
+ cadence: 'MONTH' | 'YEAR' | null;
220
+
221
+ /**
222
+ * Timestamp of when the record was created
223
+ */
224
+ createdAt: string;
225
+
226
+ /**
227
+ * Optional description of the entitlement
228
+ */
229
+ description: string | null;
230
+
231
+ /**
232
+ * Override display name for the entitlement
233
+ */
234
+ displayNameOverride: string | null;
235
+
236
+ /**
237
+ * Widget types where this entitlement is hidden
238
+ */
239
+ hiddenFromWidgets: Array<'PAYWALL' | 'CUSTOMER_PORTAL' | 'CHECKOUT'>;
240
+
241
+ /**
242
+ * Whether this is a custom entitlement
243
+ */
244
+ isCustom: boolean | null;
245
+
246
+ /**
247
+ * Whether the entitlement is granted
248
+ */
249
+ isGranted: boolean;
250
+
251
+ /**
252
+ * Display order of the entitlement
253
+ */
254
+ order: number | null;
255
+
256
+ /**
257
+ * Entitlement type (FEATURE or CREDIT)
258
+ */
259
+ type: 'CREDIT';
260
+
261
+ /**
262
+ * Timestamp of when the record was last updated
263
+ */
264
+ updatedAt: string;
265
+ }
266
+ }
267
+
268
+ /**
269
+ * Response object
270
+ */
271
+ export interface EntitlementCreateResponse {
272
+ data: Array<EntitlementCreateResponse.Feature | EntitlementCreateResponse.Credit>;
273
+ }
274
+
275
+ export namespace EntitlementCreateResponse {
276
+ /**
277
+ * Feature entitlement response
278
+ */
279
+ export interface Feature {
280
+ /**
281
+ * Unique identifier of the entitlement
282
+ */
283
+ id: string;
284
+
285
+ /**
286
+ * Entitlement behavior (Increment or Override)
287
+ */
288
+ behavior: 'Increment' | 'Override';
289
+
290
+ /**
291
+ * Timestamp of when the record was created
292
+ */
293
+ createdAt: string;
294
+
295
+ /**
296
+ * Optional description of the entitlement
297
+ */
298
+ description: string | null;
299
+
300
+ /**
301
+ * Override display name for the entitlement
302
+ */
303
+ displayNameOverride: string | null;
304
+
305
+ /**
306
+ * Allowed enum values (for feature entitlements)
307
+ */
308
+ enumValues: Array<string> | null;
309
+
310
+ /**
311
+ * Whether the usage limit is a soft limit (for feature entitlements)
312
+ */
313
+ hasSoftLimit: boolean | null;
314
+
315
+ /**
316
+ * Whether usage is unlimited (for feature entitlements)
317
+ */
318
+ hasUnlimitedUsage: boolean | null;
319
+
320
+ /**
321
+ * Widget types where this entitlement is hidden
322
+ */
323
+ hiddenFromWidgets: Array<'PAYWALL' | 'CUSTOMER_PORTAL' | 'CHECKOUT'>;
324
+
325
+ /**
326
+ * Whether this is a custom entitlement
327
+ */
328
+ isCustom: boolean | null;
329
+
330
+ /**
331
+ * Whether the entitlement is granted
332
+ */
333
+ isGranted: boolean;
334
+
335
+ /**
336
+ * Display order of the entitlement
337
+ */
338
+ order: number | null;
339
+
340
+ /**
341
+ * Usage reset period (for feature entitlements)
342
+ */
343
+ resetPeriod: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR' | null;
344
+
345
+ /**
346
+ * Reset period configuration (for feature entitlements)
347
+ */
348
+ resetPeriodConfiguration:
349
+ | Feature.YearlyResetPeriodConfig
350
+ | Feature.MonthlyResetPeriodConfig
351
+ | Feature.WeeklyResetPeriodConfig
352
+ | null;
353
+
354
+ /**
355
+ * Entitlement type (FEATURE or CREDIT)
356
+ */
357
+ type: 'FEATURE';
358
+
359
+ /**
360
+ * Timestamp of when the record was last updated
361
+ */
362
+ updatedAt: string;
363
+
364
+ /**
365
+ * Usage limit (for feature entitlements)
366
+ */
367
+ usageLimit: number | null;
368
+ }
369
+
370
+ export namespace Feature {
371
+ /**
372
+ * Yearly reset configuration
373
+ */
374
+ export interface YearlyResetPeriodConfig {
375
+ /**
376
+ * Reset anchor (SubscriptionStart)
377
+ */
378
+ accordingTo: 'SubscriptionStart';
379
+ }
380
+
381
+ /**
382
+ * Monthly reset configuration
383
+ */
384
+ export interface MonthlyResetPeriodConfig {
385
+ /**
386
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
387
+ */
388
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
389
+ }
390
+
391
+ /**
392
+ * Weekly reset configuration
393
+ */
394
+ export interface WeeklyResetPeriodConfig {
395
+ /**
396
+ * Reset anchor (SubscriptionStart or specific day)
397
+ */
398
+ accordingTo:
399
+ | 'SubscriptionStart'
400
+ | 'EverySunday'
401
+ | 'EveryMonday'
402
+ | 'EveryTuesday'
403
+ | 'EveryWednesday'
404
+ | 'EveryThursday'
405
+ | 'EveryFriday'
406
+ | 'EverySaturday';
407
+ }
408
+ }
409
+
410
+ /**
411
+ * Credit entitlement response
412
+ */
413
+ export interface Credit {
414
+ /**
415
+ * Unique identifier of the entitlement
416
+ */
417
+ id: string;
418
+
419
+ /**
420
+ * Credit amount (for credit entitlements)
421
+ */
422
+ amount: number | null;
423
+
424
+ /**
425
+ * Entitlement behavior (Increment or Override)
426
+ */
427
+ behavior: 'Increment' | 'Override';
428
+
429
+ /**
430
+ * Credit grant cadence (for credit entitlements)
431
+ */
432
+ cadence: 'MONTH' | 'YEAR' | null;
433
+
434
+ /**
435
+ * Timestamp of when the record was created
436
+ */
437
+ createdAt: string;
438
+
439
+ /**
440
+ * Optional description of the entitlement
441
+ */
442
+ description: string | null;
443
+
444
+ /**
445
+ * Override display name for the entitlement
446
+ */
447
+ displayNameOverride: string | null;
448
+
449
+ /**
450
+ * Widget types where this entitlement is hidden
451
+ */
452
+ hiddenFromWidgets: Array<'PAYWALL' | 'CUSTOMER_PORTAL' | 'CHECKOUT'>;
453
+
454
+ /**
455
+ * Whether this is a custom entitlement
456
+ */
457
+ isCustom: boolean | null;
458
+
459
+ /**
460
+ * Whether the entitlement is granted
461
+ */
462
+ isGranted: boolean;
463
+
464
+ /**
465
+ * Display order of the entitlement
466
+ */
467
+ order: number | null;
468
+
469
+ /**
470
+ * Entitlement type (FEATURE or CREDIT)
471
+ */
472
+ type: 'CREDIT';
473
+
474
+ /**
475
+ * Timestamp of when the record was last updated
476
+ */
477
+ updatedAt: string;
478
+ }
479
+ }
480
+
481
+ /**
482
+ * Response list object
483
+ */
484
+ export interface EntitlementListResponse {
485
+ data: Array<EntitlementListResponse.Feature | EntitlementListResponse.Credit>;
486
+
487
+ /**
488
+ * Pagination metadata including cursors for navigating through results
489
+ */
490
+ pagination: EntitlementListResponse.Pagination;
491
+ }
492
+
493
+ export namespace EntitlementListResponse {
494
+ /**
495
+ * Feature entitlement response
496
+ */
497
+ export interface Feature {
498
+ /**
499
+ * Unique identifier of the entitlement
500
+ */
501
+ id: string;
502
+
503
+ /**
504
+ * Entitlement behavior (Increment or Override)
505
+ */
506
+ behavior: 'Increment' | 'Override';
507
+
508
+ /**
509
+ * Timestamp of when the record was created
510
+ */
511
+ createdAt: string;
512
+
513
+ /**
514
+ * Optional description of the entitlement
515
+ */
516
+ description: string | null;
517
+
518
+ /**
519
+ * Override display name for the entitlement
520
+ */
521
+ displayNameOverride: string | null;
522
+
523
+ /**
524
+ * Allowed enum values (for feature entitlements)
525
+ */
526
+ enumValues: Array<string> | null;
527
+
528
+ /**
529
+ * Whether the usage limit is a soft limit (for feature entitlements)
530
+ */
531
+ hasSoftLimit: boolean | null;
532
+
533
+ /**
534
+ * Whether usage is unlimited (for feature entitlements)
535
+ */
536
+ hasUnlimitedUsage: boolean | null;
537
+
538
+ /**
539
+ * Widget types where this entitlement is hidden
540
+ */
541
+ hiddenFromWidgets: Array<'PAYWALL' | 'CUSTOMER_PORTAL' | 'CHECKOUT'>;
542
+
543
+ /**
544
+ * Whether this is a custom entitlement
545
+ */
546
+ isCustom: boolean | null;
547
+
548
+ /**
549
+ * Whether the entitlement is granted
550
+ */
551
+ isGranted: boolean;
552
+
553
+ /**
554
+ * Display order of the entitlement
555
+ */
556
+ order: number | null;
557
+
558
+ /**
559
+ * Usage reset period (for feature entitlements)
560
+ */
561
+ resetPeriod: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR' | null;
562
+
563
+ /**
564
+ * Reset period configuration (for feature entitlements)
565
+ */
566
+ resetPeriodConfiguration:
567
+ | Feature.YearlyResetPeriodConfig
568
+ | Feature.MonthlyResetPeriodConfig
569
+ | Feature.WeeklyResetPeriodConfig
570
+ | null;
571
+
572
+ /**
573
+ * Entitlement type (FEATURE or CREDIT)
574
+ */
575
+ type: 'FEATURE';
576
+
577
+ /**
578
+ * Timestamp of when the record was last updated
579
+ */
580
+ updatedAt: string;
581
+
582
+ /**
583
+ * Usage limit (for feature entitlements)
584
+ */
585
+ usageLimit: number | null;
586
+ }
587
+
588
+ export namespace Feature {
589
+ /**
590
+ * Yearly reset configuration
591
+ */
592
+ export interface YearlyResetPeriodConfig {
593
+ /**
594
+ * Reset anchor (SubscriptionStart)
595
+ */
596
+ accordingTo: 'SubscriptionStart';
597
+ }
598
+
599
+ /**
600
+ * Monthly reset configuration
601
+ */
602
+ export interface MonthlyResetPeriodConfig {
603
+ /**
604
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
605
+ */
606
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
607
+ }
608
+
609
+ /**
610
+ * Weekly reset configuration
611
+ */
612
+ export interface WeeklyResetPeriodConfig {
613
+ /**
614
+ * Reset anchor (SubscriptionStart or specific day)
615
+ */
616
+ accordingTo:
617
+ | 'SubscriptionStart'
618
+ | 'EverySunday'
619
+ | 'EveryMonday'
620
+ | 'EveryTuesday'
621
+ | 'EveryWednesday'
622
+ | 'EveryThursday'
623
+ | 'EveryFriday'
624
+ | 'EverySaturday';
625
+ }
626
+ }
627
+
628
+ /**
629
+ * Credit entitlement response
630
+ */
631
+ export interface Credit {
632
+ /**
633
+ * Unique identifier of the entitlement
634
+ */
635
+ id: string;
636
+
637
+ /**
638
+ * Credit amount (for credit entitlements)
639
+ */
640
+ amount: number | null;
641
+
642
+ /**
643
+ * Entitlement behavior (Increment or Override)
644
+ */
645
+ behavior: 'Increment' | 'Override';
646
+
647
+ /**
648
+ * Credit grant cadence (for credit entitlements)
649
+ */
650
+ cadence: 'MONTH' | 'YEAR' | null;
651
+
652
+ /**
653
+ * Timestamp of when the record was created
654
+ */
655
+ createdAt: string;
656
+
657
+ /**
658
+ * Optional description of the entitlement
659
+ */
660
+ description: string | null;
661
+
662
+ /**
663
+ * Override display name for the entitlement
664
+ */
665
+ displayNameOverride: string | null;
666
+
667
+ /**
668
+ * Widget types where this entitlement is hidden
669
+ */
670
+ hiddenFromWidgets: Array<'PAYWALL' | 'CUSTOMER_PORTAL' | 'CHECKOUT'>;
671
+
672
+ /**
673
+ * Whether this is a custom entitlement
674
+ */
675
+ isCustom: boolean | null;
676
+
677
+ /**
678
+ * Whether the entitlement is granted
679
+ */
680
+ isGranted: boolean;
681
+
682
+ /**
683
+ * Display order of the entitlement
684
+ */
685
+ order: number | null;
686
+
687
+ /**
688
+ * Entitlement type (FEATURE or CREDIT)
689
+ */
690
+ type: 'CREDIT';
691
+
692
+ /**
693
+ * Timestamp of when the record was last updated
694
+ */
695
+ updatedAt: string;
696
+ }
697
+
698
+ /**
699
+ * Pagination metadata including cursors for navigating through results
700
+ */
701
+ export interface Pagination {
702
+ /**
703
+ * Cursor for fetching the next page of results, or null if no additional pages
704
+ * exist
705
+ */
706
+ next: string | null;
707
+
708
+ /**
709
+ * Cursor for fetching the previous page of results, or null if at the beginning
710
+ */
711
+ prev: string | null;
712
+ }
713
+ }
714
+
715
+ export interface EntitlementCreateParams {
716
+ /**
717
+ * Entitlements to create
718
+ */
719
+ entitlements: Array<EntitlementCreateParams.Feature | EntitlementCreateParams.Credit>;
720
+ }
721
+
722
+ export namespace EntitlementCreateParams {
723
+ /**
724
+ * Request to create a feature entitlement
725
+ */
726
+ export interface Feature {
727
+ /**
728
+ * The feature ID to attach the entitlement to
729
+ */
730
+ id: string;
731
+
732
+ /**
733
+ * CreateFeatureEntitlementRequest
734
+ */
735
+ type: 'FEATURE';
736
+
737
+ /**
738
+ * Entitlement behavior (Increment or Override)
739
+ */
740
+ behavior?: 'Increment' | 'Override';
741
+
742
+ /**
743
+ * Description of the entitlement
744
+ */
745
+ description?: string;
746
+
747
+ /**
748
+ * Override display name for the entitlement
749
+ */
750
+ displayNameOverride?: string;
751
+
752
+ /**
753
+ * Allowed enum values for the feature entitlement
754
+ */
755
+ enumValues?: Array<string>;
756
+
757
+ /**
758
+ * Whether the usage limit is a soft limit
759
+ */
760
+ hasSoftLimit?: boolean;
761
+
762
+ /**
763
+ * Whether usage is unlimited
764
+ */
765
+ hasUnlimitedUsage?: boolean;
766
+
767
+ /**
768
+ * Widget types where this entitlement is hidden
769
+ */
770
+ hiddenFromWidgets?: Array<'PAYWALL' | 'CUSTOMER_PORTAL' | 'CHECKOUT'>;
771
+
772
+ /**
773
+ * Whether this is a custom entitlement
774
+ */
775
+ isCustom?: boolean;
776
+
777
+ /**
778
+ * Whether the entitlement is granted
779
+ */
780
+ isGranted?: boolean;
781
+
782
+ /**
783
+ * Configuration for monthly reset period
784
+ */
785
+ monthlyResetPeriodConfiguration?: Feature.MonthlyResetPeriodConfiguration | null;
786
+
787
+ /**
788
+ * Display order of the entitlement
789
+ */
790
+ order?: number;
791
+
792
+ /**
793
+ * Period at which usage resets
794
+ */
795
+ resetPeriod?: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR';
796
+
797
+ /**
798
+ * Maximum allowed usage for the feature
799
+ */
800
+ usageLimit?: number | null;
801
+
802
+ /**
803
+ * Configuration for weekly reset period
804
+ */
805
+ weeklyResetPeriodConfiguration?: Feature.WeeklyResetPeriodConfiguration | null;
806
+
807
+ /**
808
+ * Configuration for yearly reset period
809
+ */
810
+ yearlyResetPeriodConfiguration?: Feature.YearlyResetPeriodConfiguration | null;
811
+ }
812
+
813
+ export namespace Feature {
814
+ /**
815
+ * Configuration for monthly reset period
816
+ */
817
+ export interface MonthlyResetPeriodConfiguration {
818
+ /**
819
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
820
+ */
821
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
822
+ }
823
+
824
+ /**
825
+ * Configuration for weekly reset period
826
+ */
827
+ export interface WeeklyResetPeriodConfiguration {
828
+ /**
829
+ * Reset anchor (SubscriptionStart or specific day)
830
+ */
831
+ accordingTo:
832
+ | 'SubscriptionStart'
833
+ | 'EverySunday'
834
+ | 'EveryMonday'
835
+ | 'EveryTuesday'
836
+ | 'EveryWednesday'
837
+ | 'EveryThursday'
838
+ | 'EveryFriday'
839
+ | 'EverySaturday';
840
+ }
841
+
842
+ /**
843
+ * Configuration for yearly reset period
844
+ */
845
+ export interface YearlyResetPeriodConfiguration {
846
+ /**
847
+ * Reset anchor (SubscriptionStart)
848
+ */
849
+ accordingTo: 'SubscriptionStart';
850
+ }
851
+ }
852
+
853
+ /**
854
+ * Request to create a credit entitlement
855
+ */
856
+ export interface Credit {
857
+ /**
858
+ * The custom currency ID for the credit entitlement
859
+ */
860
+ id: string;
861
+
862
+ /**
863
+ * Credit grant amount
864
+ */
865
+ amount: number | null;
866
+
867
+ /**
868
+ * Credit grant cadence (MONTH or YEAR)
869
+ */
870
+ cadence: 'MONTH' | 'YEAR';
871
+
872
+ /**
873
+ * CreateCreditEntitlementRequest
874
+ */
875
+ type: 'CREDIT';
876
+
877
+ /**
878
+ * Entitlement behavior (Increment or Override)
879
+ */
880
+ behavior?: 'Increment' | 'Override';
881
+
882
+ /**
883
+ * Description of the entitlement
884
+ */
885
+ description?: string;
886
+
887
+ /**
888
+ * Override display name for the entitlement
889
+ */
890
+ displayNameOverride?: string;
891
+
892
+ /**
893
+ * Widget types where this entitlement is hidden
894
+ */
895
+ hiddenFromWidgets?: Array<'PAYWALL' | 'CUSTOMER_PORTAL' | 'CHECKOUT'>;
896
+
897
+ /**
898
+ * Whether this is a custom entitlement
899
+ */
900
+ isCustom?: boolean;
901
+
902
+ /**
903
+ * Whether the entitlement is granted
904
+ */
905
+ isGranted?: boolean;
906
+
907
+ /**
908
+ * Display order of the entitlement
909
+ */
910
+ order?: number;
911
+ }
912
+ }
913
+
914
+ export type EntitlementUpdateParams =
915
+ | EntitlementUpdateParams.UpdateFeatureEntitlementRequest
916
+ | EntitlementUpdateParams.UpdateCreditEntitlementRequest;
917
+
918
+ export declare namespace EntitlementUpdateParams {
919
+ export interface UpdateFeatureEntitlementRequest {
920
+ /**
921
+ * Path param: The addon ID
922
+ */
923
+ addonId: string;
924
+
925
+ /**
926
+ * Body param: UpdateFeatureEntitlementRequest
927
+ */
928
+ type: 'FEATURE';
929
+
930
+ /**
931
+ * Body param: Entitlement behavior (Increment or Override)
932
+ */
933
+ behavior?: 'Increment' | 'Override';
934
+
935
+ /**
936
+ * Body param: Description of the entitlement
937
+ */
938
+ description?: string;
939
+
940
+ /**
941
+ * Body param: Override display name for the entitlement
942
+ */
943
+ displayNameOverride?: string;
944
+
945
+ /**
946
+ * Body param: Allowed enum values for the feature entitlement
947
+ */
948
+ enumValues?: Array<string>;
949
+
950
+ /**
951
+ * Body param: Whether the usage limit is a soft limit
952
+ */
953
+ hasSoftLimit?: boolean;
954
+
955
+ /**
956
+ * Body param: Whether usage is unlimited
957
+ */
958
+ hasUnlimitedUsage?: boolean;
959
+
960
+ /**
961
+ * Body param: Widget types where this entitlement is hidden
962
+ */
963
+ hiddenFromWidgets?: Array<'PAYWALL' | 'CUSTOMER_PORTAL' | 'CHECKOUT'>;
964
+
965
+ /**
966
+ * Body param: Whether this is a custom entitlement
967
+ */
968
+ isCustom?: boolean;
969
+
970
+ /**
971
+ * Body param: Whether the entitlement is granted
972
+ */
973
+ isGranted?: boolean;
974
+
975
+ /**
976
+ * Body param: Configuration for monthly reset period
977
+ */
978
+ monthlyResetPeriodConfiguration?: UpdateFeatureEntitlementRequest.MonthlyResetPeriodConfiguration | null;
979
+
980
+ /**
981
+ * Body param: Display order of the entitlement
982
+ */
983
+ order?: number;
984
+
985
+ /**
986
+ * Body param: Period at which usage resets
987
+ */
988
+ resetPeriod?: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR';
989
+
990
+ /**
991
+ * Body param: Maximum allowed usage for the feature
992
+ */
993
+ usageLimit?: number | null;
994
+
995
+ /**
996
+ * Body param: Configuration for weekly reset period
997
+ */
998
+ weeklyResetPeriodConfiguration?: UpdateFeatureEntitlementRequest.WeeklyResetPeriodConfiguration | null;
999
+
1000
+ /**
1001
+ * Body param: Configuration for yearly reset period
1002
+ */
1003
+ yearlyResetPeriodConfiguration?: UpdateFeatureEntitlementRequest.YearlyResetPeriodConfiguration | null;
1004
+ }
1005
+
1006
+ export namespace UpdateFeatureEntitlementRequest {
1007
+ /**
1008
+ * Configuration for monthly reset period
1009
+ */
1010
+ export interface MonthlyResetPeriodConfiguration {
1011
+ /**
1012
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
1013
+ */
1014
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
1015
+ }
1016
+
1017
+ /**
1018
+ * Configuration for weekly reset period
1019
+ */
1020
+ export interface WeeklyResetPeriodConfiguration {
1021
+ /**
1022
+ * Reset anchor (SubscriptionStart or specific day)
1023
+ */
1024
+ accordingTo:
1025
+ | 'SubscriptionStart'
1026
+ | 'EverySunday'
1027
+ | 'EveryMonday'
1028
+ | 'EveryTuesday'
1029
+ | 'EveryWednesday'
1030
+ | 'EveryThursday'
1031
+ | 'EveryFriday'
1032
+ | 'EverySaturday';
1033
+ }
1034
+
1035
+ /**
1036
+ * Configuration for yearly reset period
1037
+ */
1038
+ export interface YearlyResetPeriodConfiguration {
1039
+ /**
1040
+ * Reset anchor (SubscriptionStart)
1041
+ */
1042
+ accordingTo: 'SubscriptionStart';
1043
+ }
1044
+ }
1045
+
1046
+ export interface UpdateCreditEntitlementRequest {
1047
+ /**
1048
+ * Path param: The addon ID
1049
+ */
1050
+ addonId: string;
1051
+
1052
+ /**
1053
+ * Body param: UpdateCreditEntitlementRequest
1054
+ */
1055
+ type: 'CREDIT';
1056
+
1057
+ /**
1058
+ * Body param: Credit grant amount
1059
+ */
1060
+ amount?: number;
1061
+
1062
+ /**
1063
+ * Body param: Entitlement behavior (Increment or Override)
1064
+ */
1065
+ behavior?: 'Increment' | 'Override';
1066
+
1067
+ /**
1068
+ * Body param: Credit grant cadence (MONTH or YEAR)
1069
+ */
1070
+ cadence?: 'MONTH' | 'YEAR';
1071
+
1072
+ /**
1073
+ * Body param: Description of the entitlement
1074
+ */
1075
+ description?: string;
1076
+
1077
+ /**
1078
+ * Body param: Override display name for the entitlement
1079
+ */
1080
+ displayNameOverride?: string;
1081
+
1082
+ /**
1083
+ * Body param: Widget types where this entitlement is hidden
1084
+ */
1085
+ hiddenFromWidgets?: Array<'PAYWALL' | 'CUSTOMER_PORTAL' | 'CHECKOUT'>;
1086
+
1087
+ /**
1088
+ * Body param: Whether this is a custom entitlement
1089
+ */
1090
+ isCustom?: boolean;
1091
+
1092
+ /**
1093
+ * Body param: Whether the entitlement is granted
1094
+ */
1095
+ isGranted?: boolean;
1096
+
1097
+ /**
1098
+ * Body param: Display order of the entitlement
1099
+ */
1100
+ order?: number;
1101
+ }
1102
+ }
1103
+
1104
+ export interface EntitlementDeleteParams {
1105
+ /**
1106
+ * The addon ID
1107
+ */
1108
+ addonId: string;
1109
+ }
1110
+
1111
+ export declare namespace Entitlements {
1112
+ export {
1113
+ type AddonPackageEntitlement as AddonPackageEntitlement,
1114
+ type EntitlementCreateResponse as EntitlementCreateResponse,
1115
+ type EntitlementListResponse as EntitlementListResponse,
1116
+ type EntitlementCreateParams as EntitlementCreateParams,
1117
+ type EntitlementUpdateParams as EntitlementUpdateParams,
1118
+ type EntitlementDeleteParams as EntitlementDeleteParams,
1119
+ };
1120
+ }