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

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 (308) hide show
  1. package/CHANGELOG.md +148 -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/coupons.d.mts +154 -157
  74. package/resources/v1/coupons.d.mts.map +1 -1
  75. package/resources/v1/coupons.d.ts +154 -157
  76. package/resources/v1/coupons.d.ts.map +1 -1
  77. package/resources/v1/coupons.js +21 -4
  78. package/resources/v1/coupons.js.map +1 -1
  79. package/resources/v1/coupons.mjs +21 -4
  80. package/resources/v1/coupons.mjs.map +1 -1
  81. package/resources/v1/customers/customers.d.mts +247 -118
  82. package/resources/v1/customers/customers.d.mts.map +1 -1
  83. package/resources/v1/customers/customers.d.ts +247 -118
  84. package/resources/v1/customers/customers.d.ts.map +1 -1
  85. package/resources/v1/customers/customers.js +37 -16
  86. package/resources/v1/customers/customers.js.map +1 -1
  87. package/resources/v1/customers/customers.mjs +37 -16
  88. package/resources/v1/customers/customers.mjs.map +1 -1
  89. package/resources/v1/customers/index.d.mts +2 -2
  90. package/resources/v1/customers/index.d.mts.map +1 -1
  91. package/resources/v1/customers/index.d.ts +2 -2
  92. package/resources/v1/customers/index.d.ts.map +1 -1
  93. package/resources/v1/customers/index.js +3 -3
  94. package/resources/v1/customers/index.js.map +1 -1
  95. package/resources/v1/customers/index.mjs +1 -1
  96. package/resources/v1/customers/index.mjs.map +1 -1
  97. package/resources/v1/customers/payment-method.d.mts +7 -2
  98. package/resources/v1/customers/payment-method.d.mts.map +1 -1
  99. package/resources/v1/customers/payment-method.d.ts +7 -2
  100. package/resources/v1/customers/payment-method.d.ts.map +1 -1
  101. package/resources/v1/customers/payment-method.js +4 -2
  102. package/resources/v1/customers/payment-method.js.map +1 -1
  103. package/resources/v1/customers/payment-method.mjs +4 -2
  104. package/resources/v1/customers/payment-method.mjs.map +1 -1
  105. package/resources/v1/customers/promotional-entitlements.d.mts +498 -0
  106. package/resources/v1/customers/promotional-entitlements.d.mts.map +1 -0
  107. package/resources/v1/customers/promotional-entitlements.d.ts +498 -0
  108. package/resources/v1/customers/promotional-entitlements.d.ts.map +1 -0
  109. package/resources/v1/customers/promotional-entitlements.js +32 -0
  110. package/resources/v1/customers/promotional-entitlements.js.map +1 -0
  111. package/resources/v1/customers/promotional-entitlements.mjs +28 -0
  112. package/resources/v1/customers/promotional-entitlements.mjs.map +1 -0
  113. package/resources/v1/events/addons/addons.d.mts +605 -0
  114. package/resources/v1/events/addons/addons.d.mts.map +1 -0
  115. package/resources/v1/events/addons/addons.d.ts +605 -0
  116. package/resources/v1/events/addons/addons.d.ts.map +1 -0
  117. package/resources/v1/events/addons/addons.js +60 -0
  118. package/resources/v1/events/addons/addons.js.map +1 -0
  119. package/resources/v1/events/addons/addons.mjs +55 -0
  120. package/resources/v1/events/addons/addons.mjs.map +1 -0
  121. package/resources/v1/events/addons/draft.d.mts +121 -0
  122. package/resources/v1/events/addons/draft.d.mts.map +1 -0
  123. package/resources/v1/events/addons/draft.d.ts +121 -0
  124. package/resources/v1/events/addons/draft.d.ts.map +1 -0
  125. package/resources/v1/events/addons/draft.js +22 -0
  126. package/resources/v1/events/addons/draft.js.map +1 -0
  127. package/resources/v1/events/addons/draft.mjs +18 -0
  128. package/resources/v1/events/addons/draft.mjs.map +1 -0
  129. package/resources/v1/events/addons/index.d.mts +3 -0
  130. package/resources/v1/events/addons/index.d.mts.map +1 -0
  131. package/resources/v1/events/addons/index.d.ts +3 -0
  132. package/resources/v1/events/addons/index.d.ts.map +1 -0
  133. package/resources/v1/events/addons/index.js +9 -0
  134. package/resources/v1/events/addons/index.js.map +1 -0
  135. package/resources/v1/events/addons/index.mjs +4 -0
  136. package/resources/v1/events/addons/index.mjs.map +1 -0
  137. package/resources/v1/events/addons.d.mts +2 -0
  138. package/resources/v1/events/addons.d.mts.map +1 -0
  139. package/resources/v1/events/addons.d.ts +2 -0
  140. package/resources/v1/events/addons.d.ts.map +1 -0
  141. package/resources/v1/events/addons.js +6 -0
  142. package/resources/v1/events/addons.js.map +1 -0
  143. package/resources/v1/events/addons.mjs +3 -0
  144. package/resources/v1/events/addons.mjs.map +1 -0
  145. package/resources/v1/events/events.d.mts +75 -0
  146. package/resources/v1/events/events.d.mts.map +1 -0
  147. package/resources/v1/events/events.d.ts +75 -0
  148. package/resources/v1/events/events.d.ts.map +1 -0
  149. package/resources/v1/events/events.js +32 -0
  150. package/resources/v1/events/events.js.map +1 -0
  151. package/resources/v1/events/events.mjs +27 -0
  152. package/resources/v1/events/events.mjs.map +1 -0
  153. package/resources/v1/events/features.d.mts +856 -0
  154. package/resources/v1/events/features.d.mts.map +1 -0
  155. package/resources/v1/events/features.d.ts +856 -0
  156. package/resources/v1/events/features.d.ts.map +1 -0
  157. package/resources/v1/events/features.js +51 -0
  158. package/resources/v1/events/features.js.map +1 -0
  159. package/resources/v1/events/features.mjs +47 -0
  160. package/resources/v1/events/features.mjs.map +1 -0
  161. package/resources/v1/events/index.d.mts +5 -0
  162. package/resources/v1/events/index.d.mts.map +1 -0
  163. package/resources/v1/events/index.d.ts +5 -0
  164. package/resources/v1/events/index.d.ts.map +1 -0
  165. package/resources/v1/events/index.js +13 -0
  166. package/resources/v1/events/index.js.map +1 -0
  167. package/resources/v1/events/index.mjs +6 -0
  168. package/resources/v1/events/index.mjs.map +1 -0
  169. package/resources/v1/events/plans.d.mts +348 -0
  170. package/resources/v1/events/plans.d.mts.map +1 -0
  171. package/resources/v1/events/plans.d.ts +348 -0
  172. package/resources/v1/events/plans.d.ts.map +1 -0
  173. package/resources/v1/events/plans.js +30 -0
  174. package/resources/v1/events/plans.js.map +1 -0
  175. package/resources/v1/events/plans.mjs +26 -0
  176. package/resources/v1/events/plans.mjs.map +1 -0
  177. package/resources/v1/events.d.mts +2 -0
  178. package/resources/v1/events.d.mts.map +1 -0
  179. package/resources/v1/events.d.ts +2 -0
  180. package/resources/v1/events.d.ts.map +1 -0
  181. package/resources/v1/events.js +6 -0
  182. package/resources/v1/events.js.map +1 -0
  183. package/resources/v1/events.mjs +3 -0
  184. package/resources/v1/events.mjs.map +1 -0
  185. package/resources/v1/index.d.mts +7 -4
  186. package/resources/v1/index.d.mts.map +1 -1
  187. package/resources/v1/index.d.ts +7 -4
  188. package/resources/v1/index.d.ts.map +1 -1
  189. package/resources/v1/index.js +9 -3
  190. package/resources/v1/index.js.map +1 -1
  191. package/resources/v1/index.mjs +4 -1
  192. package/resources/v1/index.mjs.map +1 -1
  193. package/resources/v1/products.d.mts +676 -0
  194. package/resources/v1/products.d.mts.map +1 -0
  195. package/resources/v1/products.d.ts +676 -0
  196. package/resources/v1/products.d.ts.map +1 -0
  197. package/resources/v1/products.js +52 -0
  198. package/resources/v1/products.js.map +1 -0
  199. package/resources/v1/products.mjs +48 -0
  200. package/resources/v1/products.mjs.map +1 -0
  201. package/resources/v1/subscriptions/future-update.d.mts +12 -19
  202. package/resources/v1/subscriptions/future-update.d.mts.map +1 -1
  203. package/resources/v1/subscriptions/future-update.d.ts +12 -19
  204. package/resources/v1/subscriptions/future-update.d.ts.map +1 -1
  205. package/resources/v1/subscriptions/future-update.js +3 -2
  206. package/resources/v1/subscriptions/future-update.js.map +1 -1
  207. package/resources/v1/subscriptions/future-update.mjs +3 -2
  208. package/resources/v1/subscriptions/future-update.mjs.map +1 -1
  209. package/resources/v1/subscriptions/index.d.mts +4 -2
  210. package/resources/v1/subscriptions/index.d.mts.map +1 -1
  211. package/resources/v1/subscriptions/index.d.ts +4 -2
  212. package/resources/v1/subscriptions/index.d.ts.map +1 -1
  213. package/resources/v1/subscriptions/index.js +5 -1
  214. package/resources/v1/subscriptions/index.js.map +1 -1
  215. package/resources/v1/subscriptions/index.mjs +3 -1
  216. package/resources/v1/subscriptions/index.mjs.map +1 -1
  217. package/resources/v1/subscriptions/invoice.d.mts +34 -0
  218. package/resources/v1/subscriptions/invoice.d.mts.map +1 -0
  219. package/resources/v1/subscriptions/invoice.d.ts +34 -0
  220. package/resources/v1/subscriptions/invoice.d.ts.map +1 -0
  221. package/resources/v1/subscriptions/invoice.js +17 -0
  222. package/resources/v1/subscriptions/invoice.js.map +1 -0
  223. package/resources/v1/subscriptions/invoice.mjs +13 -0
  224. package/resources/v1/subscriptions/invoice.mjs.map +1 -0
  225. package/resources/v1/subscriptions/subscriptions.d.mts +1545 -518
  226. package/resources/v1/subscriptions/subscriptions.d.mts.map +1 -1
  227. package/resources/v1/subscriptions/subscriptions.d.ts +1545 -518
  228. package/resources/v1/subscriptions/subscriptions.d.ts.map +1 -1
  229. package/resources/v1/subscriptions/subscriptions.js +52 -12
  230. package/resources/v1/subscriptions/subscriptions.js.map +1 -1
  231. package/resources/v1/subscriptions/subscriptions.mjs +53 -13
  232. package/resources/v1/subscriptions/subscriptions.mjs.map +1 -1
  233. package/resources/v1/subscriptions/usage.d.mts +98 -0
  234. package/resources/v1/subscriptions/usage.d.mts.map +1 -0
  235. package/resources/v1/subscriptions/usage.d.ts +98 -0
  236. package/resources/v1/subscriptions/usage.d.ts.map +1 -0
  237. package/resources/v1/subscriptions/usage.js +24 -0
  238. package/resources/v1/subscriptions/usage.js.map +1 -0
  239. package/resources/v1/subscriptions/usage.mjs +20 -0
  240. package/resources/v1/subscriptions/usage.mjs.map +1 -0
  241. package/resources/v1/usage.d.mts +230 -0
  242. package/resources/v1/usage.d.mts.map +1 -0
  243. package/resources/v1/usage.d.ts +230 -0
  244. package/resources/v1/usage.d.ts.map +1 -0
  245. package/resources/v1/usage.js +24 -0
  246. package/resources/v1/usage.js.map +1 -0
  247. package/resources/v1/usage.mjs +20 -0
  248. package/resources/v1/usage.mjs.map +1 -0
  249. package/resources/v1/v1.d.mts +18 -149
  250. package/resources/v1/v1.d.mts.map +1 -1
  251. package/resources/v1/v1.d.ts +18 -149
  252. package/resources/v1/v1.d.ts.map +1 -1
  253. package/resources/v1/v1.js +12 -12
  254. package/resources/v1/v1.js.map +1 -1
  255. package/resources/v1/v1.mjs +12 -12
  256. package/resources/v1/v1.mjs.map +1 -1
  257. package/src/client.ts +33 -40
  258. package/src/core/pagination.ts +24 -18
  259. package/src/internal/parse.ts +6 -0
  260. package/src/internal/qs/LICENSE.md +13 -0
  261. package/src/internal/qs/README.md +3 -0
  262. package/src/internal/qs/formats.ts +10 -0
  263. package/src/internal/qs/index.ts +13 -0
  264. package/src/internal/qs/stringify.ts +385 -0
  265. package/src/internal/qs/types.ts +71 -0
  266. package/src/internal/qs/utils.ts +265 -0
  267. package/src/resources/index.ts +1 -7
  268. package/src/resources/v1/coupons.ts +311 -436
  269. package/src/resources/v1/customers/customers.ts +334 -153
  270. package/src/resources/v1/customers/index.ts +17 -2
  271. package/src/resources/v1/customers/payment-method.ts +7 -2
  272. package/src/resources/v1/customers/promotional-entitlements.ts +669 -0
  273. package/src/resources/v1/events/addons/addons.ts +761 -0
  274. package/src/resources/v1/events/addons/draft.ts +151 -0
  275. package/src/resources/v1/events/addons/index.ts +17 -0
  276. package/src/resources/v1/events/addons.ts +3 -0
  277. package/src/resources/v1/events/events.ts +160 -0
  278. package/src/resources/v1/events/features.ts +1066 -0
  279. package/src/resources/v1/events/index.ts +39 -0
  280. package/src/resources/v1/events/plans.ts +429 -0
  281. package/src/resources/v1/events.ts +3 -0
  282. package/src/resources/v1/index.ts +40 -15
  283. package/src/resources/v1/products.ts +834 -0
  284. package/src/resources/v1/subscriptions/future-update.ts +12 -27
  285. package/src/resources/v1/subscriptions/index.ts +16 -11
  286. package/src/resources/v1/subscriptions/invoice.ts +42 -0
  287. package/src/resources/v1/subscriptions/subscriptions.ts +3316 -832
  288. package/src/resources/v1/subscriptions/usage.ts +126 -0
  289. package/src/resources/v1/usage.ts +284 -0
  290. package/src/resources/v1/v1.ts +96 -197
  291. package/src/version.ts +1 -1
  292. package/version.d.mts +1 -1
  293. package/version.d.mts.map +1 -1
  294. package/version.d.ts +1 -1
  295. package/version.d.ts.map +1 -1
  296. package/version.js +1 -1
  297. package/version.js.map +1 -1
  298. package/version.mjs +1 -1
  299. package/version.mjs.map +1 -1
  300. package/resources/v1/customers/usage.d.mts +0 -98
  301. package/resources/v1/customers/usage.d.mts.map +0 -1
  302. package/resources/v1/customers/usage.d.ts +0 -98
  303. package/resources/v1/customers/usage.d.ts.map +0 -1
  304. package/resources/v1/customers/usage.js +0 -20
  305. package/resources/v1/customers/usage.js.map +0 -1
  306. package/resources/v1/customers/usage.mjs +0 -16
  307. package/resources/v1/customers/usage.mjs.map +0 -1
  308. package/src/resources/v1/customers/usage.ts +0 -132
