@stigg/typescript 0.1.0-alpha.1 → 0.1.0-alpha.11

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 (317) hide show
  1. package/CHANGELOG.md +158 -0
  2. package/README.md +40 -0
  3. package/client.d.mts +6 -8
  4. package/client.d.mts.map +1 -1
  5. package/client.d.ts +6 -8
  6. package/client.d.ts.map +1 -1
  7. package/client.js +23 -21
  8. package/client.js.map +1 -1
  9. package/client.mjs +24 -22
  10. package/client.mjs.map +1 -1
  11. package/core/pagination.d.mts +11 -5
  12. package/core/pagination.d.mts.map +1 -1
  13. package/core/pagination.d.ts +11 -5
  14. package/core/pagination.d.ts.map +1 -1
  15. package/core/pagination.js +9 -9
  16. package/core/pagination.js.map +1 -1
  17. package/core/pagination.mjs +9 -9
  18. package/core/pagination.mjs.map +1 -1
  19. package/internal/parse.d.mts.map +1 -1
  20. package/internal/parse.d.ts.map +1 -1
  21. package/internal/parse.js +5 -0
  22. package/internal/parse.js.map +1 -1
  23. package/internal/parse.mjs +5 -0
  24. package/internal/parse.mjs.map +1 -1
  25. package/internal/qs/formats.d.mts +7 -0
  26. package/internal/qs/formats.d.mts.map +1 -0
  27. package/internal/qs/formats.d.ts +7 -0
  28. package/internal/qs/formats.d.ts.map +1 -0
  29. package/internal/qs/formats.js +13 -0
  30. package/internal/qs/formats.js.map +1 -0
  31. package/internal/qs/formats.mjs +9 -0
  32. package/internal/qs/formats.mjs.map +1 -0
  33. package/internal/qs/index.d.mts +10 -0
  34. package/internal/qs/index.d.mts.map +1 -0
  35. package/internal/qs/index.d.ts +10 -0
  36. package/internal/qs/index.d.ts.map +1 -0
  37. package/internal/qs/index.js +14 -0
  38. package/internal/qs/index.js.map +1 -0
  39. package/internal/qs/index.mjs +10 -0
  40. package/internal/qs/index.mjs.map +1 -0
  41. package/internal/qs/stringify.d.mts +3 -0
  42. package/internal/qs/stringify.d.mts.map +1 -0
  43. package/internal/qs/stringify.d.ts +3 -0
  44. package/internal/qs/stringify.d.ts.map +1 -0
  45. package/internal/qs/stringify.js +277 -0
  46. package/internal/qs/stringify.js.map +1 -0
  47. package/internal/qs/stringify.mjs +274 -0
  48. package/internal/qs/stringify.mjs.map +1 -0
  49. package/internal/qs/types.d.mts +57 -0
  50. package/internal/qs/types.d.mts.map +1 -0
  51. package/internal/qs/types.d.ts +57 -0
  52. package/internal/qs/types.d.ts.map +1 -0
  53. package/internal/qs/types.js +3 -0
  54. package/internal/qs/types.js.map +1 -0
  55. package/internal/qs/types.mjs +2 -0
  56. package/internal/qs/types.mjs.map +1 -0
  57. package/internal/qs/utils.d.mts +15 -0
  58. package/internal/qs/utils.d.mts.map +1 -0
  59. package/internal/qs/utils.d.ts +15 -0
  60. package/internal/qs/utils.d.ts.map +1 -0
  61. package/internal/qs/utils.js +230 -0
  62. package/internal/qs/utils.js.map +1 -0
  63. package/internal/qs/utils.mjs +217 -0
  64. package/internal/qs/utils.mjs.map +1 -0
  65. package/package.json +1 -1
  66. package/resources/index.d.mts +1 -1
  67. package/resources/index.d.mts.map +1 -1
  68. package/resources/index.d.ts +1 -1
  69. package/resources/index.d.ts.map +1 -1
  70. package/resources/index.js.map +1 -1
  71. package/resources/index.mjs +1 -1
  72. package/resources/index.mjs.map +1 -1
  73. package/resources/v1/addons/addons.d.mts +1298 -0
  74. package/resources/v1/addons/addons.d.mts.map +1 -0
  75. package/resources/v1/addons/addons.d.ts +1298 -0
  76. package/resources/v1/addons/addons.d.ts.map +1 -0
  77. package/resources/v1/addons/addons.js +78 -0
  78. package/resources/v1/addons/addons.js.map +1 -0
  79. package/resources/v1/addons/addons.mjs +73 -0
  80. package/resources/v1/addons/addons.mjs.map +1 -0
  81. package/resources/v1/addons/entitlements.d.mts +747 -0
  82. package/resources/v1/addons/entitlements.d.mts.map +1 -0
  83. package/resources/v1/addons/entitlements.d.ts +747 -0
  84. package/resources/v1/addons/entitlements.d.ts.map +1 -0
  85. package/resources/v1/addons/entitlements.js +36 -0
  86. package/resources/v1/addons/entitlements.js.map +1 -0
  87. package/resources/v1/addons/entitlements.mjs +32 -0
  88. package/resources/v1/addons/entitlements.mjs.map +1 -0
  89. package/resources/v1/addons/index.d.mts +3 -0
  90. package/resources/v1/addons/index.d.mts.map +1 -0
  91. package/resources/v1/addons/index.d.ts +3 -0
  92. package/resources/v1/addons/index.d.ts.map +1 -0
  93. package/resources/v1/addons/index.js +9 -0
  94. package/resources/v1/addons/index.js.map +1 -0
  95. package/resources/v1/addons/index.mjs +4 -0
  96. package/resources/v1/addons/index.mjs.map +1 -0
  97. package/resources/v1/addons.d.mts +2 -0
  98. package/resources/v1/addons.d.mts.map +1 -0
  99. package/resources/v1/addons.d.ts +2 -0
  100. package/resources/v1/addons.d.ts.map +1 -0
  101. package/resources/v1/addons.js +6 -0
  102. package/resources/v1/addons.js.map +1 -0
  103. package/resources/v1/addons.mjs +3 -0
  104. package/resources/v1/addons.mjs.map +1 -0
  105. package/resources/v1/coupons.d.mts +154 -157
  106. package/resources/v1/coupons.d.mts.map +1 -1
  107. package/resources/v1/coupons.d.ts +154 -157
  108. package/resources/v1/coupons.d.ts.map +1 -1
  109. package/resources/v1/coupons.js +21 -4
  110. package/resources/v1/coupons.js.map +1 -1
  111. package/resources/v1/coupons.mjs +21 -4
  112. package/resources/v1/coupons.mjs.map +1 -1
  113. package/resources/v1/customers/customers.d.mts +247 -118
  114. package/resources/v1/customers/customers.d.mts.map +1 -1
  115. package/resources/v1/customers/customers.d.ts +247 -118
  116. package/resources/v1/customers/customers.d.ts.map +1 -1
  117. package/resources/v1/customers/customers.js +37 -16
  118. package/resources/v1/customers/customers.js.map +1 -1
  119. package/resources/v1/customers/customers.mjs +37 -16
  120. package/resources/v1/customers/customers.mjs.map +1 -1
  121. package/resources/v1/customers/index.d.mts +2 -2
  122. package/resources/v1/customers/index.d.mts.map +1 -1
  123. package/resources/v1/customers/index.d.ts +2 -2
  124. package/resources/v1/customers/index.d.ts.map +1 -1
  125. package/resources/v1/customers/index.js +3 -3
  126. package/resources/v1/customers/index.js.map +1 -1
  127. package/resources/v1/customers/index.mjs +1 -1
  128. package/resources/v1/customers/index.mjs.map +1 -1
  129. package/resources/v1/customers/payment-method.d.mts +7 -2
  130. package/resources/v1/customers/payment-method.d.mts.map +1 -1
  131. package/resources/v1/customers/payment-method.d.ts +7 -2
  132. package/resources/v1/customers/payment-method.d.ts.map +1 -1
  133. package/resources/v1/customers/payment-method.js +4 -2
  134. package/resources/v1/customers/payment-method.js.map +1 -1
  135. package/resources/v1/customers/payment-method.mjs +4 -2
  136. package/resources/v1/customers/payment-method.mjs.map +1 -1
  137. package/resources/v1/customers/promotional-entitlements.d.mts +498 -0
  138. package/resources/v1/customers/promotional-entitlements.d.mts.map +1 -0
  139. package/resources/v1/customers/promotional-entitlements.d.ts +498 -0
  140. package/resources/v1/customers/promotional-entitlements.d.ts.map +1 -0
  141. package/resources/v1/customers/promotional-entitlements.js +32 -0
  142. package/resources/v1/customers/promotional-entitlements.js.map +1 -0
  143. package/resources/v1/customers/promotional-entitlements.mjs +28 -0
  144. package/resources/v1/customers/promotional-entitlements.mjs.map +1 -0
  145. package/resources/v1/events.d.mts +63 -0
  146. package/resources/v1/events.d.mts.map +1 -0
  147. package/resources/v1/events.d.ts +63 -0
  148. package/resources/v1/events.d.ts.map +1 -0
  149. package/resources/v1/events.js +16 -0
  150. package/resources/v1/events.js.map +1 -0
  151. package/resources/v1/events.mjs +12 -0
  152. package/resources/v1/events.mjs.map +1 -0
  153. package/resources/v1/features.d.mts +444 -0
  154. package/resources/v1/features.d.mts.map +1 -0
  155. package/resources/v1/features.d.ts +444 -0
  156. package/resources/v1/features.d.ts.map +1 -0
  157. package/resources/v1/features.js +51 -0
  158. package/resources/v1/features.js.map +1 -0
  159. package/resources/v1/features.mjs +47 -0
  160. package/resources/v1/features.mjs.map +1 -0
  161. package/resources/v1/index.d.mts +10 -4
  162. package/resources/v1/index.d.mts.map +1 -1
  163. package/resources/v1/index.d.ts +10 -4
  164. package/resources/v1/index.d.ts.map +1 -1
  165. package/resources/v1/index.js +17 -5
  166. package/resources/v1/index.js.map +1 -1
  167. package/resources/v1/index.mjs +7 -1
  168. package/resources/v1/index.mjs.map +1 -1
  169. package/resources/v1/plans/entitlements.d.mts +747 -0
  170. package/resources/v1/plans/entitlements.d.mts.map +1 -0
  171. package/resources/v1/plans/entitlements.d.ts +747 -0
  172. package/resources/v1/plans/entitlements.d.ts.map +1 -0
  173. package/resources/v1/plans/entitlements.js +36 -0
  174. package/resources/v1/plans/entitlements.js.map +1 -0
  175. package/resources/v1/plans/entitlements.mjs +32 -0
  176. package/resources/v1/plans/entitlements.mjs.map +1 -0
  177. package/resources/v1/plans/index.d.mts +3 -0
  178. package/resources/v1/plans/index.d.mts.map +1 -0
  179. package/resources/v1/plans/index.d.ts +3 -0
  180. package/resources/v1/plans/index.d.ts.map +1 -0
  181. package/resources/v1/plans/index.js +9 -0
  182. package/resources/v1/plans/index.js.map +1 -0
  183. package/resources/v1/plans/index.mjs +4 -0
  184. package/resources/v1/plans/index.mjs.map +1 -0
  185. package/resources/v1/plans/plans.d.mts +973 -0
  186. package/resources/v1/plans/plans.d.mts.map +1 -0
  187. package/resources/v1/plans/plans.d.ts +973 -0
  188. package/resources/v1/plans/plans.d.ts.map +1 -0
  189. package/resources/v1/plans/plans.js +76 -0
  190. package/resources/v1/plans/plans.js.map +1 -0
  191. package/resources/v1/plans/plans.mjs +71 -0
  192. package/resources/v1/plans/plans.mjs.map +1 -0
  193. package/resources/v1/plans.d.mts +2 -0
  194. package/resources/v1/plans.d.mts.map +1 -0
  195. package/resources/v1/plans.d.ts +2 -0
  196. package/resources/v1/plans.d.ts.map +1 -0
  197. package/resources/v1/plans.js +6 -0
  198. package/resources/v1/plans.js.map +1 -0
  199. package/resources/v1/plans.mjs +3 -0
  200. package/resources/v1/plans.mjs.map +1 -0
  201. package/resources/v1/products.d.mts +332 -0
  202. package/resources/v1/products.d.mts.map +1 -0
  203. package/resources/v1/products.d.ts +332 -0
  204. package/resources/v1/products.d.ts.map +1 -0
  205. package/resources/v1/products.js +52 -0
  206. package/resources/v1/products.js.map +1 -0
  207. package/resources/v1/products.mjs +48 -0
  208. package/resources/v1/products.mjs.map +1 -0
  209. package/resources/v1/subscriptions/future-update.d.mts +12 -19
  210. package/resources/v1/subscriptions/future-update.d.mts.map +1 -1
  211. package/resources/v1/subscriptions/future-update.d.ts +12 -19
  212. package/resources/v1/subscriptions/future-update.d.ts.map +1 -1
  213. package/resources/v1/subscriptions/future-update.js +3 -2
  214. package/resources/v1/subscriptions/future-update.js.map +1 -1
  215. package/resources/v1/subscriptions/future-update.mjs +3 -2
  216. package/resources/v1/subscriptions/future-update.mjs.map +1 -1
  217. package/resources/v1/subscriptions/index.d.mts +4 -2
  218. package/resources/v1/subscriptions/index.d.mts.map +1 -1
  219. package/resources/v1/subscriptions/index.d.ts +4 -2
  220. package/resources/v1/subscriptions/index.d.ts.map +1 -1
  221. package/resources/v1/subscriptions/index.js +5 -1
  222. package/resources/v1/subscriptions/index.js.map +1 -1
  223. package/resources/v1/subscriptions/index.mjs +3 -1
  224. package/resources/v1/subscriptions/index.mjs.map +1 -1
  225. package/resources/v1/subscriptions/invoice.d.mts +34 -0
  226. package/resources/v1/subscriptions/invoice.d.mts.map +1 -0
  227. package/resources/v1/subscriptions/invoice.d.ts +34 -0
  228. package/resources/v1/subscriptions/invoice.d.ts.map +1 -0
  229. package/resources/v1/subscriptions/invoice.js +17 -0
  230. package/resources/v1/subscriptions/invoice.js.map +1 -0
  231. package/resources/v1/subscriptions/invoice.mjs +13 -0
  232. package/resources/v1/subscriptions/invoice.mjs.map +1 -0
  233. package/resources/v1/subscriptions/subscriptions.d.mts +1565 -518
  234. package/resources/v1/subscriptions/subscriptions.d.mts.map +1 -1
  235. package/resources/v1/subscriptions/subscriptions.d.ts +1565 -518
  236. package/resources/v1/subscriptions/subscriptions.d.ts.map +1 -1
  237. package/resources/v1/subscriptions/subscriptions.js +52 -12
  238. package/resources/v1/subscriptions/subscriptions.js.map +1 -1
  239. package/resources/v1/subscriptions/subscriptions.mjs +53 -13
  240. package/resources/v1/subscriptions/subscriptions.mjs.map +1 -1
  241. package/resources/v1/subscriptions/usage.d.mts +98 -0
  242. package/resources/v1/subscriptions/usage.d.mts.map +1 -0
  243. package/resources/v1/subscriptions/usage.d.ts +98 -0
  244. package/resources/v1/subscriptions/usage.d.ts.map +1 -0
  245. package/resources/v1/subscriptions/usage.js +24 -0
  246. package/resources/v1/subscriptions/usage.js.map +1 -0
  247. package/resources/v1/subscriptions/usage.mjs +20 -0
  248. package/resources/v1/subscriptions/usage.mjs.map +1 -0
  249. package/resources/v1/usage.d.mts +230 -0
  250. package/resources/v1/usage.d.mts.map +1 -0
  251. package/resources/v1/usage.d.ts +230 -0
  252. package/resources/v1/usage.d.ts.map +1 -0
  253. package/resources/v1/usage.js +24 -0
  254. package/resources/v1/usage.js.map +1 -0
  255. package/resources/v1/usage.mjs +20 -0
  256. package/resources/v1/usage.mjs.map +1 -0
  257. package/resources/v1/v1.d.mts +30 -149
  258. package/resources/v1/v1.d.mts.map +1 -1
  259. package/resources/v1/v1.d.ts +30 -149
  260. package/resources/v1/v1.d.ts.map +1 -1
  261. package/resources/v1/v1.js +24 -12
  262. package/resources/v1/v1.js.map +1 -1
  263. package/resources/v1/v1.mjs +24 -12
  264. package/resources/v1/v1.mjs.map +1 -1
  265. package/src/client.ts +33 -40
  266. package/src/core/pagination.ts +24 -18
  267. package/src/internal/parse.ts +6 -0
  268. package/src/internal/qs/LICENSE.md +13 -0
  269. package/src/internal/qs/README.md +3 -0
  270. package/src/internal/qs/formats.ts +10 -0
  271. package/src/internal/qs/index.ts +13 -0
  272. package/src/internal/qs/stringify.ts +385 -0
  273. package/src/internal/qs/types.ts +71 -0
  274. package/src/internal/qs/utils.ts +265 -0
  275. package/src/resources/index.ts +1 -7
  276. package/src/resources/v1/addons/addons.ts +3245 -0
  277. package/src/resources/v1/addons/entitlements.ts +976 -0
  278. package/src/resources/v1/addons/index.ts +26 -0
  279. package/src/resources/v1/addons.ts +3 -0
  280. package/src/resources/v1/coupons.ts +311 -436
  281. package/src/resources/v1/customers/customers.ts +334 -153
  282. package/src/resources/v1/customers/index.ts +17 -2
  283. package/src/resources/v1/customers/payment-method.ts +7 -2
  284. package/src/resources/v1/customers/promotional-entitlements.ts +669 -0
  285. package/src/resources/v1/events.ts +74 -0
  286. package/src/resources/v1/features.ts +571 -0
  287. package/src/resources/v1/index.ts +73 -15
  288. package/src/resources/v1/plans/entitlements.ts +968 -0
  289. package/src/resources/v1/plans/index.ts +24 -0
  290. package/src/resources/v1/plans/plans.ts +2032 -0
  291. package/src/resources/v1/plans.ts +3 -0
  292. package/src/resources/v1/products.ts +423 -0
  293. package/src/resources/v1/subscriptions/future-update.ts +12 -27
  294. package/src/resources/v1/subscriptions/index.ts +16 -11
  295. package/src/resources/v1/subscriptions/invoice.ts +42 -0
  296. package/src/resources/v1/subscriptions/subscriptions.ts +3341 -832
  297. package/src/resources/v1/subscriptions/usage.ts +126 -0
  298. package/src/resources/v1/usage.ts +284 -0
  299. package/src/resources/v1/v1.ts +174 -197
  300. package/src/version.ts +1 -1
  301. package/version.d.mts +1 -1
  302. package/version.d.mts.map +1 -1
  303. package/version.d.ts +1 -1
  304. package/version.d.ts.map +1 -1
  305. package/version.js +1 -1
  306. package/version.js.map +1 -1
  307. package/version.mjs +1 -1
  308. package/version.mjs.map +1 -1
  309. package/resources/v1/customers/usage.d.mts +0 -98
  310. package/resources/v1/customers/usage.d.mts.map +0 -1
  311. package/resources/v1/customers/usage.d.ts +0 -98
  312. package/resources/v1/customers/usage.d.ts.map +0 -1
  313. package/resources/v1/customers/usage.js +0 -20
  314. package/resources/v1/customers/usage.js.map +0 -1
  315. package/resources/v1/customers/usage.mjs +0 -16
  316. package/resources/v1/customers/usage.mjs.map +0 -1
  317. package/src/resources/v1/customers/usage.ts +0 -132
