@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,2032 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../../core/resource';
4
+ import * as AddonsAPI from '../addons/addons';
5
+ import * as EntitlementsAPI from './entitlements';
6
+ import {
7
+ EntitlementCreateParams,
8
+ EntitlementCreateResponse,
9
+ EntitlementDeleteParams,
10
+ EntitlementListResponse,
11
+ EntitlementUpdateParams,
12
+ Entitlements,
13
+ PlanEntitlement,
14
+ } from './entitlements';
15
+ import { APIPromise } from '../../../core/api-promise';
16
+ import { MyCursorIDPage, type MyCursorIDPageParams, PagePromise } from '../../../core/pagination';
17
+ import { RequestOptions } from '../../../internal/request-options';
18
+ import { path } from '../../../internal/utils/path';
19
+
20
+ export class Plans extends APIResource {
21
+ entitlements: EntitlementsAPI.Entitlements = new EntitlementsAPI.Entitlements(this._client);
22
+
23
+ /**
24
+ * Creates a new plan in draft status.
25
+ */
26
+ create(body: PlanCreateParams, options?: RequestOptions): APIPromise<Plan> {
27
+ return this._client.post('/api/v1/plans', { body, ...options });
28
+ }
29
+
30
+ /**
31
+ * Retrieves a plan by its unique identifier, including entitlements and pricing
32
+ * details.
33
+ */
34
+ retrieve(id: string, options?: RequestOptions): APIPromise<Plan> {
35
+ return this._client.get(path`/api/v1/plans/${id}`, options);
36
+ }
37
+
38
+ /**
39
+ * Updates an existing plan's properties such as display name, description, and
40
+ * metadata.
41
+ */
42
+ update(id: string, body: PlanUpdateParams, options?: RequestOptions): APIPromise<Plan> {
43
+ return this._client.patch(path`/api/v1/plans/${id}`, { body, ...options });
44
+ }
45
+
46
+ /**
47
+ * Retrieves a paginated list of plans in the environment.
48
+ */
49
+ list(
50
+ query: PlanListParams | null | undefined = {},
51
+ options?: RequestOptions,
52
+ ): PagePromise<PlanListResponsesMyCursorIDPage, PlanListResponse> {
53
+ return this._client.getAPIList('/api/v1/plans', MyCursorIDPage<PlanListResponse>, { query, ...options });
54
+ }
55
+
56
+ /**
57
+ * Archives a plan, preventing it from being used in new subscriptions.
58
+ */
59
+ archive(id: string, options?: RequestOptions): APIPromise<Plan> {
60
+ return this._client.post(path`/api/v1/plans/${id}/archive`, options);
61
+ }
62
+
63
+ /**
64
+ * Creates a draft version of an existing plan for modification before publishing.
65
+ */
66
+ createDraft(id: string, options?: RequestOptions): APIPromise<Plan> {
67
+ return this._client.post(path`/api/v1/plans/${id}/draft`, options);
68
+ }
69
+
70
+ /**
71
+ * Publishes a draft plan, making it available for use in subscriptions.
72
+ */
73
+ publish(id: string, body: PlanPublishParams, options?: RequestOptions): APIPromise<PlanPublishResponse> {
74
+ return this._client.post(path`/api/v1/plans/${id}/publish`, { body, ...options });
75
+ }
76
+
77
+ /**
78
+ * Removes a draft version of a plan.
79
+ */
80
+ removeDraft(id: string, options?: RequestOptions): APIPromise<PlanRemoveDraftResponse> {
81
+ return this._client.delete(path`/api/v1/plans/${id}/draft`, options);
82
+ }
83
+
84
+ /**
85
+ * Sets the pricing configuration for a plan, including pricing models, overage
86
+ * pricing, and minimum spend.
87
+ */
88
+ setPricing(
89
+ id: string,
90
+ body: PlanSetPricingParams,
91
+ options?: RequestOptions,
92
+ ): APIPromise<AddonsAPI.SetPackagePricingResponse> {
93
+ return this._client.put(path`/api/v1/plans/${id}/charges`, { body, ...options });
94
+ }
95
+ }
96
+
97
+ export type PlanListResponsesMyCursorIDPage = MyCursorIDPage<PlanListResponse>;
98
+
99
+ /**
100
+ * Response object
101
+ */
102
+ export interface Plan {
103
+ /**
104
+ * Plan configuration object
105
+ */
106
+ data: Plan.Data;
107
+ }
108
+
109
+ export namespace Plan {
110
+ /**
111
+ * Plan configuration object
112
+ */
113
+ export interface Data {
114
+ /**
115
+ * The unique identifier for the entity
116
+ */
117
+ id: string;
118
+
119
+ /**
120
+ * The unique identifier for the entity in the billing provider
121
+ */
122
+ billingId: string | null;
123
+
124
+ compatibleAddonIds: Array<string> | null;
125
+
126
+ /**
127
+ * Timestamp of when the record was created
128
+ */
129
+ createdAt: string;
130
+
131
+ /**
132
+ * Default trial configuration for the plan
133
+ */
134
+ defaultTrialConfig: Data.DefaultTrialConfig | null;
135
+
136
+ /**
137
+ * The description of the package
138
+ */
139
+ description: string | null;
140
+
141
+ /**
142
+ * The display name of the package
143
+ */
144
+ displayName: string;
145
+
146
+ /**
147
+ * List of entitlements of the package
148
+ */
149
+ entitlements: Array<Data.Entitlement>;
150
+
151
+ /**
152
+ * Indicates if the package is the latest version
153
+ */
154
+ isLatest: boolean | null;
155
+
156
+ /**
157
+ * Metadata associated with the entity
158
+ */
159
+ metadata: { [key: string]: string };
160
+
161
+ /**
162
+ * The ID of the parent plan, if applicable
163
+ */
164
+ parentPlanId: string | null;
165
+
166
+ /**
167
+ * The pricing type of the package
168
+ */
169
+ pricingType: 'FREE' | 'PAID' | 'CUSTOM' | null;
170
+
171
+ /**
172
+ * The product id of the package
173
+ */
174
+ productId: string;
175
+
176
+ /**
177
+ * The status of the package
178
+ */
179
+ status: 'DRAFT' | 'PUBLISHED' | 'ARCHIVED';
180
+
181
+ /**
182
+ * Timestamp of when the record was last updated
183
+ */
184
+ updatedAt: string;
185
+
186
+ /**
187
+ * The version number of the package
188
+ */
189
+ versionNumber: number;
190
+ }
191
+
192
+ export namespace Data {
193
+ /**
194
+ * Default trial configuration for the plan
195
+ */
196
+ export interface DefaultTrialConfig {
197
+ /**
198
+ * The duration of the trial in the specified units
199
+ */
200
+ duration: number;
201
+
202
+ /**
203
+ * The time unit for the trial duration (DAY or MONTH)
204
+ */
205
+ units: 'DAY' | 'MONTH';
206
+
207
+ /**
208
+ * Budget configuration for the trial
209
+ */
210
+ budget?: DefaultTrialConfig.Budget | null;
211
+
212
+ /**
213
+ * Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
214
+ */
215
+ trialEndBehavior?: 'CONVERT_TO_PAID' | 'CANCEL_SUBSCRIPTION' | null;
216
+ }
217
+
218
+ export namespace DefaultTrialConfig {
219
+ /**
220
+ * Budget configuration for the trial
221
+ */
222
+ export interface Budget {
223
+ /**
224
+ * Whether the budget limit is a soft limit (allows overage) or hard limit
225
+ */
226
+ hasSoftLimit: boolean;
227
+
228
+ /**
229
+ * The budget limit amount
230
+ */
231
+ limit: number;
232
+ }
233
+ }
234
+
235
+ /**
236
+ * Entitlement reference with type and identifier
237
+ */
238
+ export interface Entitlement {
239
+ /**
240
+ * The unique identifier for the entity
241
+ */
242
+ id: string;
243
+
244
+ type: 'FEATURE' | 'CREDIT';
245
+ }
246
+ }
247
+ }
248
+
249
+ /**
250
+ * Plan configuration object
251
+ */
252
+ export interface PlanListResponse {
253
+ /**
254
+ * The unique identifier for the entity
255
+ */
256
+ id: string;
257
+
258
+ /**
259
+ * The unique identifier for the entity in the billing provider
260
+ */
261
+ billingId: string | null;
262
+
263
+ compatibleAddonIds: Array<string> | null;
264
+
265
+ /**
266
+ * Timestamp of when the record was created
267
+ */
268
+ createdAt: string;
269
+
270
+ /**
271
+ * Default trial configuration for the plan
272
+ */
273
+ defaultTrialConfig: PlanListResponse.DefaultTrialConfig | null;
274
+
275
+ /**
276
+ * The description of the package
277
+ */
278
+ description: string | null;
279
+
280
+ /**
281
+ * The display name of the package
282
+ */
283
+ displayName: string;
284
+
285
+ /**
286
+ * List of entitlements of the package
287
+ */
288
+ entitlements: Array<PlanListResponse.Entitlement>;
289
+
290
+ /**
291
+ * Indicates if the package is the latest version
292
+ */
293
+ isLatest: boolean | null;
294
+
295
+ /**
296
+ * Metadata associated with the entity
297
+ */
298
+ metadata: { [key: string]: string };
299
+
300
+ /**
301
+ * The ID of the parent plan, if applicable
302
+ */
303
+ parentPlanId: string | null;
304
+
305
+ /**
306
+ * The pricing type of the package
307
+ */
308
+ pricingType: 'FREE' | 'PAID' | 'CUSTOM' | null;
309
+
310
+ /**
311
+ * The product id of the package
312
+ */
313
+ productId: string;
314
+
315
+ /**
316
+ * The status of the package
317
+ */
318
+ status: 'DRAFT' | 'PUBLISHED' | 'ARCHIVED';
319
+
320
+ /**
321
+ * Timestamp of when the record was last updated
322
+ */
323
+ updatedAt: string;
324
+
325
+ /**
326
+ * The version number of the package
327
+ */
328
+ versionNumber: number;
329
+ }
330
+
331
+ export namespace PlanListResponse {
332
+ /**
333
+ * Default trial configuration for the plan
334
+ */
335
+ export interface DefaultTrialConfig {
336
+ /**
337
+ * The duration of the trial in the specified units
338
+ */
339
+ duration: number;
340
+
341
+ /**
342
+ * The time unit for the trial duration (DAY or MONTH)
343
+ */
344
+ units: 'DAY' | 'MONTH';
345
+
346
+ /**
347
+ * Budget configuration for the trial
348
+ */
349
+ budget?: DefaultTrialConfig.Budget | null;
350
+
351
+ /**
352
+ * Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
353
+ */
354
+ trialEndBehavior?: 'CONVERT_TO_PAID' | 'CANCEL_SUBSCRIPTION' | null;
355
+ }
356
+
357
+ export namespace DefaultTrialConfig {
358
+ /**
359
+ * Budget configuration for the trial
360
+ */
361
+ export interface Budget {
362
+ /**
363
+ * Whether the budget limit is a soft limit (allows overage) or hard limit
364
+ */
365
+ hasSoftLimit: boolean;
366
+
367
+ /**
368
+ * The budget limit amount
369
+ */
370
+ limit: number;
371
+ }
372
+ }
373
+
374
+ /**
375
+ * Entitlement reference with type and identifier
376
+ */
377
+ export interface Entitlement {
378
+ /**
379
+ * The unique identifier for the entity
380
+ */
381
+ id: string;
382
+
383
+ type: 'FEATURE' | 'CREDIT';
384
+ }
385
+ }
386
+
387
+ /**
388
+ * Response containing task ID for publish operation
389
+ */
390
+ export interface PlanPublishResponse {
391
+ data: PlanPublishResponse.Data;
392
+ }
393
+
394
+ export namespace PlanPublishResponse {
395
+ export interface Data {
396
+ /**
397
+ * Task ID for tracking the async publish operation
398
+ */
399
+ taskId: string | null;
400
+ }
401
+ }
402
+
403
+ /**
404
+ * Response confirming the plan draft was removed.
405
+ */
406
+ export interface PlanRemoveDraftResponse {
407
+ data: PlanRemoveDraftResponse.Data;
408
+ }
409
+
410
+ export namespace PlanRemoveDraftResponse {
411
+ export interface Data {
412
+ /**
413
+ * The unique identifier for the entity
414
+ */
415
+ id: string;
416
+ }
417
+ }
418
+
419
+ export interface PlanCreateParams {
420
+ /**
421
+ * The unique identifier for the entity
422
+ */
423
+ id: string;
424
+
425
+ /**
426
+ * The display name of the package
427
+ */
428
+ displayName: string;
429
+
430
+ /**
431
+ * The product ID to associate the plan with
432
+ */
433
+ productId: string;
434
+
435
+ /**
436
+ * The unique identifier for the entity in the billing provider
437
+ */
438
+ billingId?: string | null;
439
+
440
+ /**
441
+ * Default trial configuration for the plan
442
+ */
443
+ defaultTrialConfig?: PlanCreateParams.DefaultTrialConfig | null;
444
+
445
+ /**
446
+ * The description of the package
447
+ */
448
+ description?: string | null;
449
+
450
+ /**
451
+ * Metadata associated with the entity
452
+ */
453
+ metadata?: { [key: string]: string };
454
+
455
+ /**
456
+ * The ID of the parent plan, if applicable
457
+ */
458
+ parentPlanId?: string | null;
459
+
460
+ /**
461
+ * The pricing type of the package
462
+ */
463
+ pricingType?: 'FREE' | 'PAID' | 'CUSTOM' | null;
464
+
465
+ /**
466
+ * The status of the package
467
+ */
468
+ status?: 'DRAFT' | 'PUBLISHED' | 'ARCHIVED';
469
+ }
470
+
471
+ export namespace PlanCreateParams {
472
+ /**
473
+ * Default trial configuration for the plan
474
+ */
475
+ export interface DefaultTrialConfig {
476
+ /**
477
+ * The duration of the trial in the specified units
478
+ */
479
+ duration: number;
480
+
481
+ /**
482
+ * The time unit for the trial duration (DAY or MONTH)
483
+ */
484
+ units: 'DAY' | 'MONTH';
485
+
486
+ /**
487
+ * Budget configuration for the trial
488
+ */
489
+ budget?: DefaultTrialConfig.Budget | null;
490
+
491
+ /**
492
+ * Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
493
+ */
494
+ trialEndBehavior?: 'CONVERT_TO_PAID' | 'CANCEL_SUBSCRIPTION' | null;
495
+ }
496
+
497
+ export namespace DefaultTrialConfig {
498
+ /**
499
+ * Budget configuration for the trial
500
+ */
501
+ export interface Budget {
502
+ /**
503
+ * Whether the budget limit is a soft limit (allows overage) or hard limit
504
+ */
505
+ hasSoftLimit: boolean;
506
+
507
+ /**
508
+ * The budget limit amount
509
+ */
510
+ limit: number;
511
+ }
512
+ }
513
+ }
514
+
515
+ export interface PlanUpdateParams {
516
+ /**
517
+ * The unique identifier for the entity in the billing provider
518
+ */
519
+ billingId?: string | null;
520
+
521
+ compatibleAddonIds?: Array<string> | null;
522
+
523
+ /**
524
+ * Default trial configuration for the plan
525
+ */
526
+ defaultTrialConfig?: PlanUpdateParams.DefaultTrialConfig | null;
527
+
528
+ /**
529
+ * The description of the package
530
+ */
531
+ description?: string | null;
532
+
533
+ /**
534
+ * The display name of the package
535
+ */
536
+ displayName?: string;
537
+
538
+ /**
539
+ * Metadata associated with the entity
540
+ */
541
+ metadata?: { [key: string]: string };
542
+
543
+ /**
544
+ * The ID of the parent plan, if applicable
545
+ */
546
+ parentPlanId?: string | null;
547
+ }
548
+
549
+ export namespace PlanUpdateParams {
550
+ /**
551
+ * Default trial configuration for the plan
552
+ */
553
+ export interface DefaultTrialConfig {
554
+ /**
555
+ * The duration of the trial in the specified units
556
+ */
557
+ duration: number;
558
+
559
+ /**
560
+ * The time unit for the trial duration (DAY or MONTH)
561
+ */
562
+ units: 'DAY' | 'MONTH';
563
+
564
+ /**
565
+ * Budget configuration for the trial
566
+ */
567
+ budget?: DefaultTrialConfig.Budget | null;
568
+
569
+ /**
570
+ * Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
571
+ */
572
+ trialEndBehavior?: 'CONVERT_TO_PAID' | 'CANCEL_SUBSCRIPTION' | null;
573
+ }
574
+
575
+ export namespace DefaultTrialConfig {
576
+ /**
577
+ * Budget configuration for the trial
578
+ */
579
+ export interface Budget {
580
+ /**
581
+ * Whether the budget limit is a soft limit (allows overage) or hard limit
582
+ */
583
+ hasSoftLimit: boolean;
584
+
585
+ /**
586
+ * The budget limit amount
587
+ */
588
+ limit: number;
589
+ }
590
+ }
591
+ }
592
+
593
+ export interface PlanListParams extends MyCursorIDPageParams {
594
+ /**
595
+ * Filter by creation date using range operators: gt, gte, lt, lte
596
+ */
597
+ createdAt?: PlanListParams.CreatedAt;
598
+
599
+ /**
600
+ * Filter by product ID
601
+ */
602
+ productId?: string;
603
+
604
+ /**
605
+ * Filter by status. Supports comma-separated values for multiple statuses
606
+ */
607
+ status?: string;
608
+ }
609
+
610
+ export namespace PlanListParams {
611
+ /**
612
+ * Filter by creation date using range operators: gt, gte, lt, lte
613
+ */
614
+ export interface CreatedAt {
615
+ /**
616
+ * Greater than the specified createdAt value
617
+ */
618
+ gt?: string;
619
+
620
+ /**
621
+ * Greater than or equal to the specified createdAt value
622
+ */
623
+ gte?: string;
624
+
625
+ /**
626
+ * Less than the specified createdAt value
627
+ */
628
+ lt?: string;
629
+
630
+ /**
631
+ * Less than or equal to the specified createdAt value
632
+ */
633
+ lte?: string;
634
+ }
635
+ }
636
+
637
+ export interface PlanPublishParams {
638
+ /**
639
+ * The migration type of the package
640
+ */
641
+ migrationType: 'NEW_CUSTOMERS' | 'ALL_CUSTOMERS';
642
+ }
643
+
644
+ export interface PlanSetPricingParams {
645
+ /**
646
+ * The pricing type (FREE, PAID, or CUSTOM)
647
+ */
648
+ pricingType: 'FREE' | 'PAID' | 'CUSTOM';
649
+
650
+ /**
651
+ * Deprecated: billing integration ID
652
+ */
653
+ billingId?: string;
654
+
655
+ /**
656
+ * Minimum spend configuration per billing period
657
+ */
658
+ minimumSpend?: Array<PlanSetPricingParams.MinimumSpend> | null;
659
+
660
+ /**
661
+ * When overage charges are billed
662
+ */
663
+ overageBillingPeriod?: 'ON_SUBSCRIPTION_RENEWAL' | 'MONTHLY';
664
+
665
+ /**
666
+ * Array of overage pricing model configurations
667
+ */
668
+ overagePricingModels?: Array<PlanSetPricingParams.OveragePricingModel>;
669
+
670
+ /**
671
+ * Array of pricing model configurations
672
+ */
673
+ pricingModels?: Array<PlanSetPricingParams.PricingModel>;
674
+ }
675
+
676
+ export namespace PlanSetPricingParams {
677
+ /**
678
+ * Minimum spend configuration for a billing period.
679
+ */
680
+ export interface MinimumSpend {
681
+ /**
682
+ * The billing period
683
+ */
684
+ billingPeriod: 'MONTHLY' | 'ANNUALLY';
685
+
686
+ /**
687
+ * The minimum spend amount
688
+ */
689
+ minimum: MinimumSpend.Minimum;
690
+ }
691
+
692
+ export namespace MinimumSpend {
693
+ /**
694
+ * The minimum spend amount
695
+ */
696
+ export interface Minimum {
697
+ /**
698
+ * The price amount
699
+ */
700
+ amount: number;
701
+
702
+ /**
703
+ * The price currency
704
+ */
705
+ currency?:
706
+ | 'usd'
707
+ | 'aed'
708
+ | 'all'
709
+ | 'amd'
710
+ | 'ang'
711
+ | 'aud'
712
+ | 'awg'
713
+ | 'azn'
714
+ | 'bam'
715
+ | 'bbd'
716
+ | 'bdt'
717
+ | 'bgn'
718
+ | 'bif'
719
+ | 'bmd'
720
+ | 'bnd'
721
+ | 'bsd'
722
+ | 'bwp'
723
+ | 'byn'
724
+ | 'bzd'
725
+ | 'brl'
726
+ | 'cad'
727
+ | 'cdf'
728
+ | 'chf'
729
+ | 'cny'
730
+ | 'czk'
731
+ | 'dkk'
732
+ | 'dop'
733
+ | 'dzd'
734
+ | 'egp'
735
+ | 'etb'
736
+ | 'eur'
737
+ | 'fjd'
738
+ | 'gbp'
739
+ | 'gel'
740
+ | 'gip'
741
+ | 'gmd'
742
+ | 'gyd'
743
+ | 'hkd'
744
+ | 'hrk'
745
+ | 'htg'
746
+ | 'idr'
747
+ | 'ils'
748
+ | 'inr'
749
+ | 'isk'
750
+ | 'jmd'
751
+ | 'jpy'
752
+ | 'kes'
753
+ | 'kgs'
754
+ | 'khr'
755
+ | 'kmf'
756
+ | 'krw'
757
+ | 'kyd'
758
+ | 'kzt'
759
+ | 'lbp'
760
+ | 'lkr'
761
+ | 'lrd'
762
+ | 'lsl'
763
+ | 'mad'
764
+ | 'mdl'
765
+ | 'mga'
766
+ | 'mkd'
767
+ | 'mmk'
768
+ | 'mnt'
769
+ | 'mop'
770
+ | 'mro'
771
+ | 'mvr'
772
+ | 'mwk'
773
+ | 'mxn'
774
+ | 'myr'
775
+ | 'mzn'
776
+ | 'nad'
777
+ | 'ngn'
778
+ | 'nok'
779
+ | 'npr'
780
+ | 'nzd'
781
+ | 'pgk'
782
+ | 'php'
783
+ | 'pkr'
784
+ | 'pln'
785
+ | 'qar'
786
+ | 'ron'
787
+ | 'rsd'
788
+ | 'rub'
789
+ | 'rwf'
790
+ | 'sar'
791
+ | 'sbd'
792
+ | 'scr'
793
+ | 'sek'
794
+ | 'sgd'
795
+ | 'sle'
796
+ | 'sll'
797
+ | 'sos'
798
+ | 'szl'
799
+ | 'thb'
800
+ | 'tjs'
801
+ | 'top'
802
+ | 'try'
803
+ | 'ttd'
804
+ | 'tzs'
805
+ | 'uah'
806
+ | 'uzs'
807
+ | 'vnd'
808
+ | 'vuv'
809
+ | 'wst'
810
+ | 'xaf'
811
+ | 'xcd'
812
+ | 'yer'
813
+ | 'zar'
814
+ | 'zmw'
815
+ | 'clp'
816
+ | 'djf'
817
+ | 'gnf'
818
+ | 'ugx'
819
+ | 'pyg'
820
+ | 'xof'
821
+ | 'xpf';
822
+ }
823
+ }
824
+
825
+ /**
826
+ * Overage pricing model configuration.
827
+ */
828
+ export interface OveragePricingModel {
829
+ /**
830
+ * The billing model for overages
831
+ */
832
+ billingModel: 'FLAT_FEE' | 'MINIMUM_SPEND' | 'PER_UNIT' | 'USAGE_BASED' | 'CREDIT_BASED';
833
+
834
+ /**
835
+ * Price periods for overage pricing
836
+ */
837
+ pricePeriods: Array<OveragePricingModel.PricePeriod>;
838
+
839
+ /**
840
+ * The billing cadence for overages
841
+ */
842
+ billingCadence?: 'RECURRING' | 'ONE_OFF';
843
+
844
+ /**
845
+ * Entitlement configuration for the overage feature
846
+ */
847
+ entitlement?: OveragePricingModel.Entitlement;
848
+
849
+ /**
850
+ * The feature ID for overage pricing
851
+ */
852
+ featureId?: string;
853
+
854
+ /**
855
+ * Custom currency ID for overage top-up
856
+ */
857
+ topUpCustomCurrencyId?: string;
858
+ }
859
+
860
+ export namespace OveragePricingModel {
861
+ /**
862
+ * Price configuration for a specific billing period.
863
+ */
864
+ export interface PricePeriod {
865
+ /**
866
+ * The billing period (MONTHLY or ANNUALLY)
867
+ */
868
+ billingPeriod: 'MONTHLY' | 'ANNUALLY';
869
+
870
+ /**
871
+ * ISO country code for localized pricing
872
+ */
873
+ billingCountryCode?: string;
874
+
875
+ /**
876
+ * Block size for usage-based pricing
877
+ */
878
+ blockSize?: number;
879
+
880
+ /**
881
+ * When credits are granted
882
+ */
883
+ creditGrantCadence?: 'BEGINNING_OF_BILLING_PERIOD' | 'MONTHLY';
884
+
885
+ /**
886
+ * Credit rate configuration for credit-based pricing
887
+ */
888
+ creditRate?: PricePeriod.CreditRate;
889
+
890
+ /**
891
+ * The price amount and currency
892
+ */
893
+ price?: PricePeriod.Price;
894
+
895
+ /**
896
+ * Tiered pricing configuration
897
+ */
898
+ tiers?: Array<PricePeriod.Tier>;
899
+ }
900
+
901
+ export namespace PricePeriod {
902
+ /**
903
+ * Credit rate configuration for credit-based pricing
904
+ */
905
+ export interface CreditRate {
906
+ /**
907
+ * The credit rate amount
908
+ */
909
+ amount: number;
910
+
911
+ /**
912
+ * The custom currency ID
913
+ */
914
+ currencyId: string;
915
+
916
+ /**
917
+ * Optional cost formula expression
918
+ */
919
+ costFormula?: string;
920
+ }
921
+
922
+ /**
923
+ * The price amount and currency
924
+ */
925
+ export interface Price {
926
+ /**
927
+ * The price amount
928
+ */
929
+ amount: number;
930
+
931
+ /**
932
+ * The price currency
933
+ */
934
+ currency?:
935
+ | 'usd'
936
+ | 'aed'
937
+ | 'all'
938
+ | 'amd'
939
+ | 'ang'
940
+ | 'aud'
941
+ | 'awg'
942
+ | 'azn'
943
+ | 'bam'
944
+ | 'bbd'
945
+ | 'bdt'
946
+ | 'bgn'
947
+ | 'bif'
948
+ | 'bmd'
949
+ | 'bnd'
950
+ | 'bsd'
951
+ | 'bwp'
952
+ | 'byn'
953
+ | 'bzd'
954
+ | 'brl'
955
+ | 'cad'
956
+ | 'cdf'
957
+ | 'chf'
958
+ | 'cny'
959
+ | 'czk'
960
+ | 'dkk'
961
+ | 'dop'
962
+ | 'dzd'
963
+ | 'egp'
964
+ | 'etb'
965
+ | 'eur'
966
+ | 'fjd'
967
+ | 'gbp'
968
+ | 'gel'
969
+ | 'gip'
970
+ | 'gmd'
971
+ | 'gyd'
972
+ | 'hkd'
973
+ | 'hrk'
974
+ | 'htg'
975
+ | 'idr'
976
+ | 'ils'
977
+ | 'inr'
978
+ | 'isk'
979
+ | 'jmd'
980
+ | 'jpy'
981
+ | 'kes'
982
+ | 'kgs'
983
+ | 'khr'
984
+ | 'kmf'
985
+ | 'krw'
986
+ | 'kyd'
987
+ | 'kzt'
988
+ | 'lbp'
989
+ | 'lkr'
990
+ | 'lrd'
991
+ | 'lsl'
992
+ | 'mad'
993
+ | 'mdl'
994
+ | 'mga'
995
+ | 'mkd'
996
+ | 'mmk'
997
+ | 'mnt'
998
+ | 'mop'
999
+ | 'mro'
1000
+ | 'mvr'
1001
+ | 'mwk'
1002
+ | 'mxn'
1003
+ | 'myr'
1004
+ | 'mzn'
1005
+ | 'nad'
1006
+ | 'ngn'
1007
+ | 'nok'
1008
+ | 'npr'
1009
+ | 'nzd'
1010
+ | 'pgk'
1011
+ | 'php'
1012
+ | 'pkr'
1013
+ | 'pln'
1014
+ | 'qar'
1015
+ | 'ron'
1016
+ | 'rsd'
1017
+ | 'rub'
1018
+ | 'rwf'
1019
+ | 'sar'
1020
+ | 'sbd'
1021
+ | 'scr'
1022
+ | 'sek'
1023
+ | 'sgd'
1024
+ | 'sle'
1025
+ | 'sll'
1026
+ | 'sos'
1027
+ | 'szl'
1028
+ | 'thb'
1029
+ | 'tjs'
1030
+ | 'top'
1031
+ | 'try'
1032
+ | 'ttd'
1033
+ | 'tzs'
1034
+ | 'uah'
1035
+ | 'uzs'
1036
+ | 'vnd'
1037
+ | 'vuv'
1038
+ | 'wst'
1039
+ | 'xaf'
1040
+ | 'xcd'
1041
+ | 'yer'
1042
+ | 'zar'
1043
+ | 'zmw'
1044
+ | 'clp'
1045
+ | 'djf'
1046
+ | 'gnf'
1047
+ | 'ugx'
1048
+ | 'pyg'
1049
+ | 'xof'
1050
+ | 'xpf';
1051
+ }
1052
+
1053
+ /**
1054
+ * A tier in tiered pricing.
1055
+ */
1056
+ export interface Tier {
1057
+ /**
1058
+ * Flat price for this tier
1059
+ */
1060
+ flatPrice?: Tier.FlatPrice;
1061
+
1062
+ /**
1063
+ * Per-unit price in this tier
1064
+ */
1065
+ unitPrice?: Tier.UnitPrice;
1066
+
1067
+ /**
1068
+ * Upper bound of this tier (null for unlimited)
1069
+ */
1070
+ upTo?: number;
1071
+ }
1072
+
1073
+ export namespace Tier {
1074
+ /**
1075
+ * Flat price for this tier
1076
+ */
1077
+ export interface FlatPrice {
1078
+ /**
1079
+ * The price amount
1080
+ */
1081
+ amount: number;
1082
+
1083
+ /**
1084
+ * The price currency
1085
+ */
1086
+ currency?:
1087
+ | 'usd'
1088
+ | 'aed'
1089
+ | 'all'
1090
+ | 'amd'
1091
+ | 'ang'
1092
+ | 'aud'
1093
+ | 'awg'
1094
+ | 'azn'
1095
+ | 'bam'
1096
+ | 'bbd'
1097
+ | 'bdt'
1098
+ | 'bgn'
1099
+ | 'bif'
1100
+ | 'bmd'
1101
+ | 'bnd'
1102
+ | 'bsd'
1103
+ | 'bwp'
1104
+ | 'byn'
1105
+ | 'bzd'
1106
+ | 'brl'
1107
+ | 'cad'
1108
+ | 'cdf'
1109
+ | 'chf'
1110
+ | 'cny'
1111
+ | 'czk'
1112
+ | 'dkk'
1113
+ | 'dop'
1114
+ | 'dzd'
1115
+ | 'egp'
1116
+ | 'etb'
1117
+ | 'eur'
1118
+ | 'fjd'
1119
+ | 'gbp'
1120
+ | 'gel'
1121
+ | 'gip'
1122
+ | 'gmd'
1123
+ | 'gyd'
1124
+ | 'hkd'
1125
+ | 'hrk'
1126
+ | 'htg'
1127
+ | 'idr'
1128
+ | 'ils'
1129
+ | 'inr'
1130
+ | 'isk'
1131
+ | 'jmd'
1132
+ | 'jpy'
1133
+ | 'kes'
1134
+ | 'kgs'
1135
+ | 'khr'
1136
+ | 'kmf'
1137
+ | 'krw'
1138
+ | 'kyd'
1139
+ | 'kzt'
1140
+ | 'lbp'
1141
+ | 'lkr'
1142
+ | 'lrd'
1143
+ | 'lsl'
1144
+ | 'mad'
1145
+ | 'mdl'
1146
+ | 'mga'
1147
+ | 'mkd'
1148
+ | 'mmk'
1149
+ | 'mnt'
1150
+ | 'mop'
1151
+ | 'mro'
1152
+ | 'mvr'
1153
+ | 'mwk'
1154
+ | 'mxn'
1155
+ | 'myr'
1156
+ | 'mzn'
1157
+ | 'nad'
1158
+ | 'ngn'
1159
+ | 'nok'
1160
+ | 'npr'
1161
+ | 'nzd'
1162
+ | 'pgk'
1163
+ | 'php'
1164
+ | 'pkr'
1165
+ | 'pln'
1166
+ | 'qar'
1167
+ | 'ron'
1168
+ | 'rsd'
1169
+ | 'rub'
1170
+ | 'rwf'
1171
+ | 'sar'
1172
+ | 'sbd'
1173
+ | 'scr'
1174
+ | 'sek'
1175
+ | 'sgd'
1176
+ | 'sle'
1177
+ | 'sll'
1178
+ | 'sos'
1179
+ | 'szl'
1180
+ | 'thb'
1181
+ | 'tjs'
1182
+ | 'top'
1183
+ | 'try'
1184
+ | 'ttd'
1185
+ | 'tzs'
1186
+ | 'uah'
1187
+ | 'uzs'
1188
+ | 'vnd'
1189
+ | 'vuv'
1190
+ | 'wst'
1191
+ | 'xaf'
1192
+ | 'xcd'
1193
+ | 'yer'
1194
+ | 'zar'
1195
+ | 'zmw'
1196
+ | 'clp'
1197
+ | 'djf'
1198
+ | 'gnf'
1199
+ | 'ugx'
1200
+ | 'pyg'
1201
+ | 'xof'
1202
+ | 'xpf';
1203
+ }
1204
+
1205
+ /**
1206
+ * Per-unit price in this tier
1207
+ */
1208
+ export interface UnitPrice {
1209
+ /**
1210
+ * The price amount
1211
+ */
1212
+ amount: number;
1213
+
1214
+ /**
1215
+ * The price currency
1216
+ */
1217
+ currency?:
1218
+ | 'usd'
1219
+ | 'aed'
1220
+ | 'all'
1221
+ | 'amd'
1222
+ | 'ang'
1223
+ | 'aud'
1224
+ | 'awg'
1225
+ | 'azn'
1226
+ | 'bam'
1227
+ | 'bbd'
1228
+ | 'bdt'
1229
+ | 'bgn'
1230
+ | 'bif'
1231
+ | 'bmd'
1232
+ | 'bnd'
1233
+ | 'bsd'
1234
+ | 'bwp'
1235
+ | 'byn'
1236
+ | 'bzd'
1237
+ | 'brl'
1238
+ | 'cad'
1239
+ | 'cdf'
1240
+ | 'chf'
1241
+ | 'cny'
1242
+ | 'czk'
1243
+ | 'dkk'
1244
+ | 'dop'
1245
+ | 'dzd'
1246
+ | 'egp'
1247
+ | 'etb'
1248
+ | 'eur'
1249
+ | 'fjd'
1250
+ | 'gbp'
1251
+ | 'gel'
1252
+ | 'gip'
1253
+ | 'gmd'
1254
+ | 'gyd'
1255
+ | 'hkd'
1256
+ | 'hrk'
1257
+ | 'htg'
1258
+ | 'idr'
1259
+ | 'ils'
1260
+ | 'inr'
1261
+ | 'isk'
1262
+ | 'jmd'
1263
+ | 'jpy'
1264
+ | 'kes'
1265
+ | 'kgs'
1266
+ | 'khr'
1267
+ | 'kmf'
1268
+ | 'krw'
1269
+ | 'kyd'
1270
+ | 'kzt'
1271
+ | 'lbp'
1272
+ | 'lkr'
1273
+ | 'lrd'
1274
+ | 'lsl'
1275
+ | 'mad'
1276
+ | 'mdl'
1277
+ | 'mga'
1278
+ | 'mkd'
1279
+ | 'mmk'
1280
+ | 'mnt'
1281
+ | 'mop'
1282
+ | 'mro'
1283
+ | 'mvr'
1284
+ | 'mwk'
1285
+ | 'mxn'
1286
+ | 'myr'
1287
+ | 'mzn'
1288
+ | 'nad'
1289
+ | 'ngn'
1290
+ | 'nok'
1291
+ | 'npr'
1292
+ | 'nzd'
1293
+ | 'pgk'
1294
+ | 'php'
1295
+ | 'pkr'
1296
+ | 'pln'
1297
+ | 'qar'
1298
+ | 'ron'
1299
+ | 'rsd'
1300
+ | 'rub'
1301
+ | 'rwf'
1302
+ | 'sar'
1303
+ | 'sbd'
1304
+ | 'scr'
1305
+ | 'sek'
1306
+ | 'sgd'
1307
+ | 'sle'
1308
+ | 'sll'
1309
+ | 'sos'
1310
+ | 'szl'
1311
+ | 'thb'
1312
+ | 'tjs'
1313
+ | 'top'
1314
+ | 'try'
1315
+ | 'ttd'
1316
+ | 'tzs'
1317
+ | 'uah'
1318
+ | 'uzs'
1319
+ | 'vnd'
1320
+ | 'vuv'
1321
+ | 'wst'
1322
+ | 'xaf'
1323
+ | 'xcd'
1324
+ | 'yer'
1325
+ | 'zar'
1326
+ | 'zmw'
1327
+ | 'clp'
1328
+ | 'djf'
1329
+ | 'gnf'
1330
+ | 'ugx'
1331
+ | 'pyg'
1332
+ | 'xof'
1333
+ | 'xpf';
1334
+ }
1335
+ }
1336
+ }
1337
+
1338
+ /**
1339
+ * Entitlement configuration for the overage feature
1340
+ */
1341
+ export interface Entitlement {
1342
+ /**
1343
+ * The feature ID for the entitlement
1344
+ */
1345
+ featureId: string;
1346
+
1347
+ /**
1348
+ * Whether the limit is soft (allows overage)
1349
+ */
1350
+ hasSoftLimit?: boolean;
1351
+
1352
+ /**
1353
+ * Whether usage is unlimited
1354
+ */
1355
+ hasUnlimitedUsage?: boolean;
1356
+
1357
+ /**
1358
+ * Monthly reset configuration
1359
+ */
1360
+ monthlyResetPeriodConfiguration?: Entitlement.MonthlyResetPeriodConfiguration;
1361
+
1362
+ /**
1363
+ * The usage reset period
1364
+ */
1365
+ resetPeriod?: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR';
1366
+
1367
+ /**
1368
+ * The usage limit before overage kicks in
1369
+ */
1370
+ usageLimit?: number;
1371
+
1372
+ /**
1373
+ * Weekly reset configuration
1374
+ */
1375
+ weeklyResetPeriodConfiguration?: Entitlement.WeeklyResetPeriodConfiguration;
1376
+
1377
+ /**
1378
+ * Yearly reset configuration
1379
+ */
1380
+ yearlyResetPeriodConfiguration?: Entitlement.YearlyResetPeriodConfiguration;
1381
+ }
1382
+
1383
+ export namespace Entitlement {
1384
+ /**
1385
+ * Monthly reset configuration
1386
+ */
1387
+ export interface MonthlyResetPeriodConfiguration {
1388
+ /**
1389
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
1390
+ */
1391
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
1392
+ }
1393
+
1394
+ /**
1395
+ * Weekly reset configuration
1396
+ */
1397
+ export interface WeeklyResetPeriodConfiguration {
1398
+ /**
1399
+ * Reset anchor (SubscriptionStart or specific day)
1400
+ */
1401
+ accordingTo:
1402
+ | 'SubscriptionStart'
1403
+ | 'EverySunday'
1404
+ | 'EveryMonday'
1405
+ | 'EveryTuesday'
1406
+ | 'EveryWednesday'
1407
+ | 'EveryThursday'
1408
+ | 'EveryFriday'
1409
+ | 'EverySaturday';
1410
+ }
1411
+
1412
+ /**
1413
+ * Yearly reset configuration
1414
+ */
1415
+ export interface YearlyResetPeriodConfiguration {
1416
+ /**
1417
+ * Reset anchor (SubscriptionStart)
1418
+ */
1419
+ accordingTo: 'SubscriptionStart';
1420
+ }
1421
+ }
1422
+ }
1423
+
1424
+ /**
1425
+ * A pricing model configuration with billing details and price periods.
1426
+ */
1427
+ export interface PricingModel {
1428
+ /**
1429
+ * The billing model (FLAT_FEE, PER_UNIT, USAGE_BASED, CREDIT_BASED)
1430
+ */
1431
+ billingModel: 'FLAT_FEE' | 'MINIMUM_SPEND' | 'PER_UNIT' | 'USAGE_BASED' | 'CREDIT_BASED';
1432
+
1433
+ /**
1434
+ * Array of price period configurations (at least one required)
1435
+ */
1436
+ pricePeriods: Array<PricingModel.PricePeriod>;
1437
+
1438
+ /**
1439
+ * The billing cadence (RECURRING or ONE_OFF)
1440
+ */
1441
+ billingCadence?: 'RECURRING' | 'ONE_OFF';
1442
+
1443
+ /**
1444
+ * The feature ID this pricing model is associated with
1445
+ */
1446
+ featureId?: string;
1447
+
1448
+ /**
1449
+ * Maximum number of units (max 999999)
1450
+ */
1451
+ maxUnitQuantity?: number;
1452
+
1453
+ /**
1454
+ * Minimum number of units
1455
+ */
1456
+ minUnitQuantity?: number;
1457
+
1458
+ /**
1459
+ * Monthly reset period configuration
1460
+ */
1461
+ monthlyResetPeriodConfiguration?: PricingModel.MonthlyResetPeriodConfiguration;
1462
+
1463
+ /**
1464
+ * The usage reset period
1465
+ */
1466
+ resetPeriod?: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR';
1467
+
1468
+ /**
1469
+ * The tiered pricing mode (VOLUME or GRADUATED)
1470
+ */
1471
+ tiersMode?: 'VOLUME' | 'GRADUATED';
1472
+
1473
+ /**
1474
+ * The custom currency ID for top-up pricing
1475
+ */
1476
+ topUpCustomCurrencyId?: string;
1477
+
1478
+ /**
1479
+ * Weekly reset period configuration
1480
+ */
1481
+ weeklyResetPeriodConfiguration?: PricingModel.WeeklyResetPeriodConfiguration;
1482
+
1483
+ /**
1484
+ * Yearly reset period configuration
1485
+ */
1486
+ yearlyResetPeriodConfiguration?: PricingModel.YearlyResetPeriodConfiguration;
1487
+ }
1488
+
1489
+ export namespace PricingModel {
1490
+ /**
1491
+ * Price configuration for a specific billing period.
1492
+ */
1493
+ export interface PricePeriod {
1494
+ /**
1495
+ * The billing period (MONTHLY or ANNUALLY)
1496
+ */
1497
+ billingPeriod: 'MONTHLY' | 'ANNUALLY';
1498
+
1499
+ /**
1500
+ * ISO country code for localized pricing
1501
+ */
1502
+ billingCountryCode?: string;
1503
+
1504
+ /**
1505
+ * Block size for usage-based pricing
1506
+ */
1507
+ blockSize?: number;
1508
+
1509
+ /**
1510
+ * When credits are granted
1511
+ */
1512
+ creditGrantCadence?: 'BEGINNING_OF_BILLING_PERIOD' | 'MONTHLY';
1513
+
1514
+ /**
1515
+ * Credit rate configuration for credit-based pricing
1516
+ */
1517
+ creditRate?: PricePeriod.CreditRate;
1518
+
1519
+ /**
1520
+ * The price amount and currency
1521
+ */
1522
+ price?: PricePeriod.Price;
1523
+
1524
+ /**
1525
+ * Tiered pricing configuration
1526
+ */
1527
+ tiers?: Array<PricePeriod.Tier>;
1528
+ }
1529
+
1530
+ export namespace PricePeriod {
1531
+ /**
1532
+ * Credit rate configuration for credit-based pricing
1533
+ */
1534
+ export interface CreditRate {
1535
+ /**
1536
+ * The credit rate amount
1537
+ */
1538
+ amount: number;
1539
+
1540
+ /**
1541
+ * The custom currency ID
1542
+ */
1543
+ currencyId: string;
1544
+
1545
+ /**
1546
+ * Optional cost formula expression
1547
+ */
1548
+ costFormula?: string;
1549
+ }
1550
+
1551
+ /**
1552
+ * The price amount and currency
1553
+ */
1554
+ export interface Price {
1555
+ /**
1556
+ * The price amount
1557
+ */
1558
+ amount: number;
1559
+
1560
+ /**
1561
+ * The price currency
1562
+ */
1563
+ currency?:
1564
+ | 'usd'
1565
+ | 'aed'
1566
+ | 'all'
1567
+ | 'amd'
1568
+ | 'ang'
1569
+ | 'aud'
1570
+ | 'awg'
1571
+ | 'azn'
1572
+ | 'bam'
1573
+ | 'bbd'
1574
+ | 'bdt'
1575
+ | 'bgn'
1576
+ | 'bif'
1577
+ | 'bmd'
1578
+ | 'bnd'
1579
+ | 'bsd'
1580
+ | 'bwp'
1581
+ | 'byn'
1582
+ | 'bzd'
1583
+ | 'brl'
1584
+ | 'cad'
1585
+ | 'cdf'
1586
+ | 'chf'
1587
+ | 'cny'
1588
+ | 'czk'
1589
+ | 'dkk'
1590
+ | 'dop'
1591
+ | 'dzd'
1592
+ | 'egp'
1593
+ | 'etb'
1594
+ | 'eur'
1595
+ | 'fjd'
1596
+ | 'gbp'
1597
+ | 'gel'
1598
+ | 'gip'
1599
+ | 'gmd'
1600
+ | 'gyd'
1601
+ | 'hkd'
1602
+ | 'hrk'
1603
+ | 'htg'
1604
+ | 'idr'
1605
+ | 'ils'
1606
+ | 'inr'
1607
+ | 'isk'
1608
+ | 'jmd'
1609
+ | 'jpy'
1610
+ | 'kes'
1611
+ | 'kgs'
1612
+ | 'khr'
1613
+ | 'kmf'
1614
+ | 'krw'
1615
+ | 'kyd'
1616
+ | 'kzt'
1617
+ | 'lbp'
1618
+ | 'lkr'
1619
+ | 'lrd'
1620
+ | 'lsl'
1621
+ | 'mad'
1622
+ | 'mdl'
1623
+ | 'mga'
1624
+ | 'mkd'
1625
+ | 'mmk'
1626
+ | 'mnt'
1627
+ | 'mop'
1628
+ | 'mro'
1629
+ | 'mvr'
1630
+ | 'mwk'
1631
+ | 'mxn'
1632
+ | 'myr'
1633
+ | 'mzn'
1634
+ | 'nad'
1635
+ | 'ngn'
1636
+ | 'nok'
1637
+ | 'npr'
1638
+ | 'nzd'
1639
+ | 'pgk'
1640
+ | 'php'
1641
+ | 'pkr'
1642
+ | 'pln'
1643
+ | 'qar'
1644
+ | 'ron'
1645
+ | 'rsd'
1646
+ | 'rub'
1647
+ | 'rwf'
1648
+ | 'sar'
1649
+ | 'sbd'
1650
+ | 'scr'
1651
+ | 'sek'
1652
+ | 'sgd'
1653
+ | 'sle'
1654
+ | 'sll'
1655
+ | 'sos'
1656
+ | 'szl'
1657
+ | 'thb'
1658
+ | 'tjs'
1659
+ | 'top'
1660
+ | 'try'
1661
+ | 'ttd'
1662
+ | 'tzs'
1663
+ | 'uah'
1664
+ | 'uzs'
1665
+ | 'vnd'
1666
+ | 'vuv'
1667
+ | 'wst'
1668
+ | 'xaf'
1669
+ | 'xcd'
1670
+ | 'yer'
1671
+ | 'zar'
1672
+ | 'zmw'
1673
+ | 'clp'
1674
+ | 'djf'
1675
+ | 'gnf'
1676
+ | 'ugx'
1677
+ | 'pyg'
1678
+ | 'xof'
1679
+ | 'xpf';
1680
+ }
1681
+
1682
+ /**
1683
+ * A tier in tiered pricing.
1684
+ */
1685
+ export interface Tier {
1686
+ /**
1687
+ * Flat price for this tier
1688
+ */
1689
+ flatPrice?: Tier.FlatPrice;
1690
+
1691
+ /**
1692
+ * Per-unit price in this tier
1693
+ */
1694
+ unitPrice?: Tier.UnitPrice;
1695
+
1696
+ /**
1697
+ * Upper bound of this tier (null for unlimited)
1698
+ */
1699
+ upTo?: number;
1700
+ }
1701
+
1702
+ export namespace Tier {
1703
+ /**
1704
+ * Flat price for this tier
1705
+ */
1706
+ export interface FlatPrice {
1707
+ /**
1708
+ * The price amount
1709
+ */
1710
+ amount: number;
1711
+
1712
+ /**
1713
+ * The price currency
1714
+ */
1715
+ currency?:
1716
+ | 'usd'
1717
+ | 'aed'
1718
+ | 'all'
1719
+ | 'amd'
1720
+ | 'ang'
1721
+ | 'aud'
1722
+ | 'awg'
1723
+ | 'azn'
1724
+ | 'bam'
1725
+ | 'bbd'
1726
+ | 'bdt'
1727
+ | 'bgn'
1728
+ | 'bif'
1729
+ | 'bmd'
1730
+ | 'bnd'
1731
+ | 'bsd'
1732
+ | 'bwp'
1733
+ | 'byn'
1734
+ | 'bzd'
1735
+ | 'brl'
1736
+ | 'cad'
1737
+ | 'cdf'
1738
+ | 'chf'
1739
+ | 'cny'
1740
+ | 'czk'
1741
+ | 'dkk'
1742
+ | 'dop'
1743
+ | 'dzd'
1744
+ | 'egp'
1745
+ | 'etb'
1746
+ | 'eur'
1747
+ | 'fjd'
1748
+ | 'gbp'
1749
+ | 'gel'
1750
+ | 'gip'
1751
+ | 'gmd'
1752
+ | 'gyd'
1753
+ | 'hkd'
1754
+ | 'hrk'
1755
+ | 'htg'
1756
+ | 'idr'
1757
+ | 'ils'
1758
+ | 'inr'
1759
+ | 'isk'
1760
+ | 'jmd'
1761
+ | 'jpy'
1762
+ | 'kes'
1763
+ | 'kgs'
1764
+ | 'khr'
1765
+ | 'kmf'
1766
+ | 'krw'
1767
+ | 'kyd'
1768
+ | 'kzt'
1769
+ | 'lbp'
1770
+ | 'lkr'
1771
+ | 'lrd'
1772
+ | 'lsl'
1773
+ | 'mad'
1774
+ | 'mdl'
1775
+ | 'mga'
1776
+ | 'mkd'
1777
+ | 'mmk'
1778
+ | 'mnt'
1779
+ | 'mop'
1780
+ | 'mro'
1781
+ | 'mvr'
1782
+ | 'mwk'
1783
+ | 'mxn'
1784
+ | 'myr'
1785
+ | 'mzn'
1786
+ | 'nad'
1787
+ | 'ngn'
1788
+ | 'nok'
1789
+ | 'npr'
1790
+ | 'nzd'
1791
+ | 'pgk'
1792
+ | 'php'
1793
+ | 'pkr'
1794
+ | 'pln'
1795
+ | 'qar'
1796
+ | 'ron'
1797
+ | 'rsd'
1798
+ | 'rub'
1799
+ | 'rwf'
1800
+ | 'sar'
1801
+ | 'sbd'
1802
+ | 'scr'
1803
+ | 'sek'
1804
+ | 'sgd'
1805
+ | 'sle'
1806
+ | 'sll'
1807
+ | 'sos'
1808
+ | 'szl'
1809
+ | 'thb'
1810
+ | 'tjs'
1811
+ | 'top'
1812
+ | 'try'
1813
+ | 'ttd'
1814
+ | 'tzs'
1815
+ | 'uah'
1816
+ | 'uzs'
1817
+ | 'vnd'
1818
+ | 'vuv'
1819
+ | 'wst'
1820
+ | 'xaf'
1821
+ | 'xcd'
1822
+ | 'yer'
1823
+ | 'zar'
1824
+ | 'zmw'
1825
+ | 'clp'
1826
+ | 'djf'
1827
+ | 'gnf'
1828
+ | 'ugx'
1829
+ | 'pyg'
1830
+ | 'xof'
1831
+ | 'xpf';
1832
+ }
1833
+
1834
+ /**
1835
+ * Per-unit price in this tier
1836
+ */
1837
+ export interface UnitPrice {
1838
+ /**
1839
+ * The price amount
1840
+ */
1841
+ amount: number;
1842
+
1843
+ /**
1844
+ * The price currency
1845
+ */
1846
+ currency?:
1847
+ | 'usd'
1848
+ | 'aed'
1849
+ | 'all'
1850
+ | 'amd'
1851
+ | 'ang'
1852
+ | 'aud'
1853
+ | 'awg'
1854
+ | 'azn'
1855
+ | 'bam'
1856
+ | 'bbd'
1857
+ | 'bdt'
1858
+ | 'bgn'
1859
+ | 'bif'
1860
+ | 'bmd'
1861
+ | 'bnd'
1862
+ | 'bsd'
1863
+ | 'bwp'
1864
+ | 'byn'
1865
+ | 'bzd'
1866
+ | 'brl'
1867
+ | 'cad'
1868
+ | 'cdf'
1869
+ | 'chf'
1870
+ | 'cny'
1871
+ | 'czk'
1872
+ | 'dkk'
1873
+ | 'dop'
1874
+ | 'dzd'
1875
+ | 'egp'
1876
+ | 'etb'
1877
+ | 'eur'
1878
+ | 'fjd'
1879
+ | 'gbp'
1880
+ | 'gel'
1881
+ | 'gip'
1882
+ | 'gmd'
1883
+ | 'gyd'
1884
+ | 'hkd'
1885
+ | 'hrk'
1886
+ | 'htg'
1887
+ | 'idr'
1888
+ | 'ils'
1889
+ | 'inr'
1890
+ | 'isk'
1891
+ | 'jmd'
1892
+ | 'jpy'
1893
+ | 'kes'
1894
+ | 'kgs'
1895
+ | 'khr'
1896
+ | 'kmf'
1897
+ | 'krw'
1898
+ | 'kyd'
1899
+ | 'kzt'
1900
+ | 'lbp'
1901
+ | 'lkr'
1902
+ | 'lrd'
1903
+ | 'lsl'
1904
+ | 'mad'
1905
+ | 'mdl'
1906
+ | 'mga'
1907
+ | 'mkd'
1908
+ | 'mmk'
1909
+ | 'mnt'
1910
+ | 'mop'
1911
+ | 'mro'
1912
+ | 'mvr'
1913
+ | 'mwk'
1914
+ | 'mxn'
1915
+ | 'myr'
1916
+ | 'mzn'
1917
+ | 'nad'
1918
+ | 'ngn'
1919
+ | 'nok'
1920
+ | 'npr'
1921
+ | 'nzd'
1922
+ | 'pgk'
1923
+ | 'php'
1924
+ | 'pkr'
1925
+ | 'pln'
1926
+ | 'qar'
1927
+ | 'ron'
1928
+ | 'rsd'
1929
+ | 'rub'
1930
+ | 'rwf'
1931
+ | 'sar'
1932
+ | 'sbd'
1933
+ | 'scr'
1934
+ | 'sek'
1935
+ | 'sgd'
1936
+ | 'sle'
1937
+ | 'sll'
1938
+ | 'sos'
1939
+ | 'szl'
1940
+ | 'thb'
1941
+ | 'tjs'
1942
+ | 'top'
1943
+ | 'try'
1944
+ | 'ttd'
1945
+ | 'tzs'
1946
+ | 'uah'
1947
+ | 'uzs'
1948
+ | 'vnd'
1949
+ | 'vuv'
1950
+ | 'wst'
1951
+ | 'xaf'
1952
+ | 'xcd'
1953
+ | 'yer'
1954
+ | 'zar'
1955
+ | 'zmw'
1956
+ | 'clp'
1957
+ | 'djf'
1958
+ | 'gnf'
1959
+ | 'ugx'
1960
+ | 'pyg'
1961
+ | 'xof'
1962
+ | 'xpf';
1963
+ }
1964
+ }
1965
+ }
1966
+
1967
+ /**
1968
+ * Monthly reset period configuration
1969
+ */
1970
+ export interface MonthlyResetPeriodConfiguration {
1971
+ /**
1972
+ * Reset anchor (SubscriptionStart or StartOfTheMonth)
1973
+ */
1974
+ accordingTo: 'SubscriptionStart' | 'StartOfTheMonth';
1975
+ }
1976
+
1977
+ /**
1978
+ * Weekly reset period configuration
1979
+ */
1980
+ export interface WeeklyResetPeriodConfiguration {
1981
+ /**
1982
+ * Reset anchor (SubscriptionStart or specific day)
1983
+ */
1984
+ accordingTo:
1985
+ | 'SubscriptionStart'
1986
+ | 'EverySunday'
1987
+ | 'EveryMonday'
1988
+ | 'EveryTuesday'
1989
+ | 'EveryWednesday'
1990
+ | 'EveryThursday'
1991
+ | 'EveryFriday'
1992
+ | 'EverySaturday';
1993
+ }
1994
+
1995
+ /**
1996
+ * Yearly reset period configuration
1997
+ */
1998
+ export interface YearlyResetPeriodConfiguration {
1999
+ /**
2000
+ * Reset anchor (SubscriptionStart)
2001
+ */
2002
+ accordingTo: 'SubscriptionStart';
2003
+ }
2004
+ }
2005
+ }
2006
+
2007
+ Plans.Entitlements = Entitlements;
2008
+
2009
+ export declare namespace Plans {
2010
+ export {
2011
+ type Plan as Plan,
2012
+ type PlanListResponse as PlanListResponse,
2013
+ type PlanPublishResponse as PlanPublishResponse,
2014
+ type PlanRemoveDraftResponse as PlanRemoveDraftResponse,
2015
+ type PlanListResponsesMyCursorIDPage as PlanListResponsesMyCursorIDPage,
2016
+ type PlanCreateParams as PlanCreateParams,
2017
+ type PlanUpdateParams as PlanUpdateParams,
2018
+ type PlanListParams as PlanListParams,
2019
+ type PlanPublishParams as PlanPublishParams,
2020
+ type PlanSetPricingParams as PlanSetPricingParams,
2021
+ };
2022
+
2023
+ export {
2024
+ Entitlements as Entitlements,
2025
+ type PlanEntitlement as PlanEntitlement,
2026
+ type EntitlementCreateResponse as EntitlementCreateResponse,
2027
+ type EntitlementListResponse as EntitlementListResponse,
2028
+ type EntitlementCreateParams as EntitlementCreateParams,
2029
+ type EntitlementUpdateParams as EntitlementUpdateParams,
2030
+ type EntitlementDeleteParams as EntitlementDeleteParams,
2031
+ };
2032
+ }