@@ -0,0 +1,1066 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../../core/resource';
4
+ import { APIPromise } from '../../../core/api-promise';
5
+ import { MyCursorIDPage, type MyCursorIDPageParams, PagePromise } from '../../../core/pagination';
6
+ import { RequestOptions } from '../../../internal/request-options';
7
+ import { path } from '../../../internal/utils/path';
8
+
9
+ export class Features extends APIResource {
10
+ /**
11
+ * Archives a feature, preventing it from being used in new entitlements.
12
+ */
13
+ archiveFeature(id: string, options?: RequestOptions): APIPromise<FeatureArchiveFeatureResponse> {
14
+ return this._client.post(path`/api/v1/features/${id}/archive`, options);
15
+ }
16
+
17
+ /**
18
+ * Creates a new feature with the specified type, metering, and configuration.
19
+ */
20
+ createFeature(
21
+ body: FeatureCreateFeatureParams,
22
+ options?: RequestOptions,
23
+ ): APIPromise<FeatureCreateFeatureResponse> {
24
+ return this._client.post('/api/v1/features', { body, ...options });
25
+ }
26
+
27
+ /**
28
+ * Retrieves a paginated list of features in the environment.
29
+ */
30
+ listFeatures(
31
+ query: FeatureListFeaturesParams | null | undefined = {},
32
+ options?: RequestOptions,
33
+ ): PagePromise<FeatureListFeaturesResponsesMyCursorIDPage, FeatureListFeaturesResponse> {
34
+ return this._client.getAPIList('/api/v1/features', MyCursorIDPage<FeatureListFeaturesResponse>, {
35
+ query,
36
+ ...options,
37
+ });
38
+ }
39
+
40
+ /**
41
+ * Retrieves a feature by its unique identifier.
42
+ */
43
+ retrieveFeature(id: string, options?: RequestOptions): APIPromise<FeatureRetrieveFeatureResponse> {
44
+ return this._client.get(path`/api/v1/features/${id}`, options);
45
+ }
46
+
47
+ /**
48
+ * Restores an archived feature, allowing it to be used in entitlements again.
49
+ */
50
+ unarchiveFeature(id: string, options?: RequestOptions): APIPromise<FeatureUnarchiveFeatureResponse> {
51
+ return this._client.post(path`/api/v1/features/${id}/unarchive`, options);
52
+ }
53
+
54
+ /**
55
+ * Updates an existing feature's properties such as display name, description, and
56
+ * configuration.
57
+ */
58
+ updateFeature(
59
+ id: string,
60
+ body: FeatureUpdateFeatureParams,
61
+ options?: RequestOptions,
62
+ ): APIPromise<FeatureUpdateFeatureResponse> {
63
+ return this._client.patch(path`/api/v1/features/${id}`, { body, ...options });
64
+ }
65
+ }
66
+
67
+ export type FeatureListFeaturesResponsesMyCursorIDPage = MyCursorIDPage<FeatureListFeaturesResponse>;
68
+
69
+ /**
70
+ * Response object
71
+ */
72
+ export interface FeatureArchiveFeatureResponse {
73
+ /**
74
+ * Feature configuration object
75
+ */
76
+ data: FeatureArchiveFeatureResponse.Data;
77
+ }
78
+
79
+ export namespace FeatureArchiveFeatureResponse {
80
+ /**
81
+ * Feature configuration object
82
+ */
83
+ export interface Data {
84
+ /**
85
+ * The unique identifier for the feature
86
+ */
87
+ id: string;
88
+
89
+ /**
90
+ * Timestamp of when the record was created
91
+ */
92
+ createdAt: string;
93
+
94
+ /**
95
+ * The description for the feature
96
+ */
97
+ description: string | null;
98
+
99
+ /**
100
+ * The display name for the feature
101
+ */
102
+ displayName: string;
103
+
104
+ /**
105
+ * The configuration data for the feature
106
+ */
107
+ enumConfiguration: Array<Data.EnumConfiguration> | null;
108
+
109
+ /**
110
+ * The status of the feature
111
+ */
112
+ featureStatus: 'NEW' | 'SUSPENDED' | 'ACTIVE';
113
+
114
+ /**
115
+ * The type of the feature
116
+ */
117
+ featureType: 'BOOLEAN' | 'NUMBER' | 'ENUM';
118
+
119
+ /**
120
+ * The units for the feature
121
+ */
122
+ featureUnits: string | null;
123
+
124
+ /**
125
+ * The plural units for the feature
126
+ */
127
+ featureUnitsPlural: string | null;
128
+
129
+ /**
130
+ * The additional metadata for the feature
131
+ */
132
+ metadata: { [key: string]: string };
133
+
134
+ /**
135
+ * The meter type for the feature
136
+ */
137
+ meterType: 'None' | 'FLUCTUATING' | 'INCREMENTAL';
138
+
139
+ /**
140
+ * Unit transformation to be applied to the reported usage
141
+ */
142
+ unitTransformation: Data.UnitTransformation | null;
143
+
144
+ /**
145
+ * Timestamp of when the record was last updated
146
+ */
147
+ updatedAt: string;
148
+ }
149
+
150
+ export namespace Data {
151
+ export interface EnumConfiguration {
152
+ /**
153
+ * The display name for the enum configuration entity
154
+ */
155
+ displayName: string;
156
+
157
+ /**
158
+ * The unique value identifier for the enum configuration entity
159
+ */
160
+ value: string;
161
+ }
162
+
163
+ /**
164
+ * Unit transformation to be applied to the reported usage
165
+ */
166
+ export interface UnitTransformation {
167
+ /**
168
+ * Divide usage by this number
169
+ */
170
+ divide: number;
171
+
172
+ /**
173
+ * Singular feature units after the transformation
174
+ */
175
+ featureUnits: string | null;
176
+
177
+ /**
178
+ * Plural feature units after the transformation
179
+ */
180
+ featureUnitsPlural: string | null;
181
+
182
+ /**
183
+ * After division, either round the result up or down
184
+ */
185
+ round: 'UP' | 'DOWN';
186
+ }
187
+ }
188
+ }
189
+
190
+ /**
191
+ * Response object
192
+ */
193
+ export interface FeatureCreateFeatureResponse {
194
+ /**
195
+ * Feature configuration object
196
+ */
197
+ data: FeatureCreateFeatureResponse.Data;
198
+ }
199
+
200
+ export namespace FeatureCreateFeatureResponse {
201
+ /**
202
+ * Feature configuration object
203
+ */
204
+ export interface Data {
205
+ /**
206
+ * The unique identifier for the feature
207
+ */
208
+ id: string;
209
+
210
+ /**
211
+ * Timestamp of when the record was created
212
+ */
213
+ createdAt: string;
214
+
215
+ /**
216
+ * The description for the feature
217
+ */
218
+ description: string | null;
219
+
220
+ /**
221
+ * The display name for the feature
222
+ */
223
+ displayName: string;
224
+
225
+ /**
226
+ * The configuration data for the feature
227
+ */
228
+ enumConfiguration: Array<Data.EnumConfiguration> | null;
229
+
230
+ /**
231
+ * The status of the feature
232
+ */
233
+ featureStatus: 'NEW' | 'SUSPENDED' | 'ACTIVE';
234
+
235
+ /**
236
+ * The type of the feature
237
+ */
238
+ featureType: 'BOOLEAN' | 'NUMBER' | 'ENUM';
239
+
240
+ /**
241
+ * The units for the feature
242
+ */
243
+ featureUnits: string | null;
244
+
245
+ /**
246
+ * The plural units for the feature
247
+ */
248
+ featureUnitsPlural: string | null;
249
+
250
+ /**
251
+ * The additional metadata for the feature
252
+ */
253
+ metadata: { [key: string]: string };
254
+
255
+ /**
256
+ * The meter type for the feature
257
+ */
258
+ meterType: 'None' | 'FLUCTUATING' | 'INCREMENTAL';
259
+
260
+ /**
261
+ * Unit transformation to be applied to the reported usage
262
+ */
263
+ unitTransformation: Data.UnitTransformation | null;
264
+
265
+ /**
266
+ * Timestamp of when the record was last updated
267
+ */
268
+ updatedAt: string;
269
+ }
270
+
271
+ export namespace Data {
272
+ export interface EnumConfiguration {
273
+ /**
274
+ * The display name for the enum configuration entity
275
+ */
276
+ displayName: string;
277
+
278
+ /**
279
+ * The unique value identifier for the enum configuration entity
280
+ */
281
+ value: string;
282
+ }
283
+
284
+ /**
285
+ * Unit transformation to be applied to the reported usage
286
+ */
287
+ export interface UnitTransformation {
288
+ /**
289
+ * Divide usage by this number
290
+ */
291
+ divide: number;
292
+
293
+ /**
294
+ * Singular feature units after the transformation
295
+ */
296
+ featureUnits: string | null;
297
+
298
+ /**
299
+ * Plural feature units after the transformation
300
+ */
301
+ featureUnitsPlural: string | null;
302
+
303
+ /**
304
+ * After division, either round the result up or down
305
+ */
306
+ round: 'UP' | 'DOWN';
307
+ }
308
+ }
309
+ }
310
+
311
+ /**
312
+ * Feature configuration object
313
+ */
314
+ export interface FeatureListFeaturesResponse {
315
+ /**
316
+ * The unique identifier for the feature
317
+ */
318
+ id: string;
319
+
320
+ /**
321
+ * Timestamp of when the record was created
322
+ */
323
+ createdAt: string;
324
+
325
+ /**
326
+ * The description for the feature
327
+ */
328
+ description: string | null;
329
+
330
+ /**
331
+ * The display name for the feature
332
+ */
333
+ displayName: string;
334
+
335
+ /**
336
+ * The configuration data for the feature
337
+ */
338
+ enumConfiguration: Array<FeatureListFeaturesResponse.EnumConfiguration> | null;
339
+
340
+ /**
341
+ * The status of the feature
342
+ */
343
+ featureStatus: 'NEW' | 'SUSPENDED' | 'ACTIVE';
344
+
345
+ /**
346
+ * The type of the feature
347
+ */
348
+ featureType: 'BOOLEAN' | 'NUMBER' | 'ENUM';
349
+
350
+ /**
351
+ * The units for the feature
352
+ */
353
+ featureUnits: string | null;
354
+
355
+ /**
356
+ * The plural units for the feature
357
+ */
358
+ featureUnitsPlural: string | null;
359
+
360
+ /**
361
+ * The additional metadata for the feature
362
+ */
363
+ metadata: { [key: string]: string };
364
+
365
+ /**
366
+ * The meter type for the feature
367
+ */
368
+ meterType: 'None' | 'FLUCTUATING' | 'INCREMENTAL';
369
+
370
+ /**
371
+ * Unit transformation to be applied to the reported usage
372
+ */
373
+ unitTransformation: FeatureListFeaturesResponse.UnitTransformation | null;
374
+
375
+ /**
376
+ * Timestamp of when the record was last updated
377
+ */
378
+ updatedAt: string;
379
+ }
380
+
381
+ export namespace FeatureListFeaturesResponse {
382
+ export interface EnumConfiguration {
383
+ /**
384
+ * The display name for the enum configuration entity
385
+ */
386
+ displayName: string;
387
+
388
+ /**
389
+ * The unique value identifier for the enum configuration entity
390
+ */
391
+ value: string;
392
+ }
393
+
394
+ /**
395
+ * Unit transformation to be applied to the reported usage
396
+ */
397
+ export interface UnitTransformation {
398
+ /**
399
+ * Divide usage by this number
400
+ */
401
+ divide: number;
402
+
403
+ /**
404
+ * Singular feature units after the transformation
405
+ */
406
+ featureUnits: string | null;
407
+
408
+ /**
409
+ * Plural feature units after the transformation
410
+ */
411
+ featureUnitsPlural: string | null;
412
+
413
+ /**
414
+ * After division, either round the result up or down
415
+ */
416
+ round: 'UP' | 'DOWN';
417
+ }
418
+ }
419
+
420
+ /**
421
+ * Response object
422
+ */
423
+ export interface FeatureRetrieveFeatureResponse {
424
+ /**
425
+ * Feature configuration object
426
+ */
427
+ data: FeatureRetrieveFeatureResponse.Data;
428
+ }
429
+
430
+ export namespace FeatureRetrieveFeatureResponse {
431
+ /**
432
+ * Feature configuration object
433
+ */
434
+ export interface Data {
435
+ /**
436
+ * The unique identifier for the feature
437
+ */
438
+ id: string;
439
+
440
+ /**
441
+ * Timestamp of when the record was created
442
+ */
443
+ createdAt: string;
444
+
445
+ /**
446
+ * The description for the feature
447
+ */
448
+ description: string | null;
449
+
450
+ /**
451
+ * The display name for the feature
452
+ */
453
+ displayName: string;
454
+
455
+ /**
456
+ * The configuration data for the feature
457
+ */
458
+ enumConfiguration: Array<Data.EnumConfiguration> | null;
459
+
460
+ /**
461
+ * The status of the feature
462
+ */
463
+ featureStatus: 'NEW' | 'SUSPENDED' | 'ACTIVE';
464
+
465
+ /**
466
+ * The type of the feature
467
+ */
468
+ featureType: 'BOOLEAN' | 'NUMBER' | 'ENUM';
469
+
470
+ /**
471
+ * The units for the feature
472
+ */
473
+ featureUnits: string | null;
474
+
475
+ /**
476
+ * The plural units for the feature
477
+ */
478
+ featureUnitsPlural: string | null;
479
+
480
+ /**
481
+ * The additional metadata for the feature
482
+ */
483
+ metadata: { [key: string]: string };
484
+
485
+ /**
486
+ * The meter type for the feature
487
+ */
488
+ meterType: 'None' | 'FLUCTUATING' | 'INCREMENTAL';
489
+
490
+ /**
491
+ * Unit transformation to be applied to the reported usage
492
+ */
493
+ unitTransformation: Data.UnitTransformation | null;
494
+
495
+ /**
496
+ * Timestamp of when the record was last updated
497
+ */
498
+ updatedAt: string;
499
+ }
500
+
501
+ export namespace Data {
502
+ export interface EnumConfiguration {
503
+ /**
504
+ * The display name for the enum configuration entity
505
+ */
506
+ displayName: string;
507
+
508
+ /**
509
+ * The unique value identifier for the enum configuration entity
510
+ */
511
+ value: string;
512
+ }
513
+
514
+ /**
515
+ * Unit transformation to be applied to the reported usage
516
+ */
517
+ export interface UnitTransformation {
518
+ /**
519
+ * Divide usage by this number
520
+ */
521
+ divide: number;
522
+
523
+ /**
524
+ * Singular feature units after the transformation
525
+ */
526
+ featureUnits: string | null;
527
+
528
+ /**
529
+ * Plural feature units after the transformation
530
+ */
531
+ featureUnitsPlural: string | null;
532
+
533
+ /**
534
+ * After division, either round the result up or down
535
+ */
536
+ round: 'UP' | 'DOWN';
537
+ }
538
+ }
539
+ }
540
+
541
+ /**
542
+ * Response object
543
+ */
544
+ export interface FeatureUnarchiveFeatureResponse {
545
+ /**
546
+ * Feature configuration object
547
+ */
548
+ data: FeatureUnarchiveFeatureResponse.Data;
549
+ }
550
+
551
+ export namespace FeatureUnarchiveFeatureResponse {
552
+ /**
553
+ * Feature configuration object
554
+ */
555
+ export interface Data {
556
+ /**
557
+ * The unique identifier for the feature
558
+ */
559
+ id: string;
560
+
561
+ /**
562
+ * Timestamp of when the record was created
563
+ */
564
+ createdAt: string;
565
+
566
+ /**
567
+ * The description for the feature
568
+ */
569
+ description: string | null;
570
+
571
+ /**
572
+ * The display name for the feature
573
+ */
574
+ displayName: string;
575
+
576
+ /**
577
+ * The configuration data for the feature
578
+ */
579
+ enumConfiguration: Array<Data.EnumConfiguration> | null;
580
+
581
+ /**
582
+ * The status of the feature
583
+ */
584
+ featureStatus: 'NEW' | 'SUSPENDED' | 'ACTIVE';
585
+
586
+ /**
587
+ * The type of the feature
588
+ */
589
+ featureType: 'BOOLEAN' | 'NUMBER' | 'ENUM';
590
+
591
+ /**
592
+ * The units for the feature
593
+ */
594
+ featureUnits: string | null;
595
+
596
+ /**
597
+ * The plural units for the feature
598
+ */
599
+ featureUnitsPlural: string | null;
600
+
601
+ /**
602
+ * The additional metadata for the feature
603
+ */
604
+ metadata: { [key: string]: string };
605
+
606
+ /**
607
+ * The meter type for the feature
608
+ */
609
+ meterType: 'None' | 'FLUCTUATING' | 'INCREMENTAL';
610
+
611
+ /**
612
+ * Unit transformation to be applied to the reported usage
613
+ */
614
+ unitTransformation: Data.UnitTransformation | null;
615
+
616
+ /**
617
+ * Timestamp of when the record was last updated
618
+ */
619
+ updatedAt: string;
620
+ }
621
+
622
+ export namespace Data {
623
+ export interface EnumConfiguration {
624
+ /**
625
+ * The display name for the enum configuration entity
626
+ */
627
+ displayName: string;
628
+
629
+ /**
630
+ * The unique value identifier for the enum configuration entity
631
+ */
632
+ value: string;
633
+ }
634
+
635
+ /**
636
+ * Unit transformation to be applied to the reported usage
637
+ */
638
+ export interface UnitTransformation {
639
+ /**
640
+ * Divide usage by this number
641
+ */
642
+ divide: number;
643
+
644
+ /**
645
+ * Singular feature units after the transformation
646
+ */
647
+ featureUnits: string | null;
648
+
649
+ /**
650
+ * Plural feature units after the transformation
651
+ */
652
+ featureUnitsPlural: string | null;
653
+
654
+ /**
655
+ * After division, either round the result up or down
656
+ */
657
+ round: 'UP' | 'DOWN';
658
+ }
659
+ }
660
+ }
661
+
662
+ /**
663
+ * Response object
664
+ */
665
+ export interface FeatureUpdateFeatureResponse {
666
+ /**
667
+ * Feature configuration object
668
+ */
669
+ data: FeatureUpdateFeatureResponse.Data;
670
+ }
671
+
672
+ export namespace FeatureUpdateFeatureResponse {
673
+ /**
674
+ * Feature configuration object
675
+ */
676
+ export interface Data {
677
+ /**
678
+ * The unique identifier for the feature
679
+ */
680
+ id: string;
681
+
682
+ /**
683
+ * Timestamp of when the record was created
684
+ */
685
+ createdAt: string;
686
+
687
+ /**
688
+ * The description for the feature
689
+ */
690
+ description: string | null;
691
+
692
+ /**
693
+ * The display name for the feature
694
+ */
695
+ displayName: string;
696
+
697
+ /**
698
+ * The configuration data for the feature
699
+ */
700
+ enumConfiguration: Array<Data.EnumConfiguration> | null;
701
+
702
+ /**
703
+ * The status of the feature
704
+ */
705
+ featureStatus: 'NEW' | 'SUSPENDED' | 'ACTIVE';
706
+
707
+ /**
708
+ * The type of the feature
709
+ */
710
+ featureType: 'BOOLEAN' | 'NUMBER' | 'ENUM';
711
+
712
+ /**
713
+ * The units for the feature
714
+ */
715
+ featureUnits: string | null;
716
+
717
+ /**
718
+ * The plural units for the feature
719
+ */
720
+ featureUnitsPlural: string | null;
721
+
722
+ /**
723
+ * The additional metadata for the feature
724
+ */
725
+ metadata: { [key: string]: string };
726
+
727
+ /**
728
+ * The meter type for the feature
729
+ */
730
+ meterType: 'None' | 'FLUCTUATING' | 'INCREMENTAL';
731
+
732
+ /**
733
+ * Unit transformation to be applied to the reported usage
734
+ */
735
+ unitTransformation: Data.UnitTransformation | null;
736
+
737
+ /**
738
+ * Timestamp of when the record was last updated
739
+ */
740
+ updatedAt: string;
741
+ }
742
+
743
+ export namespace Data {
744
+ export interface EnumConfiguration {
745
+ /**
746
+ * The display name for the enum configuration entity
747
+ */
748
+ displayName: string;
749
+
750
+ /**
751
+ * The unique value identifier for the enum configuration entity
752
+ */
753
+ value: string;
754
+ }
755
+
756
+ /**
757
+ * Unit transformation to be applied to the reported usage
758
+ */
759
+ export interface UnitTransformation {
760
+ /**
761
+ * Divide usage by this number
762
+ */
763
+ divide: number;
764
+
765
+ /**
766
+ * Singular feature units after the transformation
767
+ */
768
+ featureUnits: string | null;
769
+
770
+ /**
771
+ * Plural feature units after the transformation
772
+ */
773
+ featureUnitsPlural: string | null;
774
+
775
+ /**
776
+ * After division, either round the result up or down
777
+ */
778
+ round: 'UP' | 'DOWN';
779
+ }
780
+ }
781
+ }
782
+
783
+ export interface FeatureCreateFeatureParams {
784
+ /**
785
+ * The unique identifier for the feature
786
+ */
787
+ id: string;
788
+
789
+ /**
790
+ * The display name for the feature
791
+ */
792
+ displayName: string;
793
+
794
+ /**
795
+ * The type of the feature
796
+ */
797
+ featureType: 'BOOLEAN' | 'NUMBER' | 'ENUM';
798
+
799
+ /**
800
+ * The description for the feature
801
+ */
802
+ description?: string;
803
+
804
+ /**
805
+ * The configuration data for the feature
806
+ */
807
+ enumConfiguration?: Array<FeatureCreateFeatureParams.EnumConfiguration>;
808
+
809
+ /**
810
+ * The status of the feature
811
+ */
812
+ featureStatus?: 'NEW' | 'SUSPENDED' | 'ACTIVE';
813
+
814
+ /**
815
+ * The units for the feature
816
+ */
817
+ featureUnits?: string;
818
+
819
+ /**
820
+ * The plural units for the feature
821
+ */
822
+ featureUnitsPlural?: string;
823
+
824
+ /**
825
+ * The additional metadata for the feature
826
+ */
827
+ metadata?: { [key: string]: string };
828
+
829
+ /**
830
+ * The meter type for the feature
831
+ */
832
+ meterType?: 'None' | 'FLUCTUATING' | 'INCREMENTAL';
833
+
834
+ /**
835
+ * Unit transformation to be applied to the reported usage
836
+ */
837
+ unitTransformation?: FeatureCreateFeatureParams.UnitTransformation | null;
838
+ }
839
+
840
+ export namespace FeatureCreateFeatureParams {
841
+ export interface EnumConfiguration {
842
+ /**
843
+ * The display name for the enum configuration entity
844
+ */
845
+ displayName: string;
846
+
847
+ /**
848
+ * The unique value identifier for the enum configuration entity
849
+ */
850
+ value: string;
851
+ }
852
+
853
+ /**
854
+ * Unit transformation to be applied to the reported usage
855
+ */
856
+ export interface UnitTransformation {
857
+ /**
858
+ * Divide usage by this number
859
+ */
860
+ divide: number;
861
+
862
+ /**
863
+ * Singular feature units after the transformation
864
+ */
865
+ featureUnits?: string;
866
+
867
+ /**
868
+ * Plural feature units after the transformation
869
+ */
870
+ featureUnitsPlural?: string;
871
+
872
+ /**
873
+ * After division, either round the result up or down
874
+ */
875
+ round?: 'UP' | 'DOWN';
876
+ }
877
+ }
878
+
879
+ export interface FeatureListFeaturesParams extends MyCursorIDPageParams {
880
+ /**
881
+ * Filter by entity ID
882
+ */
883
+ id?: string;
884
+
885
+ /**
886
+ * Filter by creation date using range operators: gt, gte, lt, lte
887
+ */
888
+ createdAt?: FeatureListFeaturesParams.CreatedAt;
889
+
890
+ /**
891
+ * Filter by feature type. Supports comma-separated values for multiple types
892
+ */
893
+ featureType?: string;
894
+
895
+ /**
896
+ * Filter by meter type. Supports comma-separated values for multiple types
897
+ */
898
+ meterType?: string;
899
+
900
+ /**
901
+ * Filter by feature status. Supports comma-separated values for multiple statuses
902
+ */
903
+ status?: string;
904
+ }
905
+
906
+ export namespace FeatureListFeaturesParams {
907
+ /**
908
+ * Filter by creation date using range operators: gt, gte, lt, lte
909
+ */
910
+ export interface CreatedAt {
911
+ /**
912
+ * Greater than the specified createdAt value
913
+ */
914
+ gt?: string;
915
+
916
+ /**
917
+ * Greater than or equal to the specified createdAt value
918
+ */
919
+ gte?: string;
920
+
921
+ /**
922
+ * Less than the specified createdAt value
923
+ */
924
+ lt?: string;
925
+
926
+ /**
927
+ * Less than or equal to the specified createdAt value
928
+ */
929
+ lte?: string;
930
+ }
931
+ }
932
+
933
+ export interface FeatureUpdateFeatureParams {
934
+ /**
935
+ * The description for the feature
936
+ */
937
+ description?: string;
938
+
939
+ /**
940
+ * The display name for the feature
941
+ */
942
+ displayName?: string;
943
+
944
+ /**
945
+ * The configuration data for the feature
946
+ */
947
+ enumConfiguration?: Array<FeatureUpdateFeatureParams.EnumConfiguration>;
948
+
949
+ /**
950
+ * The units for the feature
951
+ */
952
+ featureUnits?: string;
953
+
954
+ /**
955
+ * The plural units for the feature
956
+ */
957
+ featureUnitsPlural?: string;
958
+
959
+ /**
960
+ * The additional metadata for the feature
961
+ */
962
+ metadata?: { [key: string]: string };
963
+
964
+ meter?: FeatureUpdateFeatureParams.Meter;
965
+
966
+ /**
967
+ * Unit transformation to be applied to the reported usage
968
+ */
969
+ unitTransformation?: FeatureUpdateFeatureParams.UnitTransformation | null;
970
+ }
971
+
972
+ export namespace FeatureUpdateFeatureParams {
973
+ export interface EnumConfiguration {
974
+ /**
975
+ * The display name for the enum configuration entity
976
+ */
977
+ displayName: string;
978
+
979
+ /**
980
+ * The unique value identifier for the enum configuration entity
981
+ */
982
+ value: string;
983
+ }
984
+
985
+ export interface Meter {
986
+ aggregation: Meter.Aggregation;
987
+
988
+ filters: Array<Meter.Filter>;
989
+ }
990
+
991
+ export namespace Meter {
992
+ export interface Aggregation {
993
+ function: 'SUM' | 'MAX' | 'MIN' | 'AVG' | 'COUNT' | 'UNIQUE';
994
+
995
+ field?: string;
996
+ }
997
+
998
+ export interface Filter {
999
+ conditions: Array<Filter.Condition>;
1000
+ }
1001
+
1002
+ export namespace Filter {
1003
+ export interface Condition {
1004
+ field: string;
1005
+
1006
+ operation:
1007
+ | 'EQUALS'
1008
+ | 'NOT_EQUALS'
1009
+ | 'GREATER_THAN'
1010
+ | 'GREATER_THAN_OR_EQUAL'
1011
+ | 'LESS_THAN'
1012
+ | 'LESS_THAN_OR_EQUAL'
1013
+ | 'IS_NULL'
1014
+ | 'IS_NOT_NULL'
1015
+ | 'CONTAINS'
1016
+ | 'STARTS_WITH'
1017
+ | 'ENDS_WITH'
1018
+ | 'IN';
1019
+
1020
+ value?: string;
1021
+
1022
+ values?: Array<string>;
1023
+ }
1024
+ }
1025
+ }
1026
+
1027
+ /**
1028
+ * Unit transformation to be applied to the reported usage
1029
+ */
1030
+ export interface UnitTransformation {
1031
+ /**
1032
+ * Divide usage by this number
1033
+ */
1034
+ divide: number;
1035
+
1036
+ /**
1037
+ * Singular feature units after the transformation
1038
+ */
1039
+ featureUnits?: string;
1040
+
1041
+ /**
1042
+ * Plural feature units after the transformation
1043
+ */
1044
+ featureUnitsPlural?: string;
1045
+
1046
+ /**
1047
+ * After division, either round the result up or down
1048
+ */
1049
+ round?: 'UP' | 'DOWN';
1050
+ }
1051
+ }
1052
+
1053
+ export declare namespace Features {
1054
+ export {
1055
+ type FeatureArchiveFeatureResponse as FeatureArchiveFeatureResponse,
1056
+ type FeatureCreateFeatureResponse as FeatureCreateFeatureResponse,
1057
+ type FeatureListFeaturesResponse as FeatureListFeaturesResponse,
1058
+ type FeatureRetrieveFeatureResponse as FeatureRetrieveFeatureResponse,
1059
+ type FeatureUnarchiveFeatureResponse as FeatureUnarchiveFeatureResponse,
1060
+ type FeatureUpdateFeatureResponse as FeatureUpdateFeatureResponse,
1061
+ type FeatureListFeaturesResponsesMyCursorIDPage as FeatureListFeaturesResponsesMyCursorIDPage,
1062
+ type FeatureCreateFeatureParams as FeatureCreateFeatureParams,
1063
+ type FeatureListFeaturesParams as FeatureListFeaturesParams,
1064
+ type FeatureUpdateFeatureParams as FeatureUpdateFeatureParams,
1065
+ };
1066
+ }