@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,976 @@
1
+ import { APIResource } from "../../../core/resource.js";
2
+ import * as AddonsAPI from "../addons/addons.js";
3
+ import * as EntitlementsAPI from "./entitlements.js";
4
+ import { EntitlementCreateParams, EntitlementCreateResponse, EntitlementDeleteParams, EntitlementListResponse, EntitlementUpdateParams, Entitlements, PlanEntitlement } from "./entitlements.js";
5
+ import { APIPromise } from "../../../core/api-promise.js";
6
+ import { MyCursorIDPage, type MyCursorIDPageParams, PagePromise } from "../../../core/pagination.js";
7
+ import { RequestOptions } from "../../../internal/request-options.js";
8
+ /**
9
+ * Operations related to plans
10
+ */
11
+ export declare class Plans extends APIResource {
12
+ entitlements: EntitlementsAPI.Entitlements;
13
+ /**
14
+ * Creates a new plan in draft status.
15
+ */
16
+ create(body: PlanCreateParams, options?: RequestOptions): APIPromise<Plan>;
17
+ /**
18
+ * Retrieves a plan by its unique identifier, including entitlements and pricing
19
+ * details.
20
+ */
21
+ retrieve(id: string, options?: RequestOptions): APIPromise<Plan>;
22
+ /**
23
+ * Updates an existing plan's properties such as display name, description, and
24
+ * metadata.
25
+ */
26
+ update(id: string, body: PlanUpdateParams, options?: RequestOptions): APIPromise<Plan>;
27
+ /**
28
+ * Retrieves a paginated list of plans in the environment.
29
+ */
30
+ list(query?: PlanListParams | null | undefined, options?: RequestOptions): PagePromise<PlanListResponsesMyCursorIDPage, PlanListResponse>;
31
+ /**
32
+ * Archives a plan, preventing it from being used in new subscriptions.
33
+ */
34
+ archive(id: string, options?: RequestOptions): APIPromise<Plan>;
35
+ /**
36
+ * Creates a draft version of an existing plan for modification before publishing.
37
+ */
38
+ createDraft(id: string, options?: RequestOptions): APIPromise<Plan>;
39
+ /**
40
+ * Publishes a draft plan, making it available for use in subscriptions.
41
+ */
42
+ publish(id: string, body: PlanPublishParams, options?: RequestOptions): APIPromise<PlanPublishResponse>;
43
+ /**
44
+ * Removes a draft version of a plan.
45
+ */
46
+ removeDraft(id: string, options?: RequestOptions): APIPromise<PlanRemoveDraftResponse>;
47
+ /**
48
+ * Sets the pricing configuration for a plan, including pricing models, overage
49
+ * pricing, and minimum spend.
50
+ */
51
+ setPricing(id: string, body: PlanSetPricingParams, options?: RequestOptions): APIPromise<AddonsAPI.SetPackagePricingResponse>;
52
+ }
53
+ export type PlanListResponsesMyCursorIDPage = MyCursorIDPage<PlanListResponse>;
54
+ /**
55
+ * Response object
56
+ */
57
+ export interface Plan {
58
+ /**
59
+ * Plan configuration object
60
+ */
61
+ data: Plan.Data;
62
+ }
63
+ export declare namespace Plan {
64
+ /**
65
+ * Plan configuration object
66
+ */
67
+ interface Data {
68
+ /**
69
+ * The unique identifier for the entity
70
+ */
71
+ id: string;
72
+ /**
73
+ * The unique identifier for the entity in the billing provider
74
+ */
75
+ billingId: string | null;
76
+ compatibleAddonIds: Array<string> | null;
77
+ /**
78
+ * Timestamp of when the record was created
79
+ */
80
+ createdAt: string;
81
+ /**
82
+ * Default trial configuration for the plan
83
+ */
84
+ defaultTrialConfig: Data.DefaultTrialConfig | null;
85
+ /**
86
+ * The description of the package
87
+ */
88
+ description: string | null;
89
+ /**
90
+ * The display name of the package
91
+ */
92
+ displayName: string;
93
+ /**
94
+ * List of entitlements of the package
95
+ */
96
+ entitlements: Array<Data.Entitlement>;
97
+ /**
98
+ * Indicates if the package is the latest version
99
+ */
100
+ isLatest: boolean | null;
101
+ /**
102
+ * Metadata associated with the entity
103
+ */
104
+ metadata: {
105
+ [key: string]: string;
106
+ };
107
+ /**
108
+ * The ID of the parent plan, if applicable
109
+ */
110
+ parentPlanId: string | null;
111
+ /**
112
+ * The pricing type of the package
113
+ */
114
+ pricingType: 'FREE' | 'PAID' | 'CUSTOM' | null;
115
+ /**
116
+ * The product id of the package
117
+ */
118
+ productId: string;
119
+ /**
120
+ * The status of the package
121
+ */
122
+ status: 'DRAFT' | 'PUBLISHED' | 'ARCHIVED';
123
+ /**
124
+ * Timestamp of when the record was last updated
125
+ */
126
+ updatedAt: string;
127
+ /**
128
+ * The version number of the package
129
+ */
130
+ versionNumber: number;
131
+ }
132
+ namespace Data {
133
+ /**
134
+ * Default trial configuration for the plan
135
+ */
136
+ interface DefaultTrialConfig {
137
+ /**
138
+ * The duration of the trial in the specified units
139
+ */
140
+ duration: number;
141
+ /**
142
+ * The time unit for the trial duration (DAY or MONTH)
143
+ */
144
+ units: 'DAY' | 'MONTH';
145
+ /**
146
+ * Budget configuration for the trial
147
+ */
148
+ budget?: DefaultTrialConfig.Budget | null;
149
+ /**
150
+ * Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
151
+ */
152
+ trialEndBehavior?: 'CONVERT_TO_PAID' | 'CANCEL_SUBSCRIPTION' | null;
153
+ }
154
+ namespace DefaultTrialConfig {
155
+ /**
156
+ * Budget configuration for the trial
157
+ */
158
+ interface Budget {
159
+ /**
160
+ * Whether the budget limit is a soft limit (allows overage) or hard limit
161
+ */
162
+ hasSoftLimit: boolean;
163
+ /**
164
+ * The budget limit amount
165
+ */
166
+ limit: number;
167
+ }
168
+ }
169
+ /**
170
+ * Entitlement reference with type and identifier
171
+ */
172
+ interface Entitlement {
173
+ /**
174
+ * The unique identifier for the entity
175
+ */
176
+ id: string;
177
+ type: 'FEATURE' | 'CREDIT';
178
+ }
179
+ }
180
+ }
181
+ /**
182
+ * Plan configuration object
183
+ */
184
+ export interface PlanListResponse {
185
+ /**
186
+ * The unique identifier for the entity
187
+ */
188
+ id: string;
189
+ /**
190
+ * The unique identifier for the entity in the billing provider
191
+ */
192
+ billingId: string | null;
193
+ compatibleAddonIds: Array<string> | null;
194
+ /**
195
+ * Timestamp of when the record was created
196
+ */
197
+ createdAt: string;
198
+ /**
199
+ * Default trial configuration for the plan
200
+ */
201
+ defaultTrialConfig: PlanListResponse.DefaultTrialConfig | null;
202
+ /**
203
+ * The description of the package
204
+ */
205
+ description: string | null;
206
+ /**
207
+ * The display name of the package
208
+ */
209
+ displayName: string;
210
+ /**
211
+ * List of entitlements of the package
212
+ */
213
+ entitlements: Array<PlanListResponse.Entitlement>;
214
+ /**
215
+ * Indicates if the package is the latest version
216
+ */
217
+ isLatest: boolean | null;
218
+ /**
219
+ * Metadata associated with the entity
220
+ */
221
+ metadata: {
222
+ [key: string]: string;
223
+ };
224
+ /**
225
+ * The ID of the parent plan, if applicable
226
+ */
227
+ parentPlanId: string | null;
228
+ /**
229
+ * The pricing type of the package
230
+ */
231
+ pricingType: 'FREE' | 'PAID' | 'CUSTOM' | null;
232
+ /**
233
+ * The product id of the package
234
+ */
235
+ productId: string;
236
+ /**
237
+ * The status of the package
238
+ */
239
+ status: 'DRAFT' | 'PUBLISHED' | 'ARCHIVED';
240
+ /**
241
+ * Timestamp of when the record was last updated
242
+ */
243
+ updatedAt: string;
244
+ /**
245
+ * The version number of the package
246
+ */
247
+ versionNumber: number;
248
+ }
249
+ export declare namespace PlanListResponse {
250
+ /**
251
+ * Default trial configuration for the plan
252
+ */
253
+ interface DefaultTrialConfig {
254
+ /**
255
+ * The duration of the trial in the specified units
256
+ */
257
+ duration: number;
258
+ /**
259
+ * The time unit for the trial duration (DAY or MONTH)
260
+ */
261
+ units: 'DAY' | 'MONTH';
262
+ /**
263
+ * Budget configuration for the trial
264
+ */
265
+ budget?: DefaultTrialConfig.Budget | null;
266
+ /**
267
+ * Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
268
+ */
269
+ trialEndBehavior?: 'CONVERT_TO_PAID' | 'CANCEL_SUBSCRIPTION' | null;
270
+ }
271
+ namespace DefaultTrialConfig {
272
+ /**
273
+ * Budget configuration for the trial
274
+ */
275
+ interface Budget {
276
+ /**
277
+ * Whether the budget limit is a soft limit (allows overage) or hard limit
278
+ */
279
+ hasSoftLimit: boolean;
280
+ /**
281
+ * The budget limit amount
282
+ */
283
+ limit: number;
284
+ }
285
+ }
286
+ /**
287
+ * Entitlement reference with type and identifier
288
+ */
289
+ interface Entitlement {
290
+ /**
291
+ * The unique identifier for the entity
292
+ */
293
+ id: string;
294
+ type: 'FEATURE' | 'CREDIT';
295
+ }
296
+ }
297
+ /**
298
+ * Response containing task ID for publish operation
299
+ */
300
+ export interface PlanPublishResponse {
301
+ data: PlanPublishResponse.Data;
302
+ }
303
+ export declare namespace PlanPublishResponse {
304
+ interface Data {
305
+ /**
306
+ * Task ID for tracking the async publish operation
307
+ */
308
+ taskId: string | null;
309
+ }
310
+ }
311
+ /**
312
+ * Response confirming the plan draft was removed.
313
+ */
314
+ export interface PlanRemoveDraftResponse {
315
+ data: PlanRemoveDraftResponse.Data;
316
+ }
317
+ export declare namespace PlanRemoveDraftResponse {
318
+ interface Data {
319
+ /**
320
+ * The unique identifier for the entity
321
+ */
322
+ id: string;
323
+ }
324
+ }
325
+ export interface PlanCreateParams {
326
+ /**
327
+ * The unique identifier for the entity
328
+ */
329
+ id: string;
330
+ /**
331
+ * The display name of the package
332
+ */
333
+ displayName: string;
334
+ /**
335
+ * The product ID to associate the plan with
336
+ */
337
+ productId: string;
338
+ /**
339
+ * The unique identifier for the entity in the billing provider
340
+ */
341
+ billingId?: string | null;
342
+ /**
343
+ * Default trial configuration for the plan
344
+ */
345
+ defaultTrialConfig?: PlanCreateParams.DefaultTrialConfig | null;
346
+ /**
347
+ * The description of the package
348
+ */
349
+ description?: string | null;
350
+ /**
351
+ * Metadata associated with the entity
352
+ */
353
+ metadata?: {
354
+ [key: string]: string;
355
+ };
356
+ /**
357
+ * The ID of the parent plan, if applicable
358
+ */
359
+ parentPlanId?: string | null;
360
+ /**
361
+ * The pricing type of the package
362
+ */
363
+ pricingType?: 'FREE' | 'PAID' | 'CUSTOM' | null;
364
+ /**
365
+ * The status of the package
366
+ */
367
+ status?: 'DRAFT' | 'PUBLISHED' | 'ARCHIVED';
368
+ }
369
+ export declare namespace PlanCreateParams {
370
+ /**
371
+ * Default trial configuration for the plan
372
+ */
373
+ interface DefaultTrialConfig {
374
+ /**
375
+ * The duration of the trial in the specified units
376
+ */
377
+ duration: number;
378
+ /**
379
+ * The time unit for the trial duration (DAY or MONTH)
380
+ */
381
+ units: 'DAY' | 'MONTH';
382
+ /**
383
+ * Budget configuration for the trial
384
+ */
385
+ budget?: DefaultTrialConfig.Budget | null;
386
+ /**
387
+ * Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
388
+ */
389
+ trialEndBehavior?: 'CONVERT_TO_PAID' | 'CANCEL_SUBSCRIPTION' | null;
390
+ }
391
+ namespace DefaultTrialConfig {
392
+ /**
393
+ * Budget configuration for the trial
394
+ */
395
+ interface Budget {
396
+ /**
397
+ * Whether the budget limit is a soft limit (allows overage) or hard limit
398
+ */
399
+ hasSoftLimit: boolean;
400
+ /**
401
+ * The budget limit amount
402
+ */
403
+ limit: number;
404
+ }
405
+ }
406
+ }
407
+ export interface PlanUpdateParams {
408
+ /**
409
+ * The unique identifier for the entity in the billing provider
410
+ */
411
+ billingId?: string | null;
412
+ compatibleAddonIds?: Array<string> | null;
413
+ /**
414
+ * Default trial configuration for the plan
415
+ */
416
+ defaultTrialConfig?: PlanUpdateParams.DefaultTrialConfig | null;
417
+ /**
418
+ * The description of the package
419
+ */
420
+ description?: string | null;
421
+ /**
422
+ * The display name of the package
423
+ */
424
+ displayName?: string;
425
+ /**
426
+ * Metadata associated with the entity
427
+ */
428
+ metadata?: {
429
+ [key: string]: string;
430
+ };
431
+ /**
432
+ * The ID of the parent plan, if applicable
433
+ */
434
+ parentPlanId?: string | null;
435
+ }
436
+ export declare namespace PlanUpdateParams {
437
+ /**
438
+ * Default trial configuration for the plan
439
+ */
440
+ interface DefaultTrialConfig {
441
+ /**
442
+ * The duration of the trial in the specified units
443
+ */
444
+ duration: number;
445
+ /**
446
+ * The time unit for the trial duration (DAY or MONTH)
447
+ */
448
+ units: 'DAY' | 'MONTH';
449
+ /**
450
+ * Budget configuration for the trial
451
+ */
452
+ budget?: DefaultTrialConfig.Budget | null;
453
+ /**
454
+ * Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
455
+ */
456
+ trialEndBehavior?: 'CONVERT_TO_PAID' | 'CANCEL_SUBSCRIPTION' | null;
457
+ }
458
+ namespace DefaultTrialConfig {
459
+ /**
460
+ * Budget configuration for the trial
461
+ */
462
+ interface Budget {
463
+ /**
464
+ * Whether the budget limit is a soft limit (allows overage) or hard limit
465
+ */
466
+ hasSoftLimit: boolean;
467
+ /**
468
+ * The budget limit amount
469
+ */
470
+ limit: number;
471
+ }
472
+ }
473
+ }
474
+ export interface PlanListParams extends MyCursorIDPageParams {
475
+ /**
476
+ * Filter by creation date using range operators: gt, gte, lt, lte
477
+ */
478
+ createdAt?: PlanListParams.CreatedAt;
479
+ /**
480
+ * Filter by product ID
481
+ */
482
+ productId?: string;
483
+ /**
484
+ * Filter by status. Supports comma-separated values for multiple statuses
485
+ */
486
+ status?: string;
487
+ }
488
+ export declare namespace PlanListParams {
489
+ /**
490
+ * Filter by creation date using range operators: gt, gte, lt, lte
491
+ */
492
+ interface CreatedAt {
493
+ /**
494
+ * Greater than the specified createdAt value
495
+ */
496
+ gt?: string;
497
+ /**
498
+ * Greater than or equal to the specified createdAt value
499
+ */
500
+ gte?: string;
501
+ /**
502
+ * Less than the specified createdAt value
503
+ */
504
+ lt?: string;
505
+ /**
506
+ * Less than or equal to the specified createdAt value
507
+ */
508
+ lte?: string;
509
+ }
510
+ }
511
+ export interface PlanPublishParams {
512
+ /**
513
+ * The migration type of the package
514
+ */
515
+ migrationType: 'NEW_CUSTOMERS' | 'ALL_CUSTOMERS';
516
+ }
517
+ export interface PlanSetPricingParams {
518
+ /**
519
+ * The pricing type (FREE, PAID, or CUSTOM)
520
+ */
521
+ pricingType: 'FREE' | 'PAID' | 'CUSTOM';
522
+ /**
523
+ * Deprecated: billing integration ID
524
+ */
525
+ billingId?: string;
526
+ /**
527
+ * Minimum spend configuration per billing period
528
+ */
529
+ minimumSpend?: Array<PlanSetPricingParams.MinimumSpend> | null;
530
+ /**
531
+ * When overage charges are billed
532
+ */
533
+ overageBillingPeriod?: 'ON_SUBSCRIPTION_RENEWAL' | 'MONTHLY';
534
+ /**
535
+ * Array of overage pricing model configurations
536
+ */
537
+ overagePricingModels?: Array<PlanSetPricingParams.OveragePricingModel>;
538
+ /**
539
+ * Array of pricing model configurations
540
+ */
541
+ pricingModels?: Array<PlanSetPricingParams.PricingModel>;
542
+ }
543
+ export declare namespace PlanSetPricingParams {
544
+ /**
545
+ * Minimum spend configuration for a billing period.
546
+ */
547
+ interface MinimumSpend {
548
+ /**
549
+ * The billing period
550
+ */
551
+ billingPeriod: 'MONTHLY' | 'ANNUALLY';
552
+ /**
553
+ * The minimum spend amount
554
+ */
555
+ minimum: MinimumSpend.Minimum;
556
+ }
557
+ namespace MinimumSpend {
558
+ /**
559
+ * The minimum spend amount
560
+ */
561
+ interface Minimum {
562
+ /**
563
+ * The price amount
564
+ */
565
+ amount: number;
566
+ /**
567
+ * The price currency
568
+ */
569
+ currency?: 'usd' | 'aed' | 'all' | 'amd' | 'ang' | 'aud' | 'awg' | 'azn' | 'bam' | 'bbd' | 'bdt' | 'bgn' | 'bif' | 'bmd' | 'bnd' | 'bsd' | 'bwp' | 'byn' | 'bzd' | 'brl' | 'cad' | 'cdf' | 'chf' | 'cny' | 'czk' | 'dkk' | 'dop' | 'dzd' | 'egp' | 'etb' | 'eur' | 'fjd' | 'gbp' | 'gel' | 'gip' | 'gmd' | 'gyd' | 'hkd' | 'hrk' | 'htg' | 'idr' | 'ils' | 'inr' | 'isk' | 'jmd' | 'jpy' | 'kes' | 'kgs' | 'khr' | 'kmf' | 'krw' | 'kyd' | 'kzt' | 'lbp' | 'lkr' | 'lrd' | 'lsl' | 'mad' | 'mdl' | 'mga' | 'mkd' | 'mmk' | 'mnt' | 'mop' | 'mro' | 'mvr' | 'mwk' | 'mxn' | 'myr' | 'mzn' | 'nad' | 'ngn' | 'nok' | 'npr' | 'nzd' | 'pgk' | 'php' | 'pkr' | 'pln' | 'qar' | 'ron' | 'rsd' | 'rub' | 'rwf' | 'sar' | 'sbd' | 'scr' | 'sek' | 'sgd' | 'sle' | 'sll' | 'sos' | 'szl' | 'thb' | 'tjs' | 'top' | 'try' | 'ttd' | 'tzs' | 'uah' | 'uzs' | 'vnd' | 'vuv' | 'wst' | 'xaf' | 'xcd' | 'yer' | 'zar' | 'zmw' | 'clp' | 'djf' | 'gnf' | 'ugx' | 'pyg' | 'xof' | 'xpf';
570
+ }
571
+ }
572
+ /**
573
+ * Overage pricing model configuration.
574
+ */
575
+ interface OveragePricingModel {
576
+ /**
577
+ * The billing model for overages
578
+ */
579
+ billingModel: 'FLAT_FEE' | 'MINIMUM_SPEND' | 'PER_UNIT' | 'USAGE_BASED' | 'CREDIT_BASED';
580
+ /**
581
+ * Price periods for overage pricing
582
+ */
583
+ pricePeriods: Array<OveragePricingModel.PricePeriod>;
584
+ /**
585
+ * The billing cadence for overages
586
+ */
587
+ billingCadence?: 'RECURRING' | 'ONE_OFF';
588
+ /**
589
+ * Entitlement configuration for the overage feature
590
+ */
591
+ entitlement?: OveragePricingModel.Entitlement;
592
+ /**
593
+ * The feature ID for overage pricing
594
+ */
595
+ featureId?: string;
596
+ /**
597
+ * Custom currency ID for overage top-up
598
+ */
599
+ topUpCustomCurrencyId?: string;
600
+ }
601
+ namespace OveragePricingModel {
602
+ /**
603
+ * Price configuration for a specific billing period.
604
+ */
605
+ interface PricePeriod {
606
+ /**
607
+ * The billing period (MONTHLY or ANNUALLY)
608
+ */
609
+ billingPeriod: 'MONTHLY' | 'ANNUALLY';
610
+ /**
611
+ * ISO country code for localized pricing
612
+ */
613
+ billingCountryCode?: string;
614
+ /**
615
+ * Block size for usage-based pricing
616
+ */
617
+ blockSize?: number;
618
+ /**
619
+ * When credits are granted
620
+ */
621
+ creditGrantCadence?: 'BEGINNING_OF_BILLING_PERIOD' | 'MONTHLY';
622
+ /**
623
+ * Credit rate configuration for credit-based pricing
624
+ */
625
+ creditRate?: PricePeriod.CreditRate;
626
+ /**
627
+ * The price amount and currency
628
+ */
629
+ price?: PricePeriod.Price;
630
+ /**
631
+ * Tiered pricing configuration
632
+ */
633
+ tiers?: Array<PricePeriod.Tier>;
634
+ }
635
+ namespace PricePeriod {
636
+ /**
637
+ * Credit rate configuration for credit-based pricing
638
+ */
639
+ interface CreditRate {
640
+ /**
641
+ * The credit rate amount
642
+ */
643
+ amount: number;
644
+ /**
645
+ * The custom currency ID
646
+ */
647
+ currencyId: string;
648
+ /**
649
+ * Optional cost formula expression
650
+ */
651
+ costFormula?: string;
652
+ }
653
+ /**
654
+ * The price amount and currency
655
+ */
656
+ interface Price {
657
+ /**
658
+ * The price amount
659
+ */
660
+ amount: number;
661
+ /**
662
+ * The price currency
663
+ */
664
+ currency?: 'usd' | 'aed' | 'all' | 'amd' | 'ang' | 'aud' | 'awg' | 'azn' | 'bam' | 'bbd' | 'bdt' | 'bgn' | 'bif' | 'bmd' | 'bnd' | 'bsd' | 'bwp' | 'byn' | 'bzd' | 'brl' | 'cad' | 'cdf' | 'chf' | 'cny' | 'czk' | 'dkk' | 'dop' | 'dzd' | 'egp' | 'etb' | 'eur' | 'fjd' | 'gbp' | 'gel' | 'gip' | 'gmd' | 'gyd' | 'hkd' | 'hrk' | 'htg' | 'idr' | 'ils' | 'inr' | 'isk' | 'jmd' | 'jpy' | 'kes' | 'kgs' | 'khr' | 'kmf' | 'krw' | 'kyd' | 'kzt' | 'lbp' | 'lkr' | 'lrd' | 'lsl' | 'mad' | 'mdl' | 'mga' | 'mkd' | 'mmk' | 'mnt' | 'mop' | 'mro' | 'mvr' | 'mwk' | 'mxn' | 'myr' | 'mzn' | 'nad' | 'ngn' | 'nok' | 'npr' | 'nzd' | 'pgk' | 'php' | 'pkr' | 'pln' | 'qar' | 'ron' | 'rsd' | 'rub' | 'rwf' | 'sar' | 'sbd' | 'scr' | 'sek' | 'sgd' | 'sle' | 'sll' | 'sos' | 'szl' | 'thb' | 'tjs' | 'top' | 'try' | 'ttd' | 'tzs' | 'uah' | 'uzs' | 'vnd' | 'vuv' | 'wst' | 'xaf' | 'xcd' | 'yer' | 'zar' | 'zmw' | 'clp' | 'djf' | 'gnf' | 'ugx' | 'pyg' | 'xof' | 'xpf';
665
+ }
666
+ /**
667
+ * A tier in tiered pricing.
668
+ */
669
+ interface Tier {
670
+ /**
671
+ * Flat price for this tier
672
+ */
673
+ flatPrice?: Tier.FlatPrice;
674
+ /**
675
+ * Per-unit price in this tier
676
+ */
677
+ unitPrice?: Tier.UnitPrice;
678
+ /**
679
+ * Upper bound of this tier (null for unlimited)
680
+ */
681
+ upTo?: number;
682
+ }
683
+ namespace Tier {
684
+ /**
685
+ * Flat price for this tier
686
+ */
687
+ interface FlatPrice {
688
+ /**
689
+ * The price amount
690
+ */
691
+ amount: number;
692
+ /**
693
+ * The price currency
694
+ */
695
+ currency?: 'usd' | 'aed' | 'all' | 'amd' | 'ang' | 'aud' | 'awg' | 'azn' | 'bam' | 'bbd' | 'bdt' | 'bgn' | 'bif' | 'bmd' | 'bnd' | 'bsd' | 'bwp' | 'byn' | 'bzd' | 'brl' | 'cad' | 'cdf' | 'chf' | 'cny' | 'czk' | 'dkk' | 'dop' | 'dzd' | 'egp' | 'etb' | 'eur' | 'fjd' | 'gbp' | 'gel' | 'gip' | 'gmd' | 'gyd' | 'hkd' | 'hrk' | 'htg' | 'idr' | 'ils' | 'inr' | 'isk' | 'jmd' | 'jpy' | 'kes' | 'kgs' | 'khr' | 'kmf' | 'krw' | 'kyd' | 'kzt' | 'lbp' | 'lkr' | 'lrd' | 'lsl' | 'mad' | 'mdl' | 'mga' | 'mkd' | 'mmk' | 'mnt' | 'mop' | 'mro' | 'mvr' | 'mwk' | 'mxn' | 'myr' | 'mzn' | 'nad' | 'ngn' | 'nok' | 'npr' | 'nzd' | 'pgk' | 'php' | 'pkr' | 'pln' | 'qar' | 'ron' | 'rsd' | 'rub' | 'rwf' | 'sar' | 'sbd' | 'scr' | 'sek' | 'sgd' | 'sle' | 'sll' | 'sos' | 'szl' | 'thb' | 'tjs' | 'top' | 'try' | 'ttd' | 'tzs' | 'uah' | 'uzs' | 'vnd' | 'vuv' | 'wst' | 'xaf' | 'xcd' | 'yer' | 'zar' | 'zmw' | 'clp' | 'djf' | 'gnf' | 'ugx' | 'pyg' | 'xof' | 'xpf';
696
+ }
697
+ /**
698
+ * Per-unit price in this tier
699
+ */
700
+ interface UnitPrice {
701
+ /**
702
+ * The price amount
703
+ */
704
+ amount: number;
705
+ /**
706
+ * The price currency
707
+ */
708
+ currency?: 'usd' | 'aed' | 'all' | 'amd' | 'ang' | 'aud' | 'awg' | 'azn' | 'bam' | 'bbd' | 'bdt' | 'bgn' | 'bif' | 'bmd' | 'bnd' | 'bsd' | 'bwp' | 'byn' | 'bzd' | 'brl' | 'cad' | 'cdf' | 'chf' | 'cny' | 'czk' | 'dkk' | 'dop' | 'dzd' | 'egp' | 'etb' | 'eur' | 'fjd' | 'gbp' | 'gel' | 'gip' | 'gmd' | 'gyd' | 'hkd' | 'hrk' | 'htg' | 'idr' | 'ils' | 'inr' | 'isk' | 'jmd' | 'jpy' | 'kes' | 'kgs' | 'khr' | 'kmf' | 'krw' | 'kyd' | 'kzt' | 'lbp' | 'lkr' | 'lrd' | 'lsl' | 'mad' | 'mdl' | 'mga' | 'mkd' | 'mmk' | 'mnt' | 'mop' | 'mro' | 'mvr' | 'mwk' | 'mxn' | 'myr' | 'mzn' | 'nad' | 'ngn' | 'nok' | 'npr' | 'nzd' | 'pgk' | 'php' | 'pkr' | 'pln' | 'qar' | 'ron' | 'rsd' | 'rub' | 'rwf' | 'sar' | 'sbd' | 'scr' | 'sek' | 'sgd' | 'sle' | 'sll' | 'sos' | 'szl' | 'thb' | 'tjs' | 'top' | 'try' | 'ttd' | 'tzs' | 'uah' | 'uzs' | 'vnd' | 'vuv' | 'wst' | 'xaf' | 'xcd' | 'yer' | 'zar' | 'zmw' | 'clp' | 'djf' | 'gnf' | 'ugx' | 'pyg' | 'xof' | 'xpf';
709
+ }
710
+ }
711
+ }
712
+ /**
713
+ * Entitlement configuration for the overage feature
714
+ */
715
+ interface Entitlement {
716
+ /**
717
+ * The feature ID for the entitlement
718
+ */
719
+ featureId: string;
720
+ /**
721
+ * Whether the limit is soft (allows overage)
722
+ */
723
+ hasSoftLimit?: boolean;
724
+ /**
725
+ * Whether usage is unlimited
726
+ */
727
+ hasUnlimitedUsage?: boolean;
728
+ /**
729
+ * Monthly reset configuration
730
+ */
731
+ monthlyResetPeriodConfiguration?: Entitlement.MonthlyResetPeriodConfiguration;
732
+ /**
733
+ * The usage reset period
734
+ */
735
+ resetPeriod?: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR';
736
+ /**
737
+ * The usage limit before overage kicks in
738
+ */
739
+ usageLimit?: number;
740
+ /**
741
+ * Weekly reset configuration
742
+ */
743
+ weeklyResetPeriodConfiguration?: Entitlement.WeeklyResetPeriodConfiguration;
744
+ /**
745
+ * Yearly reset configuration
746
+ */
747
+ yearlyResetPeriodConfiguration?: Entitlement.YearlyResetPeriodConfiguration;
748
+ }
749
+ namespace Entitlement {
750
+ /**
751
+ * Monthly reset configuration
752
+ */
753
+ interface MonthlyResetPeriodConfiguration {
754
+ /**
755
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
756
+ */
757
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
758
+ }
759
+ /**
760
+ * Weekly reset configuration
761
+ */
762
+ interface WeeklyResetPeriodConfiguration {
763
+ /**
764
+ * Reset anchor (SubscriptionStart or specific day)
765
+ */
766
+ accordingTo: 'SubscriptionStart' | 'EverySunday' | 'EveryMonday' | 'EveryTuesday' | 'EveryWednesday' | 'EveryThursday' | 'EveryFriday' | 'EverySaturday';
767
+ }
768
+ /**
769
+ * Yearly reset configuration
770
+ */
771
+ interface YearlyResetPeriodConfiguration {
772
+ /**
773
+ * Reset anchor (SubscriptionStart)
774
+ */
775
+ accordingTo: 'SubscriptionStart';
776
+ }
777
+ }
778
+ }
779
+ /**
780
+ * A pricing model configuration with billing details and price periods.
781
+ */
782
+ interface PricingModel {
783
+ /**
784
+ * The billing model (FLAT_FEE, PER_UNIT, USAGE_BASED, CREDIT_BASED)
785
+ */
786
+ billingModel: 'FLAT_FEE' | 'MINIMUM_SPEND' | 'PER_UNIT' | 'USAGE_BASED' | 'CREDIT_BASED';
787
+ /**
788
+ * Array of price period configurations (at least one required)
789
+ */
790
+ pricePeriods: Array<PricingModel.PricePeriod>;
791
+ /**
792
+ * The billing cadence (RECURRING or ONE_OFF)
793
+ */
794
+ billingCadence?: 'RECURRING' | 'ONE_OFF';
795
+ /**
796
+ * The feature ID this pricing model is associated with
797
+ */
798
+ featureId?: string;
799
+ /**
800
+ * Maximum number of units (max 999999)
801
+ */
802
+ maxUnitQuantity?: number;
803
+ /**
804
+ * Minimum number of units
805
+ */
806
+ minUnitQuantity?: number;
807
+ /**
808
+ * Monthly reset period configuration
809
+ */
810
+ monthlyResetPeriodConfiguration?: PricingModel.MonthlyResetPeriodConfiguration;
811
+ /**
812
+ * The usage reset period
813
+ */
814
+ resetPeriod?: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR';
815
+ /**
816
+ * The tiered pricing mode (VOLUME or GRADUATED)
817
+ */
818
+ tiersMode?: 'VOLUME' | 'GRADUATED';
819
+ /**
820
+ * The custom currency ID for top-up pricing
821
+ */
822
+ topUpCustomCurrencyId?: string;
823
+ /**
824
+ * Weekly reset period configuration
825
+ */
826
+ weeklyResetPeriodConfiguration?: PricingModel.WeeklyResetPeriodConfiguration;
827
+ /**
828
+ * Yearly reset period configuration
829
+ */
830
+ yearlyResetPeriodConfiguration?: PricingModel.YearlyResetPeriodConfiguration;
831
+ }
832
+ namespace PricingModel {
833
+ /**
834
+ * Price configuration for a specific billing period.
835
+ */
836
+ interface PricePeriod {
837
+ /**
838
+ * The billing period (MONTHLY or ANNUALLY)
839
+ */
840
+ billingPeriod: 'MONTHLY' | 'ANNUALLY';
841
+ /**
842
+ * ISO country code for localized pricing
843
+ */
844
+ billingCountryCode?: string;
845
+ /**
846
+ * Block size for usage-based pricing
847
+ */
848
+ blockSize?: number;
849
+ /**
850
+ * When credits are granted
851
+ */
852
+ creditGrantCadence?: 'BEGINNING_OF_BILLING_PERIOD' | 'MONTHLY';
853
+ /**
854
+ * Credit rate configuration for credit-based pricing
855
+ */
856
+ creditRate?: PricePeriod.CreditRate;
857
+ /**
858
+ * The price amount and currency
859
+ */
860
+ price?: PricePeriod.Price;
861
+ /**
862
+ * Tiered pricing configuration
863
+ */
864
+ tiers?: Array<PricePeriod.Tier>;
865
+ }
866
+ namespace PricePeriod {
867
+ /**
868
+ * Credit rate configuration for credit-based pricing
869
+ */
870
+ interface CreditRate {
871
+ /**
872
+ * The credit rate amount
873
+ */
874
+ amount: number;
875
+ /**
876
+ * The custom currency ID
877
+ */
878
+ currencyId: string;
879
+ /**
880
+ * Optional cost formula expression
881
+ */
882
+ costFormula?: string;
883
+ }
884
+ /**
885
+ * The price amount and currency
886
+ */
887
+ interface Price {
888
+ /**
889
+ * The price amount
890
+ */
891
+ amount: number;
892
+ /**
893
+ * The price currency
894
+ */
895
+ currency?: 'usd' | 'aed' | 'all' | 'amd' | 'ang' | 'aud' | 'awg' | 'azn' | 'bam' | 'bbd' | 'bdt' | 'bgn' | 'bif' | 'bmd' | 'bnd' | 'bsd' | 'bwp' | 'byn' | 'bzd' | 'brl' | 'cad' | 'cdf' | 'chf' | 'cny' | 'czk' | 'dkk' | 'dop' | 'dzd' | 'egp' | 'etb' | 'eur' | 'fjd' | 'gbp' | 'gel' | 'gip' | 'gmd' | 'gyd' | 'hkd' | 'hrk' | 'htg' | 'idr' | 'ils' | 'inr' | 'isk' | 'jmd' | 'jpy' | 'kes' | 'kgs' | 'khr' | 'kmf' | 'krw' | 'kyd' | 'kzt' | 'lbp' | 'lkr' | 'lrd' | 'lsl' | 'mad' | 'mdl' | 'mga' | 'mkd' | 'mmk' | 'mnt' | 'mop' | 'mro' | 'mvr' | 'mwk' | 'mxn' | 'myr' | 'mzn' | 'nad' | 'ngn' | 'nok' | 'npr' | 'nzd' | 'pgk' | 'php' | 'pkr' | 'pln' | 'qar' | 'ron' | 'rsd' | 'rub' | 'rwf' | 'sar' | 'sbd' | 'scr' | 'sek' | 'sgd' | 'sle' | 'sll' | 'sos' | 'szl' | 'thb' | 'tjs' | 'top' | 'try' | 'ttd' | 'tzs' | 'uah' | 'uzs' | 'vnd' | 'vuv' | 'wst' | 'xaf' | 'xcd' | 'yer' | 'zar' | 'zmw' | 'clp' | 'djf' | 'gnf' | 'ugx' | 'pyg' | 'xof' | 'xpf';
896
+ }
897
+ /**
898
+ * A tier in tiered pricing.
899
+ */
900
+ interface Tier {
901
+ /**
902
+ * Flat price for this tier
903
+ */
904
+ flatPrice?: Tier.FlatPrice;
905
+ /**
906
+ * Per-unit price in this tier
907
+ */
908
+ unitPrice?: Tier.UnitPrice;
909
+ /**
910
+ * Upper bound of this tier (null for unlimited)
911
+ */
912
+ upTo?: number;
913
+ }
914
+ namespace Tier {
915
+ /**
916
+ * Flat price for this tier
917
+ */
918
+ interface FlatPrice {
919
+ /**
920
+ * The price amount
921
+ */
922
+ amount: number;
923
+ /**
924
+ * The price currency
925
+ */
926
+ currency?: 'usd' | 'aed' | 'all' | 'amd' | 'ang' | 'aud' | 'awg' | 'azn' | 'bam' | 'bbd' | 'bdt' | 'bgn' | 'bif' | 'bmd' | 'bnd' | 'bsd' | 'bwp' | 'byn' | 'bzd' | 'brl' | 'cad' | 'cdf' | 'chf' | 'cny' | 'czk' | 'dkk' | 'dop' | 'dzd' | 'egp' | 'etb' | 'eur' | 'fjd' | 'gbp' | 'gel' | 'gip' | 'gmd' | 'gyd' | 'hkd' | 'hrk' | 'htg' | 'idr' | 'ils' | 'inr' | 'isk' | 'jmd' | 'jpy' | 'kes' | 'kgs' | 'khr' | 'kmf' | 'krw' | 'kyd' | 'kzt' | 'lbp' | 'lkr' | 'lrd' | 'lsl' | 'mad' | 'mdl' | 'mga' | 'mkd' | 'mmk' | 'mnt' | 'mop' | 'mro' | 'mvr' | 'mwk' | 'mxn' | 'myr' | 'mzn' | 'nad' | 'ngn' | 'nok' | 'npr' | 'nzd' | 'pgk' | 'php' | 'pkr' | 'pln' | 'qar' | 'ron' | 'rsd' | 'rub' | 'rwf' | 'sar' | 'sbd' | 'scr' | 'sek' | 'sgd' | 'sle' | 'sll' | 'sos' | 'szl' | 'thb' | 'tjs' | 'top' | 'try' | 'ttd' | 'tzs' | 'uah' | 'uzs' | 'vnd' | 'vuv' | 'wst' | 'xaf' | 'xcd' | 'yer' | 'zar' | 'zmw' | 'clp' | 'djf' | 'gnf' | 'ugx' | 'pyg' | 'xof' | 'xpf';
927
+ }
928
+ /**
929
+ * Per-unit price in this tier
930
+ */
931
+ interface UnitPrice {
932
+ /**
933
+ * The price amount
934
+ */
935
+ amount: number;
936
+ /**
937
+ * The price currency
938
+ */
939
+ currency?: 'usd' | 'aed' | 'all' | 'amd' | 'ang' | 'aud' | 'awg' | 'azn' | 'bam' | 'bbd' | 'bdt' | 'bgn' | 'bif' | 'bmd' | 'bnd' | 'bsd' | 'bwp' | 'byn' | 'bzd' | 'brl' | 'cad' | 'cdf' | 'chf' | 'cny' | 'czk' | 'dkk' | 'dop' | 'dzd' | 'egp' | 'etb' | 'eur' | 'fjd' | 'gbp' | 'gel' | 'gip' | 'gmd' | 'gyd' | 'hkd' | 'hrk' | 'htg' | 'idr' | 'ils' | 'inr' | 'isk' | 'jmd' | 'jpy' | 'kes' | 'kgs' | 'khr' | 'kmf' | 'krw' | 'kyd' | 'kzt' | 'lbp' | 'lkr' | 'lrd' | 'lsl' | 'mad' | 'mdl' | 'mga' | 'mkd' | 'mmk' | 'mnt' | 'mop' | 'mro' | 'mvr' | 'mwk' | 'mxn' | 'myr' | 'mzn' | 'nad' | 'ngn' | 'nok' | 'npr' | 'nzd' | 'pgk' | 'php' | 'pkr' | 'pln' | 'qar' | 'ron' | 'rsd' | 'rub' | 'rwf' | 'sar' | 'sbd' | 'scr' | 'sek' | 'sgd' | 'sle' | 'sll' | 'sos' | 'szl' | 'thb' | 'tjs' | 'top' | 'try' | 'ttd' | 'tzs' | 'uah' | 'uzs' | 'vnd' | 'vuv' | 'wst' | 'xaf' | 'xcd' | 'yer' | 'zar' | 'zmw' | 'clp' | 'djf' | 'gnf' | 'ugx' | 'pyg' | 'xof' | 'xpf';
940
+ }
941
+ }
942
+ }
943
+ /**
944
+ * Monthly reset period configuration
945
+ */
946
+ interface MonthlyResetPeriodConfiguration {
947
+ /**
948
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
949
+ */
950
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
951
+ }
952
+ /**
953
+ * Weekly reset period configuration
954
+ */
955
+ interface WeeklyResetPeriodConfiguration {
956
+ /**
957
+ * Reset anchor (SubscriptionStart or specific day)
958
+ */
959
+ accordingTo: 'SubscriptionStart' | 'EverySunday' | 'EveryMonday' | 'EveryTuesday' | 'EveryWednesday' | 'EveryThursday' | 'EveryFriday' | 'EverySaturday';
960
+ }
961
+ /**
962
+ * Yearly reset period configuration
963
+ */
964
+ interface YearlyResetPeriodConfiguration {
965
+ /**
966
+ * Reset anchor (SubscriptionStart)
967
+ */
968
+ accordingTo: 'SubscriptionStart';
969
+ }
970
+ }
971
+ }
972
+ export declare namespace Plans {
973
+ export { type Plan as Plan, type PlanListResponse as PlanListResponse, type PlanPublishResponse as PlanPublishResponse, type PlanRemoveDraftResponse as PlanRemoveDraftResponse, type PlanListResponsesMyCursorIDPage as PlanListResponsesMyCursorIDPage, type PlanCreateParams as PlanCreateParams, type PlanUpdateParams as PlanUpdateParams, type PlanListParams as PlanListParams, type PlanPublishParams as PlanPublishParams, type PlanSetPricingParams as PlanSetPricingParams, };
974
+ export { Entitlements as Entitlements, type PlanEntitlement as PlanEntitlement, type EntitlementCreateResponse as EntitlementCreateResponse, type EntitlementListResponse as EntitlementListResponse, type EntitlementCreateParams as EntitlementCreateParams, type EntitlementUpdateParams as EntitlementUpdateParams, type EntitlementDeleteParams as EntitlementDeleteParams, };
975
+ }
976
+ //# sourceMappingURL=plans.d.ts.map