@@ -0,0 +1,1298 @@
1
+ import { APIResource } from "../../../core/resource.mjs";
2
+ import * as EntitlementsAPI from "./entitlements.mjs";
3
+ import { AddonPackageEntitlement, EntitlementCreateParams, EntitlementCreateResponse, EntitlementDeleteParams, EntitlementListResponse, EntitlementUpdateParams, Entitlements } from "./entitlements.mjs";
4
+ import { APIPromise } from "../../../core/api-promise.mjs";
5
+ import { MyCursorIDPage, type MyCursorIDPageParams, PagePromise } from "../../../core/pagination.mjs";
6
+ import { RequestOptions } from "../../../internal/request-options.mjs";
7
+ export declare class Addons extends APIResource {
8
+ entitlements: EntitlementsAPI.Entitlements;
9
+ /**
10
+ * Creates a new addon in draft status, associated with a specific product.
11
+ */
12
+ create(body: AddonCreateParams, options?: RequestOptions): APIPromise<Addon>;
13
+ /**
14
+ * Retrieves an addon by its unique identifier, including entitlements and pricing
15
+ * details.
16
+ */
17
+ retrieve(id: string, options?: RequestOptions): APIPromise<Addon>;
18
+ /**
19
+ * Updates an existing addon's properties such as display name, description, and
20
+ * metadata.
21
+ */
22
+ update(id: string, body: AddonUpdateParams, options?: RequestOptions): APIPromise<Addon>;
23
+ /**
24
+ * Retrieves a paginated list of addons in the environment.
25
+ */
26
+ list(query?: AddonListParams | null | undefined, options?: RequestOptions): PagePromise<AddonListResponsesMyCursorIDPage, AddonListResponse>;
27
+ /**
28
+ * Archives an addon, preventing it from being used in new subscriptions.
29
+ */
30
+ archive(id: string, options?: RequestOptions): APIPromise<Addon>;
31
+ /**
32
+ * Creates a draft version of an existing addon for modification before publishing.
33
+ */
34
+ createDraft(id: string, options?: RequestOptions): APIPromise<Addon>;
35
+ /**
36
+ * Publishes a draft addon, making it available for use in subscriptions.
37
+ */
38
+ publish(id: string, body: AddonPublishParams, options?: RequestOptions): APIPromise<AddonPublishResponse>;
39
+ /**
40
+ * Removes a draft version of an addon.
41
+ */
42
+ removeDraft(id: string, options?: RequestOptions): APIPromise<AddonRemoveDraftResponse>;
43
+ /**
44
+ * Sets the pricing configuration for an addon.
45
+ */
46
+ setPricing(id: string, body: AddonSetPricingParams, options?: RequestOptions): APIPromise<SetPackagePricingResponse>;
47
+ }
48
+ export type AddonListResponsesMyCursorIDPage = MyCursorIDPage<AddonListResponse>;
49
+ /**
50
+ * Response object
51
+ */
52
+ export interface Addon {
53
+ /**
54
+ * Addon configuration object
55
+ */
56
+ data: Addon.Data;
57
+ }
58
+ export declare namespace Addon {
59
+ /**
60
+ * Addon configuration object
61
+ */
62
+ interface Data {
63
+ /**
64
+ * The unique identifier for the entity
65
+ */
66
+ id: string;
67
+ /**
68
+ * The unique identifier for the entity in the billing provider
69
+ */
70
+ billingId: string | null;
71
+ /**
72
+ * Timestamp of when the record was created
73
+ */
74
+ createdAt: string;
75
+ /**
76
+ * List of addons the addon is dependant on
77
+ */
78
+ dependencies: Array<string> | null;
79
+ /**
80
+ * The description of the package
81
+ */
82
+ description: string | null;
83
+ /**
84
+ * The display name of the package
85
+ */
86
+ displayName: string;
87
+ /**
88
+ * List of entitlements of the package
89
+ */
90
+ entitlements: Array<Data.Entitlement>;
91
+ /**
92
+ * Indicates if the package is the latest version
93
+ */
94
+ isLatest: boolean | null;
95
+ /**
96
+ * The maximum quantity of this addon that can be added to a subscription
97
+ */
98
+ maxQuantity: number | null;
99
+ /**
100
+ * Metadata associated with the entity
101
+ */
102
+ metadata: {
103
+ [key: string]: string;
104
+ };
105
+ /**
106
+ * The pricing type of the package
107
+ */
108
+ pricingType: 'FREE' | 'PAID' | 'CUSTOM' | null;
109
+ /**
110
+ * The product id of the package
111
+ */
112
+ productId: string;
113
+ /**
114
+ * The status of the package
115
+ */
116
+ status: 'DRAFT' | 'PUBLISHED' | 'ARCHIVED';
117
+ /**
118
+ * Timestamp of when the record was last updated
119
+ */
120
+ updatedAt: string;
121
+ /**
122
+ * The version number of the package
123
+ */
124
+ versionNumber: number;
125
+ }
126
+ namespace Data {
127
+ /**
128
+ * Entitlement reference with type and identifier
129
+ */
130
+ interface Entitlement {
131
+ /**
132
+ * The unique identifier for the entity
133
+ */
134
+ id: string;
135
+ type: 'FEATURE' | 'CREDIT';
136
+ }
137
+ }
138
+ }
139
+ /**
140
+ * Request to set the pricing configuration for a plan or addon.
141
+ */
142
+ export interface SetPackagePricing {
143
+ /**
144
+ * The pricing type (FREE, PAID, or CUSTOM)
145
+ */
146
+ pricingType: 'FREE' | 'PAID' | 'CUSTOM';
147
+ /**
148
+ * Deprecated: billing integration ID
149
+ */
150
+ billingId?: string;
151
+ /**
152
+ * Minimum spend configuration per billing period
153
+ */
154
+ minimumSpend?: Array<SetPackagePricing.MinimumSpend> | null;
155
+ /**
156
+ * When overage charges are billed
157
+ */
158
+ overageBillingPeriod?: 'ON_SUBSCRIPTION_RENEWAL' | 'MONTHLY';
159
+ /**
160
+ * Array of overage pricing model configurations
161
+ */
162
+ overagePricingModels?: Array<SetPackagePricing.OveragePricingModel>;
163
+ /**
164
+ * Array of pricing model configurations
165
+ */
166
+ pricingModels?: Array<SetPackagePricing.PricingModel>;
167
+ }
168
+ export declare namespace SetPackagePricing {
169
+ /**
170
+ * Minimum spend configuration for a billing period.
171
+ */
172
+ interface MinimumSpend {
173
+ /**
174
+ * The billing period
175
+ */
176
+ billingPeriod: 'MONTHLY' | 'ANNUALLY';
177
+ /**
178
+ * The minimum spend amount
179
+ */
180
+ minimum: MinimumSpend.Minimum;
181
+ }
182
+ namespace MinimumSpend {
183
+ /**
184
+ * The minimum spend amount
185
+ */
186
+ interface Minimum {
187
+ /**
188
+ * The price amount
189
+ */
190
+ amount: number;
191
+ /**
192
+ * The price currency
193
+ */
194
+ 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';
195
+ }
196
+ }
197
+ /**
198
+ * Overage pricing model configuration.
199
+ */
200
+ interface OveragePricingModel {
201
+ /**
202
+ * The billing model for overages
203
+ */
204
+ billingModel: 'FLAT_FEE' | 'MINIMUM_SPEND' | 'PER_UNIT' | 'USAGE_BASED' | 'CREDIT_BASED';
205
+ /**
206
+ * Price periods for overage pricing
207
+ */
208
+ pricePeriods: Array<OveragePricingModel.PricePeriod>;
209
+ /**
210
+ * The billing cadence for overages
211
+ */
212
+ billingCadence?: 'RECURRING' | 'ONE_OFF';
213
+ /**
214
+ * Entitlement configuration for the overage feature
215
+ */
216
+ entitlement?: OveragePricingModel.Entitlement;
217
+ /**
218
+ * The feature ID for overage pricing
219
+ */
220
+ featureId?: string;
221
+ /**
222
+ * Custom currency ID for overage top-up
223
+ */
224
+ topUpCustomCurrencyId?: string;
225
+ }
226
+ namespace OveragePricingModel {
227
+ /**
228
+ * Price configuration for a specific billing period.
229
+ */
230
+ interface PricePeriod {
231
+ /**
232
+ * The billing period (MONTHLY or ANNUALLY)
233
+ */
234
+ billingPeriod: 'MONTHLY' | 'ANNUALLY';
235
+ /**
236
+ * ISO country code for localized pricing
237
+ */
238
+ billingCountryCode?: string;
239
+ /**
240
+ * Block size for usage-based pricing
241
+ */
242
+ blockSize?: number;
243
+ /**
244
+ * When credits are granted
245
+ */
246
+ creditGrantCadence?: 'BEGINNING_OF_BILLING_PERIOD' | 'MONTHLY';
247
+ /**
248
+ * Credit rate configuration for credit-based pricing
249
+ */
250
+ creditRate?: PricePeriod.CreditRate;
251
+ /**
252
+ * The price amount and currency
253
+ */
254
+ price?: PricePeriod.Price;
255
+ /**
256
+ * Tiered pricing configuration
257
+ */
258
+ tiers?: Array<PricePeriod.Tier>;
259
+ }
260
+ namespace PricePeriod {
261
+ /**
262
+ * Credit rate configuration for credit-based pricing
263
+ */
264
+ interface CreditRate {
265
+ /**
266
+ * The credit rate amount
267
+ */
268
+ amount: number;
269
+ /**
270
+ * The custom currency ID
271
+ */
272
+ currencyId: string;
273
+ /**
274
+ * Optional cost formula expression
275
+ */
276
+ costFormula?: string;
277
+ }
278
+ /**
279
+ * The price amount and currency
280
+ */
281
+ interface Price {
282
+ /**
283
+ * The price amount
284
+ */
285
+ amount: number;
286
+ /**
287
+ * The price currency
288
+ */
289
+ 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';
290
+ }
291
+ /**
292
+ * A tier in tiered pricing.
293
+ */
294
+ interface Tier {
295
+ /**
296
+ * Flat price for this tier
297
+ */
298
+ flatPrice?: Tier.FlatPrice;
299
+ /**
300
+ * Per-unit price in this tier
301
+ */
302
+ unitPrice?: Tier.UnitPrice;
303
+ /**
304
+ * Upper bound of this tier (null for unlimited)
305
+ */
306
+ upTo?: number;
307
+ }
308
+ namespace Tier {
309
+ /**
310
+ * Flat price for this tier
311
+ */
312
+ interface FlatPrice {
313
+ /**
314
+ * The price amount
315
+ */
316
+ amount: number;
317
+ /**
318
+ * The price currency
319
+ */
320
+ 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';
321
+ }
322
+ /**
323
+ * Per-unit price in this tier
324
+ */
325
+ interface UnitPrice {
326
+ /**
327
+ * The price amount
328
+ */
329
+ amount: number;
330
+ /**
331
+ * The price currency
332
+ */
333
+ 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';
334
+ }
335
+ }
336
+ }
337
+ /**
338
+ * Entitlement configuration for the overage feature
339
+ */
340
+ interface Entitlement {
341
+ /**
342
+ * The feature ID for the entitlement
343
+ */
344
+ featureId: string;
345
+ /**
346
+ * Whether the limit is soft (allows overage)
347
+ */
348
+ hasSoftLimit?: boolean;
349
+ /**
350
+ * Whether usage is unlimited
351
+ */
352
+ hasUnlimitedUsage?: boolean;
353
+ /**
354
+ * Monthly reset configuration
355
+ */
356
+ monthlyResetPeriodConfiguration?: Entitlement.MonthlyResetPeriodConfiguration;
357
+ /**
358
+ * The usage reset period
359
+ */
360
+ resetPeriod?: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR';
361
+ /**
362
+ * The usage limit before overage kicks in
363
+ */
364
+ usageLimit?: number;
365
+ /**
366
+ * Weekly reset configuration
367
+ */
368
+ weeklyResetPeriodConfiguration?: Entitlement.WeeklyResetPeriodConfiguration;
369
+ /**
370
+ * Yearly reset configuration
371
+ */
372
+ yearlyResetPeriodConfiguration?: Entitlement.YearlyResetPeriodConfiguration;
373
+ }
374
+ namespace Entitlement {
375
+ /**
376
+ * Monthly reset configuration
377
+ */
378
+ interface MonthlyResetPeriodConfiguration {
379
+ /**
380
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
381
+ */
382
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
383
+ }
384
+ /**
385
+ * Weekly reset configuration
386
+ */
387
+ interface WeeklyResetPeriodConfiguration {
388
+ /**
389
+ * Reset anchor (SubscriptionStart or specific day)
390
+ */
391
+ accordingTo: 'SubscriptionStart' | 'EverySunday' | 'EveryMonday' | 'EveryTuesday' | 'EveryWednesday' | 'EveryThursday' | 'EveryFriday' | 'EverySaturday';
392
+ }
393
+ /**
394
+ * Yearly reset configuration
395
+ */
396
+ interface YearlyResetPeriodConfiguration {
397
+ /**
398
+ * Reset anchor (SubscriptionStart)
399
+ */
400
+ accordingTo: 'SubscriptionStart';
401
+ }
402
+ }
403
+ }
404
+ /**
405
+ * A pricing model configuration with billing details and price periods.
406
+ */
407
+ interface PricingModel {
408
+ /**
409
+ * The billing model (FLAT_FEE, PER_UNIT, USAGE_BASED, CREDIT_BASED)
410
+ */
411
+ billingModel: 'FLAT_FEE' | 'MINIMUM_SPEND' | 'PER_UNIT' | 'USAGE_BASED' | 'CREDIT_BASED';
412
+ /**
413
+ * Array of price period configurations (at least one required)
414
+ */
415
+ pricePeriods: Array<PricingModel.PricePeriod>;
416
+ /**
417
+ * The billing cadence (RECURRING or ONE_OFF)
418
+ */
419
+ billingCadence?: 'RECURRING' | 'ONE_OFF';
420
+ /**
421
+ * The feature ID this pricing model is associated with
422
+ */
423
+ featureId?: string;
424
+ /**
425
+ * Maximum number of units (max 999999)
426
+ */
427
+ maxUnitQuantity?: number;
428
+ /**
429
+ * Minimum number of units
430
+ */
431
+ minUnitQuantity?: number;
432
+ /**
433
+ * Monthly reset period configuration
434
+ */
435
+ monthlyResetPeriodConfiguration?: PricingModel.MonthlyResetPeriodConfiguration;
436
+ /**
437
+ * The usage reset period
438
+ */
439
+ resetPeriod?: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR';
440
+ /**
441
+ * The tiered pricing mode (VOLUME or GRADUATED)
442
+ */
443
+ tiersMode?: 'VOLUME' | 'GRADUATED';
444
+ /**
445
+ * The custom currency ID for top-up pricing
446
+ */
447
+ topUpCustomCurrencyId?: string;
448
+ /**
449
+ * Weekly reset period configuration
450
+ */
451
+ weeklyResetPeriodConfiguration?: PricingModel.WeeklyResetPeriodConfiguration;
452
+ /**
453
+ * Yearly reset period configuration
454
+ */
455
+ yearlyResetPeriodConfiguration?: PricingModel.YearlyResetPeriodConfiguration;
456
+ }
457
+ namespace PricingModel {
458
+ /**
459
+ * Price configuration for a specific billing period.
460
+ */
461
+ interface PricePeriod {
462
+ /**
463
+ * The billing period (MONTHLY or ANNUALLY)
464
+ */
465
+ billingPeriod: 'MONTHLY' | 'ANNUALLY';
466
+ /**
467
+ * ISO country code for localized pricing
468
+ */
469
+ billingCountryCode?: string;
470
+ /**
471
+ * Block size for usage-based pricing
472
+ */
473
+ blockSize?: number;
474
+ /**
475
+ * When credits are granted
476
+ */
477
+ creditGrantCadence?: 'BEGINNING_OF_BILLING_PERIOD' | 'MONTHLY';
478
+ /**
479
+ * Credit rate configuration for credit-based pricing
480
+ */
481
+ creditRate?: PricePeriod.CreditRate;
482
+ /**
483
+ * The price amount and currency
484
+ */
485
+ price?: PricePeriod.Price;
486
+ /**
487
+ * Tiered pricing configuration
488
+ */
489
+ tiers?: Array<PricePeriod.Tier>;
490
+ }
491
+ namespace PricePeriod {
492
+ /**
493
+ * Credit rate configuration for credit-based pricing
494
+ */
495
+ interface CreditRate {
496
+ /**
497
+ * The credit rate amount
498
+ */
499
+ amount: number;
500
+ /**
501
+ * The custom currency ID
502
+ */
503
+ currencyId: string;
504
+ /**
505
+ * Optional cost formula expression
506
+ */
507
+ costFormula?: string;
508
+ }
509
+ /**
510
+ * The price amount and currency
511
+ */
512
+ interface Price {
513
+ /**
514
+ * The price amount
515
+ */
516
+ amount: number;
517
+ /**
518
+ * The price currency
519
+ */
520
+ 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';
521
+ }
522
+ /**
523
+ * A tier in tiered pricing.
524
+ */
525
+ interface Tier {
526
+ /**
527
+ * Flat price for this tier
528
+ */
529
+ flatPrice?: Tier.FlatPrice;
530
+ /**
531
+ * Per-unit price in this tier
532
+ */
533
+ unitPrice?: Tier.UnitPrice;
534
+ /**
535
+ * Upper bound of this tier (null for unlimited)
536
+ */
537
+ upTo?: number;
538
+ }
539
+ namespace Tier {
540
+ /**
541
+ * Flat price for this tier
542
+ */
543
+ interface FlatPrice {
544
+ /**
545
+ * The price amount
546
+ */
547
+ amount: number;
548
+ /**
549
+ * The price currency
550
+ */
551
+ 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';
552
+ }
553
+ /**
554
+ * Per-unit price in this tier
555
+ */
556
+ interface UnitPrice {
557
+ /**
558
+ * The price amount
559
+ */
560
+ amount: number;
561
+ /**
562
+ * The price currency
563
+ */
564
+ 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';
565
+ }
566
+ }
567
+ }
568
+ /**
569
+ * Monthly reset period configuration
570
+ */
571
+ interface MonthlyResetPeriodConfiguration {
572
+ /**
573
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
574
+ */
575
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
576
+ }
577
+ /**
578
+ * Weekly reset period configuration
579
+ */
580
+ interface WeeklyResetPeriodConfiguration {
581
+ /**
582
+ * Reset anchor (SubscriptionStart or specific day)
583
+ */
584
+ accordingTo: 'SubscriptionStart' | 'EverySunday' | 'EveryMonday' | 'EveryTuesday' | 'EveryWednesday' | 'EveryThursday' | 'EveryFriday' | 'EverySaturday';
585
+ }
586
+ /**
587
+ * Yearly reset period configuration
588
+ */
589
+ interface YearlyResetPeriodConfiguration {
590
+ /**
591
+ * Reset anchor (SubscriptionStart)
592
+ */
593
+ accordingTo: 'SubscriptionStart';
594
+ }
595
+ }
596
+ }
597
+ /**
598
+ * Response object
599
+ */
600
+ export interface SetPackagePricingResponse {
601
+ /**
602
+ * Result of setting package pricing.
603
+ */
604
+ data: SetPackagePricingResponse.Data;
605
+ }
606
+ export declare namespace SetPackagePricingResponse {
607
+ /**
608
+ * Result of setting package pricing.
609
+ */
610
+ interface Data {
611
+ /**
612
+ * The package identifier (refId)
613
+ */
614
+ id: string;
615
+ /**
616
+ * The pricing type that was set
617
+ */
618
+ pricingType: 'FREE' | 'PAID' | 'CUSTOM';
619
+ }
620
+ }
621
+ /**
622
+ * Addon configuration object
623
+ */
624
+ export interface AddonListResponse {
625
+ /**
626
+ * The unique identifier for the entity
627
+ */
628
+ id: string;
629
+ /**
630
+ * The unique identifier for the entity in the billing provider
631
+ */
632
+ billingId: string | null;
633
+ /**
634
+ * Timestamp of when the record was created
635
+ */
636
+ createdAt: string;
637
+ /**
638
+ * List of addons the addon is dependant on
639
+ */
640
+ dependencies: Array<string> | null;
641
+ /**
642
+ * The description of the package
643
+ */
644
+ description: string | null;
645
+ /**
646
+ * The display name of the package
647
+ */
648
+ displayName: string;
649
+ /**
650
+ * List of entitlements of the package
651
+ */
652
+ entitlements: Array<AddonListResponse.Entitlement>;
653
+ /**
654
+ * Indicates if the package is the latest version
655
+ */
656
+ isLatest: boolean | null;
657
+ /**
658
+ * The maximum quantity of this addon that can be added to a subscription
659
+ */
660
+ maxQuantity: number | null;
661
+ /**
662
+ * Metadata associated with the entity
663
+ */
664
+ metadata: {
665
+ [key: string]: string;
666
+ };
667
+ /**
668
+ * The pricing type of the package
669
+ */
670
+ pricingType: 'FREE' | 'PAID' | 'CUSTOM' | null;
671
+ /**
672
+ * The product id of the package
673
+ */
674
+ productId: string;
675
+ /**
676
+ * The status of the package
677
+ */
678
+ status: 'DRAFT' | 'PUBLISHED' | 'ARCHIVED';
679
+ /**
680
+ * Timestamp of when the record was last updated
681
+ */
682
+ updatedAt: string;
683
+ /**
684
+ * The version number of the package
685
+ */
686
+ versionNumber: number;
687
+ }
688
+ export declare namespace AddonListResponse {
689
+ /**
690
+ * Entitlement reference with type and identifier
691
+ */
692
+ interface Entitlement {
693
+ /**
694
+ * The unique identifier for the entity
695
+ */
696
+ id: string;
697
+ type: 'FEATURE' | 'CREDIT';
698
+ }
699
+ }
700
+ /**
701
+ * Response containing task ID for publish operation
702
+ */
703
+ export interface AddonPublishResponse {
704
+ data: AddonPublishResponse.Data;
705
+ }
706
+ export declare namespace AddonPublishResponse {
707
+ interface Data {
708
+ /**
709
+ * Task ID for tracking the async publish operation
710
+ */
711
+ taskId: string | null;
712
+ }
713
+ }
714
+ /**
715
+ * Response confirming the addon draft was removed.
716
+ */
717
+ export interface AddonRemoveDraftResponse {
718
+ data: AddonRemoveDraftResponse.Data;
719
+ }
720
+ export declare namespace AddonRemoveDraftResponse {
721
+ interface Data {
722
+ /**
723
+ * The unique identifier for the entity
724
+ */
725
+ id: string;
726
+ }
727
+ }
728
+ export interface AddonCreateParams {
729
+ /**
730
+ * The unique identifier for the entity
731
+ */
732
+ id: string;
733
+ /**
734
+ * The display name of the package
735
+ */
736
+ displayName: string;
737
+ /**
738
+ * The product id of the package
739
+ */
740
+ productId: string;
741
+ /**
742
+ * The unique identifier for the entity in the billing provider
743
+ */
744
+ billingId?: string | null;
745
+ /**
746
+ * The description of the package
747
+ */
748
+ description?: string | null;
749
+ /**
750
+ * The maximum quantity of this addon that can be added to a subscription
751
+ */
752
+ maxQuantity?: number | null;
753
+ /**
754
+ * Metadata associated with the entity
755
+ */
756
+ metadata?: {
757
+ [key: string]: string;
758
+ };
759
+ /**
760
+ * The pricing type of the package
761
+ */
762
+ pricingType?: 'FREE' | 'PAID' | 'CUSTOM' | null;
763
+ /**
764
+ * The status of the package
765
+ */
766
+ status?: 'DRAFT' | 'PUBLISHED' | 'ARCHIVED';
767
+ }
768
+ export interface AddonUpdateParams {
769
+ /**
770
+ * The unique identifier for the entity in the billing provider
771
+ */
772
+ billingId?: string | null;
773
+ /**
774
+ * List of addons the addon is dependant on
775
+ */
776
+ dependencies?: Array<string> | null;
777
+ /**
778
+ * The description of the package
779
+ */
780
+ description?: string | null;
781
+ /**
782
+ * The display name of the package
783
+ */
784
+ displayName?: string;
785
+ /**
786
+ * The maximum quantity of this addon that can be added to a subscription
787
+ */
788
+ maxQuantity?: number | null;
789
+ /**
790
+ * Metadata associated with the entity
791
+ */
792
+ metadata?: {
793
+ [key: string]: string;
794
+ };
795
+ }
796
+ export interface AddonListParams extends MyCursorIDPageParams {
797
+ /**
798
+ * Filter by creation date using range operators: gt, gte, lt, lte
799
+ */
800
+ createdAt?: AddonListParams.CreatedAt;
801
+ /**
802
+ * Filter by product ID
803
+ */
804
+ productId?: string;
805
+ /**
806
+ * Filter by status. Supports comma-separated values for multiple statuses
807
+ */
808
+ status?: string;
809
+ }
810
+ export declare namespace AddonListParams {
811
+ /**
812
+ * Filter by creation date using range operators: gt, gte, lt, lte
813
+ */
814
+ interface CreatedAt {
815
+ /**
816
+ * Greater than the specified createdAt value
817
+ */
818
+ gt?: string;
819
+ /**
820
+ * Greater than or equal to the specified createdAt value
821
+ */
822
+ gte?: string;
823
+ /**
824
+ * Less than the specified createdAt value
825
+ */
826
+ lt?: string;
827
+ /**
828
+ * Less than or equal to the specified createdAt value
829
+ */
830
+ lte?: string;
831
+ }
832
+ }
833
+ export interface AddonPublishParams {
834
+ /**
835
+ * The migration type of the package
836
+ */
837
+ migrationType: 'NEW_CUSTOMERS' | 'ALL_CUSTOMERS';
838
+ }
839
+ export interface AddonSetPricingParams {
840
+ /**
841
+ * The pricing type (FREE, PAID, or CUSTOM)
842
+ */
843
+ pricingType: 'FREE' | 'PAID' | 'CUSTOM';
844
+ /**
845
+ * Deprecated: billing integration ID
846
+ */
847
+ billingId?: string;
848
+ /**
849
+ * Minimum spend configuration per billing period
850
+ */
851
+ minimumSpend?: Array<AddonSetPricingParams.MinimumSpend> | null;
852
+ /**
853
+ * When overage charges are billed
854
+ */
855
+ overageBillingPeriod?: 'ON_SUBSCRIPTION_RENEWAL' | 'MONTHLY';
856
+ /**
857
+ * Array of overage pricing model configurations
858
+ */
859
+ overagePricingModels?: Array<AddonSetPricingParams.OveragePricingModel>;
860
+ /**
861
+ * Array of pricing model configurations
862
+ */
863
+ pricingModels?: Array<AddonSetPricingParams.PricingModel>;
864
+ }
865
+ export declare namespace AddonSetPricingParams {
866
+ /**
867
+ * Minimum spend configuration for a billing period.
868
+ */
869
+ interface MinimumSpend {
870
+ /**
871
+ * The billing period
872
+ */
873
+ billingPeriod: 'MONTHLY' | 'ANNUALLY';
874
+ /**
875
+ * The minimum spend amount
876
+ */
877
+ minimum: MinimumSpend.Minimum;
878
+ }
879
+ namespace MinimumSpend {
880
+ /**
881
+ * The minimum spend amount
882
+ */
883
+ interface Minimum {
884
+ /**
885
+ * The price amount
886
+ */
887
+ amount: number;
888
+ /**
889
+ * The price currency
890
+ */
891
+ 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';
892
+ }
893
+ }
894
+ /**
895
+ * Overage pricing model configuration.
896
+ */
897
+ interface OveragePricingModel {
898
+ /**
899
+ * The billing model for overages
900
+ */
901
+ billingModel: 'FLAT_FEE' | 'MINIMUM_SPEND' | 'PER_UNIT' | 'USAGE_BASED' | 'CREDIT_BASED';
902
+ /**
903
+ * Price periods for overage pricing
904
+ */
905
+ pricePeriods: Array<OveragePricingModel.PricePeriod>;
906
+ /**
907
+ * The billing cadence for overages
908
+ */
909
+ billingCadence?: 'RECURRING' | 'ONE_OFF';
910
+ /**
911
+ * Entitlement configuration for the overage feature
912
+ */
913
+ entitlement?: OveragePricingModel.Entitlement;
914
+ /**
915
+ * The feature ID for overage pricing
916
+ */
917
+ featureId?: string;
918
+ /**
919
+ * Custom currency ID for overage top-up
920
+ */
921
+ topUpCustomCurrencyId?: string;
922
+ }
923
+ namespace OveragePricingModel {
924
+ /**
925
+ * Price configuration for a specific billing period.
926
+ */
927
+ interface PricePeriod {
928
+ /**
929
+ * The billing period (MONTHLY or ANNUALLY)
930
+ */
931
+ billingPeriod: 'MONTHLY' | 'ANNUALLY';
932
+ /**
933
+ * ISO country code for localized pricing
934
+ */
935
+ billingCountryCode?: string;
936
+ /**
937
+ * Block size for usage-based pricing
938
+ */
939
+ blockSize?: number;
940
+ /**
941
+ * When credits are granted
942
+ */
943
+ creditGrantCadence?: 'BEGINNING_OF_BILLING_PERIOD' | 'MONTHLY';
944
+ /**
945
+ * Credit rate configuration for credit-based pricing
946
+ */
947
+ creditRate?: PricePeriod.CreditRate;
948
+ /**
949
+ * The price amount and currency
950
+ */
951
+ price?: PricePeriod.Price;
952
+ /**
953
+ * Tiered pricing configuration
954
+ */
955
+ tiers?: Array<PricePeriod.Tier>;
956
+ }
957
+ namespace PricePeriod {
958
+ /**
959
+ * Credit rate configuration for credit-based pricing
960
+ */
961
+ interface CreditRate {
962
+ /**
963
+ * The credit rate amount
964
+ */
965
+ amount: number;
966
+ /**
967
+ * The custom currency ID
968
+ */
969
+ currencyId: string;
970
+ /**
971
+ * Optional cost formula expression
972
+ */
973
+ costFormula?: string;
974
+ }
975
+ /**
976
+ * The price amount and currency
977
+ */
978
+ interface Price {
979
+ /**
980
+ * The price amount
981
+ */
982
+ amount: number;
983
+ /**
984
+ * The price currency
985
+ */
986
+ 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';
987
+ }
988
+ /**
989
+ * A tier in tiered pricing.
990
+ */
991
+ interface Tier {
992
+ /**
993
+ * Flat price for this tier
994
+ */
995
+ flatPrice?: Tier.FlatPrice;
996
+ /**
997
+ * Per-unit price in this tier
998
+ */
999
+ unitPrice?: Tier.UnitPrice;
1000
+ /**
1001
+ * Upper bound of this tier (null for unlimited)
1002
+ */
1003
+ upTo?: number;
1004
+ }
1005
+ namespace Tier {
1006
+ /**
1007
+ * Flat price for this tier
1008
+ */
1009
+ interface FlatPrice {
1010
+ /**
1011
+ * The price amount
1012
+ */
1013
+ amount: number;
1014
+ /**
1015
+ * The price currency
1016
+ */
1017
+ 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';
1018
+ }
1019
+ /**
1020
+ * Per-unit price in this tier
1021
+ */
1022
+ interface UnitPrice {
1023
+ /**
1024
+ * The price amount
1025
+ */
1026
+ amount: number;
1027
+ /**
1028
+ * The price currency
1029
+ */
1030
+ 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';
1031
+ }
1032
+ }
1033
+ }
1034
+ /**
1035
+ * Entitlement configuration for the overage feature
1036
+ */
1037
+ interface Entitlement {
1038
+ /**
1039
+ * The feature ID for the entitlement
1040
+ */
1041
+ featureId: string;
1042
+ /**
1043
+ * Whether the limit is soft (allows overage)
1044
+ */
1045
+ hasSoftLimit?: boolean;
1046
+ /**
1047
+ * Whether usage is unlimited
1048
+ */
1049
+ hasUnlimitedUsage?: boolean;
1050
+ /**
1051
+ * Monthly reset configuration
1052
+ */
1053
+ monthlyResetPeriodConfiguration?: Entitlement.MonthlyResetPeriodConfiguration;
1054
+ /**
1055
+ * The usage reset period
1056
+ */
1057
+ resetPeriod?: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR';
1058
+ /**
1059
+ * The usage limit before overage kicks in
1060
+ */
1061
+ usageLimit?: number;
1062
+ /**
1063
+ * Weekly reset configuration
1064
+ */
1065
+ weeklyResetPeriodConfiguration?: Entitlement.WeeklyResetPeriodConfiguration;
1066
+ /**
1067
+ * Yearly reset configuration
1068
+ */
1069
+ yearlyResetPeriodConfiguration?: Entitlement.YearlyResetPeriodConfiguration;
1070
+ }
1071
+ namespace Entitlement {
1072
+ /**
1073
+ * Monthly reset configuration
1074
+ */
1075
+ interface MonthlyResetPeriodConfiguration {
1076
+ /**
1077
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
1078
+ */
1079
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
1080
+ }
1081
+ /**
1082
+ * Weekly reset configuration
1083
+ */
1084
+ interface WeeklyResetPeriodConfiguration {
1085
+ /**
1086
+ * Reset anchor (SubscriptionStart or specific day)
1087
+ */
1088
+ accordingTo: 'SubscriptionStart' | 'EverySunday' | 'EveryMonday' | 'EveryTuesday' | 'EveryWednesday' | 'EveryThursday' | 'EveryFriday' | 'EverySaturday';
1089
+ }
1090
+ /**
1091
+ * Yearly reset configuration
1092
+ */
1093
+ interface YearlyResetPeriodConfiguration {
1094
+ /**
1095
+ * Reset anchor (SubscriptionStart)
1096
+ */
1097
+ accordingTo: 'SubscriptionStart';
1098
+ }
1099
+ }
1100
+ }
1101
+ /**
1102
+ * A pricing model configuration with billing details and price periods.
1103
+ */
1104
+ interface PricingModel {
1105
+ /**
1106
+ * The billing model (FLAT_FEE, PER_UNIT, USAGE_BASED, CREDIT_BASED)
1107
+ */
1108
+ billingModel: 'FLAT_FEE' | 'MINIMUM_SPEND' | 'PER_UNIT' | 'USAGE_BASED' | 'CREDIT_BASED';
1109
+ /**
1110
+ * Array of price period configurations (at least one required)
1111
+ */
1112
+ pricePeriods: Array<PricingModel.PricePeriod>;
1113
+ /**
1114
+ * The billing cadence (RECURRING or ONE_OFF)
1115
+ */
1116
+ billingCadence?: 'RECURRING' | 'ONE_OFF';
1117
+ /**
1118
+ * The feature ID this pricing model is associated with
1119
+ */
1120
+ featureId?: string;
1121
+ /**
1122
+ * Maximum number of units (max 999999)
1123
+ */
1124
+ maxUnitQuantity?: number;
1125
+ /**
1126
+ * Minimum number of units
1127
+ */
1128
+ minUnitQuantity?: number;
1129
+ /**
1130
+ * Monthly reset period configuration
1131
+ */
1132
+ monthlyResetPeriodConfiguration?: PricingModel.MonthlyResetPeriodConfiguration;
1133
+ /**
1134
+ * The usage reset period
1135
+ */
1136
+ resetPeriod?: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR';
1137
+ /**
1138
+ * The tiered pricing mode (VOLUME or GRADUATED)
1139
+ */
1140
+ tiersMode?: 'VOLUME' | 'GRADUATED';
1141
+ /**
1142
+ * The custom currency ID for top-up pricing
1143
+ */
1144
+ topUpCustomCurrencyId?: string;
1145
+ /**
1146
+ * Weekly reset period configuration
1147
+ */
1148
+ weeklyResetPeriodConfiguration?: PricingModel.WeeklyResetPeriodConfiguration;
1149
+ /**
1150
+ * Yearly reset period configuration
1151
+ */
1152
+ yearlyResetPeriodConfiguration?: PricingModel.YearlyResetPeriodConfiguration;
1153
+ }
1154
+ namespace PricingModel {
1155
+ /**
1156
+ * Price configuration for a specific billing period.
1157
+ */
1158
+ interface PricePeriod {
1159
+ /**
1160
+ * The billing period (MONTHLY or ANNUALLY)
1161
+ */
1162
+ billingPeriod: 'MONTHLY' | 'ANNUALLY';
1163
+ /**
1164
+ * ISO country code for localized pricing
1165
+ */
1166
+ billingCountryCode?: string;
1167
+ /**
1168
+ * Block size for usage-based pricing
1169
+ */
1170
+ blockSize?: number;
1171
+ /**
1172
+ * When credits are granted
1173
+ */
1174
+ creditGrantCadence?: 'BEGINNING_OF_BILLING_PERIOD' | 'MONTHLY';
1175
+ /**
1176
+ * Credit rate configuration for credit-based pricing
1177
+ */
1178
+ creditRate?: PricePeriod.CreditRate;
1179
+ /**
1180
+ * The price amount and currency
1181
+ */
1182
+ price?: PricePeriod.Price;
1183
+ /**
1184
+ * Tiered pricing configuration
1185
+ */
1186
+ tiers?: Array<PricePeriod.Tier>;
1187
+ }
1188
+ namespace PricePeriod {
1189
+ /**
1190
+ * Credit rate configuration for credit-based pricing
1191
+ */
1192
+ interface CreditRate {
1193
+ /**
1194
+ * The credit rate amount
1195
+ */
1196
+ amount: number;
1197
+ /**
1198
+ * The custom currency ID
1199
+ */
1200
+ currencyId: string;
1201
+ /**
1202
+ * Optional cost formula expression
1203
+ */
1204
+ costFormula?: string;
1205
+ }
1206
+ /**
1207
+ * The price amount and currency
1208
+ */
1209
+ interface Price {
1210
+ /**
1211
+ * The price amount
1212
+ */
1213
+ amount: number;
1214
+ /**
1215
+ * The price currency
1216
+ */
1217
+ 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';
1218
+ }
1219
+ /**
1220
+ * A tier in tiered pricing.
1221
+ */
1222
+ interface Tier {
1223
+ /**
1224
+ * Flat price for this tier
1225
+ */
1226
+ flatPrice?: Tier.FlatPrice;
1227
+ /**
1228
+ * Per-unit price in this tier
1229
+ */
1230
+ unitPrice?: Tier.UnitPrice;
1231
+ /**
1232
+ * Upper bound of this tier (null for unlimited)
1233
+ */
1234
+ upTo?: number;
1235
+ }
1236
+ namespace Tier {
1237
+ /**
1238
+ * Flat price for this tier
1239
+ */
1240
+ interface FlatPrice {
1241
+ /**
1242
+ * The price amount
1243
+ */
1244
+ amount: number;
1245
+ /**
1246
+ * The price currency
1247
+ */
1248
+ 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';
1249
+ }
1250
+ /**
1251
+ * Per-unit price in this tier
1252
+ */
1253
+ interface UnitPrice {
1254
+ /**
1255
+ * The price amount
1256
+ */
1257
+ amount: number;
1258
+ /**
1259
+ * The price currency
1260
+ */
1261
+ 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';
1262
+ }
1263
+ }
1264
+ }
1265
+ /**
1266
+ * Monthly reset period configuration
1267
+ */
1268
+ interface MonthlyResetPeriodConfiguration {
1269
+ /**
1270
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
1271
+ */
1272
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
1273
+ }
1274
+ /**
1275
+ * Weekly reset period configuration
1276
+ */
1277
+ interface WeeklyResetPeriodConfiguration {
1278
+ /**
1279
+ * Reset anchor (SubscriptionStart or specific day)
1280
+ */
1281
+ accordingTo: 'SubscriptionStart' | 'EverySunday' | 'EveryMonday' | 'EveryTuesday' | 'EveryWednesday' | 'EveryThursday' | 'EveryFriday' | 'EverySaturday';
1282
+ }
1283
+ /**
1284
+ * Yearly reset period configuration
1285
+ */
1286
+ interface YearlyResetPeriodConfiguration {
1287
+ /**
1288
+ * Reset anchor (SubscriptionStart)
1289
+ */
1290
+ accordingTo: 'SubscriptionStart';
1291
+ }
1292
+ }
1293
+ }
1294
+ export declare namespace Addons {
1295
+ export { type Addon as Addon, type SetPackagePricing as SetPackagePricing, type SetPackagePricingResponse as SetPackagePricingResponse, type AddonListResponse as AddonListResponse, type AddonPublishResponse as AddonPublishResponse, type AddonRemoveDraftResponse as AddonRemoveDraftResponse, type AddonListResponsesMyCursorIDPage as AddonListResponsesMyCursorIDPage, type AddonCreateParams as AddonCreateParams, type AddonUpdateParams as AddonUpdateParams, type AddonListParams as AddonListParams, type AddonPublishParams as AddonPublishParams, type AddonSetPricingParams as AddonSetPricingParams, };
1296
+ export { Entitlements as Entitlements, type AddonPackageEntitlement as AddonPackageEntitlement, type EntitlementCreateResponse as EntitlementCreateResponse, type EntitlementListResponse as EntitlementListResponse, type EntitlementCreateParams as EntitlementCreateParams, type EntitlementUpdateParams as EntitlementUpdateParams, type EntitlementDeleteParams as EntitlementDeleteParams, };
1297
+ }
1298
+ //# sourceMappingURL=addons.d.mts.map