@stigg/typescript 0.1.0-alpha.4 → 0.1.0-alpha.8

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 (276) hide show
  1. package/CHANGELOG.md +86 -0
  2. package/README.md +9 -0
  3. package/client.d.mts +4 -6
  4. package/client.d.mts.map +1 -1
  5. package/client.d.ts +4 -6
  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 +23 -21
  10. package/client.mjs.map +1 -1
  11. package/internal/parse.d.mts.map +1 -1
  12. package/internal/parse.d.ts.map +1 -1
  13. package/internal/parse.js +5 -0
  14. package/internal/parse.js.map +1 -1
  15. package/internal/parse.mjs +5 -0
  16. package/internal/parse.mjs.map +1 -1
  17. package/internal/qs/formats.d.mts +7 -0
  18. package/internal/qs/formats.d.mts.map +1 -0
  19. package/internal/qs/formats.d.ts +7 -0
  20. package/internal/qs/formats.d.ts.map +1 -0
  21. package/internal/qs/formats.js +13 -0
  22. package/internal/qs/formats.js.map +1 -0
  23. package/internal/qs/formats.mjs +9 -0
  24. package/internal/qs/formats.mjs.map +1 -0
  25. package/internal/qs/index.d.mts +10 -0
  26. package/internal/qs/index.d.mts.map +1 -0
  27. package/internal/qs/index.d.ts +10 -0
  28. package/internal/qs/index.d.ts.map +1 -0
  29. package/internal/qs/index.js +14 -0
  30. package/internal/qs/index.js.map +1 -0
  31. package/internal/qs/index.mjs +10 -0
  32. package/internal/qs/index.mjs.map +1 -0
  33. package/internal/qs/stringify.d.mts +3 -0
  34. package/internal/qs/stringify.d.mts.map +1 -0
  35. package/internal/qs/stringify.d.ts +3 -0
  36. package/internal/qs/stringify.d.ts.map +1 -0
  37. package/internal/qs/stringify.js +277 -0
  38. package/internal/qs/stringify.js.map +1 -0
  39. package/internal/qs/stringify.mjs +274 -0
  40. package/internal/qs/stringify.mjs.map +1 -0
  41. package/internal/qs/types.d.mts +57 -0
  42. package/internal/qs/types.d.mts.map +1 -0
  43. package/internal/qs/types.d.ts +57 -0
  44. package/internal/qs/types.d.ts.map +1 -0
  45. package/internal/qs/types.js +3 -0
  46. package/internal/qs/types.js.map +1 -0
  47. package/internal/qs/types.mjs +2 -0
  48. package/internal/qs/types.mjs.map +1 -0
  49. package/internal/qs/utils.d.mts +15 -0
  50. package/internal/qs/utils.d.mts.map +1 -0
  51. package/internal/qs/utils.d.ts +15 -0
  52. package/internal/qs/utils.d.ts.map +1 -0
  53. package/internal/qs/utils.js +230 -0
  54. package/internal/qs/utils.js.map +1 -0
  55. package/internal/qs/utils.mjs +217 -0
  56. package/internal/qs/utils.mjs.map +1 -0
  57. package/package.json +1 -1
  58. package/resources/v1/coupons.d.mts +74 -8
  59. package/resources/v1/coupons.d.mts.map +1 -1
  60. package/resources/v1/coupons.d.ts +74 -8
  61. package/resources/v1/coupons.d.ts.map +1 -1
  62. package/resources/v1/coupons.js +16 -3
  63. package/resources/v1/coupons.js.map +1 -1
  64. package/resources/v1/coupons.mjs +16 -3
  65. package/resources/v1/coupons.mjs.map +1 -1
  66. package/resources/v1/customers/customers.d.mts +74 -10
  67. package/resources/v1/customers/customers.d.mts.map +1 -1
  68. package/resources/v1/customers/customers.d.ts +74 -10
  69. package/resources/v1/customers/customers.d.ts.map +1 -1
  70. package/resources/v1/customers/customers.js +18 -7
  71. package/resources/v1/customers/customers.js.map +1 -1
  72. package/resources/v1/customers/customers.mjs +18 -7
  73. package/resources/v1/customers/customers.mjs.map +1 -1
  74. package/resources/v1/customers/index.d.mts +2 -2
  75. package/resources/v1/customers/index.d.mts.map +1 -1
  76. package/resources/v1/customers/index.d.ts +2 -2
  77. package/resources/v1/customers/index.d.ts.map +1 -1
  78. package/resources/v1/customers/index.js.map +1 -1
  79. package/resources/v1/customers/index.mjs.map +1 -1
  80. package/resources/v1/customers/payment-method.d.mts +4 -2
  81. package/resources/v1/customers/payment-method.d.mts.map +1 -1
  82. package/resources/v1/customers/payment-method.d.ts +4 -2
  83. package/resources/v1/customers/payment-method.d.ts.map +1 -1
  84. package/resources/v1/customers/payment-method.js +4 -2
  85. package/resources/v1/customers/payment-method.js.map +1 -1
  86. package/resources/v1/customers/payment-method.mjs +4 -2
  87. package/resources/v1/customers/payment-method.mjs.map +1 -1
  88. package/resources/v1/customers/promotional-entitlements.d.mts +159 -11
  89. package/resources/v1/customers/promotional-entitlements.d.mts.map +1 -1
  90. package/resources/v1/customers/promotional-entitlements.d.ts +159 -11
  91. package/resources/v1/customers/promotional-entitlements.d.ts.map +1 -1
  92. package/resources/v1/customers/promotional-entitlements.js +15 -6
  93. package/resources/v1/customers/promotional-entitlements.js.map +1 -1
  94. package/resources/v1/customers/promotional-entitlements.mjs +15 -6
  95. package/resources/v1/customers/promotional-entitlements.mjs.map +1 -1
  96. package/resources/v1/events/addons/addons.d.mts +605 -0
  97. package/resources/v1/events/addons/addons.d.mts.map +1 -0
  98. package/resources/v1/events/addons/addons.d.ts +605 -0
  99. package/resources/v1/events/addons/addons.d.ts.map +1 -0
  100. package/resources/v1/events/addons/addons.js +60 -0
  101. package/resources/v1/events/addons/addons.js.map +1 -0
  102. package/resources/v1/events/addons/addons.mjs +55 -0
  103. package/resources/v1/events/addons/addons.mjs.map +1 -0
  104. package/resources/v1/events/addons/draft.d.mts +121 -0
  105. package/resources/v1/events/addons/draft.d.mts.map +1 -0
  106. package/resources/v1/events/addons/draft.d.ts +121 -0
  107. package/resources/v1/events/addons/draft.d.ts.map +1 -0
  108. package/resources/v1/events/addons/draft.js +22 -0
  109. package/resources/v1/events/addons/draft.js.map +1 -0
  110. package/resources/v1/events/addons/draft.mjs +18 -0
  111. package/resources/v1/events/addons/draft.mjs.map +1 -0
  112. package/resources/v1/events/addons/index.d.mts +3 -0
  113. package/resources/v1/events/addons/index.d.mts.map +1 -0
  114. package/resources/v1/events/addons/index.d.ts +3 -0
  115. package/resources/v1/events/addons/index.d.ts.map +1 -0
  116. package/resources/v1/events/addons/index.js +9 -0
  117. package/resources/v1/events/addons/index.js.map +1 -0
  118. package/resources/v1/events/addons/index.mjs +4 -0
  119. package/resources/v1/events/addons/index.mjs.map +1 -0
  120. package/resources/v1/events/addons.d.mts +2 -0
  121. package/resources/v1/events/addons.d.mts.map +1 -0
  122. package/resources/v1/events/addons.d.ts +2 -0
  123. package/resources/v1/events/addons.d.ts.map +1 -0
  124. package/resources/v1/events/addons.js +6 -0
  125. package/resources/v1/events/addons.js.map +1 -0
  126. package/resources/v1/events/addons.mjs +3 -0
  127. package/resources/v1/events/addons.mjs.map +1 -0
  128. package/resources/v1/events/events.d.mts +75 -0
  129. package/resources/v1/events/events.d.mts.map +1 -0
  130. package/resources/v1/events/events.d.ts +75 -0
  131. package/resources/v1/events/events.d.ts.map +1 -0
  132. package/resources/v1/events/events.js +32 -0
  133. package/resources/v1/events/events.js.map +1 -0
  134. package/resources/v1/events/events.mjs +27 -0
  135. package/resources/v1/events/events.mjs.map +1 -0
  136. package/resources/v1/events/features.d.mts +856 -0
  137. package/resources/v1/events/features.d.mts.map +1 -0
  138. package/resources/v1/events/features.d.ts +856 -0
  139. package/resources/v1/events/features.d.ts.map +1 -0
  140. package/resources/v1/events/features.js +51 -0
  141. package/resources/v1/events/features.js.map +1 -0
  142. package/resources/v1/events/features.mjs +47 -0
  143. package/resources/v1/events/features.mjs.map +1 -0
  144. package/resources/v1/events/index.d.mts +5 -0
  145. package/resources/v1/events/index.d.mts.map +1 -0
  146. package/resources/v1/events/index.d.ts +5 -0
  147. package/resources/v1/events/index.d.ts.map +1 -0
  148. package/resources/v1/events/index.js +13 -0
  149. package/resources/v1/events/index.js.map +1 -0
  150. package/resources/v1/events/index.mjs +6 -0
  151. package/resources/v1/events/index.mjs.map +1 -0
  152. package/resources/v1/events/plans.d.mts +348 -0
  153. package/resources/v1/events/plans.d.mts.map +1 -0
  154. package/resources/v1/events/plans.d.ts +348 -0
  155. package/resources/v1/events/plans.d.ts.map +1 -0
  156. package/resources/v1/events/plans.js +30 -0
  157. package/resources/v1/events/plans.js.map +1 -0
  158. package/resources/v1/events/plans.mjs +26 -0
  159. package/resources/v1/events/plans.mjs.map +1 -0
  160. package/resources/v1/events.d.mts +1 -61
  161. package/resources/v1/events.d.mts.map +1 -1
  162. package/resources/v1/events.d.ts +1 -61
  163. package/resources/v1/events.d.ts.map +1 -1
  164. package/resources/v1/events.js +2 -11
  165. package/resources/v1/events.js.map +1 -1
  166. package/resources/v1/events.mjs +1 -9
  167. package/resources/v1/events.mjs.map +1 -1
  168. package/resources/v1/index.d.mts +4 -3
  169. package/resources/v1/index.d.mts.map +1 -1
  170. package/resources/v1/index.d.ts +4 -3
  171. package/resources/v1/index.d.ts.map +1 -1
  172. package/resources/v1/index.js +7 -5
  173. package/resources/v1/index.js.map +1 -1
  174. package/resources/v1/index.mjs +2 -1
  175. package/resources/v1/index.mjs.map +1 -1
  176. package/resources/v1/products.d.mts +672 -0
  177. package/resources/v1/products.d.mts.map +1 -0
  178. package/resources/v1/products.d.ts +672 -0
  179. package/resources/v1/products.d.ts.map +1 -0
  180. package/resources/v1/products.js +52 -0
  181. package/resources/v1/products.js.map +1 -0
  182. package/resources/v1/products.mjs +48 -0
  183. package/resources/v1/products.mjs.map +1 -0
  184. package/resources/v1/subscriptions/future-update.d.mts +3 -2
  185. package/resources/v1/subscriptions/future-update.d.mts.map +1 -1
  186. package/resources/v1/subscriptions/future-update.d.ts +3 -2
  187. package/resources/v1/subscriptions/future-update.d.ts.map +1 -1
  188. package/resources/v1/subscriptions/future-update.js +3 -2
  189. package/resources/v1/subscriptions/future-update.js.map +1 -1
  190. package/resources/v1/subscriptions/future-update.mjs +3 -2
  191. package/resources/v1/subscriptions/future-update.mjs.map +1 -1
  192. package/resources/v1/subscriptions/index.d.mts +2 -0
  193. package/resources/v1/subscriptions/index.d.mts.map +1 -1
  194. package/resources/v1/subscriptions/index.d.ts +2 -0
  195. package/resources/v1/subscriptions/index.d.ts.map +1 -1
  196. package/resources/v1/subscriptions/index.js +5 -1
  197. package/resources/v1/subscriptions/index.js.map +1 -1
  198. package/resources/v1/subscriptions/index.mjs +2 -0
  199. package/resources/v1/subscriptions/index.mjs.map +1 -1
  200. package/resources/v1/subscriptions/invoice.d.mts +34 -0
  201. package/resources/v1/subscriptions/invoice.d.mts.map +1 -0
  202. package/resources/v1/subscriptions/invoice.d.ts +34 -0
  203. package/resources/v1/subscriptions/invoice.d.ts.map +1 -0
  204. package/resources/v1/subscriptions/invoice.js +17 -0
  205. package/resources/v1/subscriptions/invoice.js.map +1 -0
  206. package/resources/v1/subscriptions/invoice.mjs +13 -0
  207. package/resources/v1/subscriptions/invoice.mjs.map +1 -0
  208. package/resources/v1/subscriptions/subscriptions.d.mts +166 -34
  209. package/resources/v1/subscriptions/subscriptions.d.mts.map +1 -1
  210. package/resources/v1/subscriptions/subscriptions.d.ts +166 -34
  211. package/resources/v1/subscriptions/subscriptions.d.ts.map +1 -1
  212. package/resources/v1/subscriptions/subscriptions.js +28 -10
  213. package/resources/v1/subscriptions/subscriptions.js.map +1 -1
  214. package/resources/v1/subscriptions/subscriptions.mjs +28 -10
  215. package/resources/v1/subscriptions/subscriptions.mjs.map +1 -1
  216. package/resources/v1/subscriptions/usage.d.mts +98 -0
  217. package/resources/v1/subscriptions/usage.d.mts.map +1 -0
  218. package/resources/v1/subscriptions/usage.d.ts +98 -0
  219. package/resources/v1/subscriptions/usage.d.ts.map +1 -0
  220. package/resources/v1/subscriptions/usage.js +24 -0
  221. package/resources/v1/subscriptions/usage.js.map +1 -0
  222. package/resources/v1/subscriptions/usage.mjs +20 -0
  223. package/resources/v1/subscriptions/usage.mjs.map +1 -0
  224. package/resources/v1/usage.d.mts +3 -2
  225. package/resources/v1/usage.d.mts.map +1 -1
  226. package/resources/v1/usage.d.ts +3 -2
  227. package/resources/v1/usage.d.ts.map +1 -1
  228. package/resources/v1/usage.js +3 -2
  229. package/resources/v1/usage.js.map +1 -1
  230. package/resources/v1/usage.mjs +3 -2
  231. package/resources/v1/usage.mjs.map +1 -1
  232. package/resources/v1/v1.d.mts +10 -6
  233. package/resources/v1/v1.d.mts.map +1 -1
  234. package/resources/v1/v1.d.ts +10 -6
  235. package/resources/v1/v1.d.ts.map +1 -1
  236. package/resources/v1/v1.js +6 -2
  237. package/resources/v1/v1.js.map +1 -1
  238. package/resources/v1/v1.mjs +6 -2
  239. package/resources/v1/v1.mjs.map +1 -1
  240. package/src/client.ts +31 -26
  241. package/src/internal/parse.ts +6 -0
  242. package/src/internal/qs/LICENSE.md +13 -0
  243. package/src/internal/qs/README.md +3 -0
  244. package/src/internal/qs/formats.ts +10 -0
  245. package/src/internal/qs/index.ts +13 -0
  246. package/src/internal/qs/stringify.ts +385 -0
  247. package/src/internal/qs/types.ts +71 -0
  248. package/src/internal/qs/utils.ts +265 -0
  249. package/src/resources/v1/coupons.ts +89 -9
  250. package/src/resources/v1/customers/customers.ts +107 -12
  251. package/src/resources/v1/customers/index.ts +8 -2
  252. package/src/resources/v1/customers/payment-method.ts +4 -2
  253. package/src/resources/v1/customers/promotional-entitlements.ts +221 -18
  254. package/src/resources/v1/events/addons/addons.ts +761 -0
  255. package/src/resources/v1/events/addons/draft.ts +151 -0
  256. package/src/resources/v1/events/addons/index.ts +17 -0
  257. package/src/resources/v1/events/addons.ts +3 -0
  258. package/src/resources/v1/events/events.ts +160 -0
  259. package/src/resources/v1/events/features.ts +1066 -0
  260. package/src/resources/v1/events/index.ts +39 -0
  261. package/src/resources/v1/events/plans.ts +429 -0
  262. package/src/resources/v1/events.ts +1 -71
  263. package/src/resources/v1/index.ts +19 -1
  264. package/src/resources/v1/products.ts +829 -0
  265. package/src/resources/v1/subscriptions/future-update.ts +3 -2
  266. package/src/resources/v1/subscriptions/index.ts +7 -0
  267. package/src/resources/v1/subscriptions/invoice.ts +42 -0
  268. package/src/resources/v1/subscriptions/subscriptions.ts +235 -36
  269. package/src/resources/v1/subscriptions/usage.ts +126 -0
  270. package/src/resources/v1/usage.ts +3 -2
  271. package/src/resources/v1/v1.ts +42 -2
  272. package/src/version.ts +1 -1
  273. package/version.d.mts +1 -1
  274. package/version.d.ts +1 -1
  275. package/version.js +1 -1
  276. package/version.mjs +1 -1
@@ -0,0 +1,151 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../../../core/resource';
4
+ import { APIPromise } from '../../../../core/api-promise';
5
+ import { RequestOptions } from '../../../../internal/request-options';
6
+ import { path } from '../../../../internal/utils/path';
7
+
8
+ export class Draft extends APIResource {
9
+ /**
10
+ * Creates a draft version of an existing addon for modification before publishing.
11
+ */
12
+ createAddonDraft(id: string, options?: RequestOptions): APIPromise<DraftCreateAddonDraftResponse> {
13
+ return this._client.post(path`/api/v1/addons/${id}/draft`, options);
14
+ }
15
+
16
+ /**
17
+ * Removes a draft version of an addon.
18
+ */
19
+ removeAddonDraft(id: string, options?: RequestOptions): APIPromise<DraftRemoveAddonDraftResponse> {
20
+ return this._client.delete(path`/api/v1/addons/${id}/draft`, options);
21
+ }
22
+ }
23
+
24
+ /**
25
+ * Response object
26
+ */
27
+ export interface DraftCreateAddonDraftResponse {
28
+ /**
29
+ * Addon configuration object
30
+ */
31
+ data: DraftCreateAddonDraftResponse.Data;
32
+ }
33
+
34
+ export namespace DraftCreateAddonDraftResponse {
35
+ /**
36
+ * Addon configuration object
37
+ */
38
+ export interface Data {
39
+ /**
40
+ * The unique identifier for the entity
41
+ */
42
+ id: string;
43
+
44
+ /**
45
+ * The unique identifier for the entity in the billing provider
46
+ */
47
+ billingId: string | null;
48
+
49
+ /**
50
+ * Timestamp of when the record was created
51
+ */
52
+ createdAt: string;
53
+
54
+ /**
55
+ * List of addons the addon is dependant on
56
+ */
57
+ dependencies: Array<string> | null;
58
+
59
+ /**
60
+ * The description of the package
61
+ */
62
+ description: string | null;
63
+
64
+ /**
65
+ * The display name of the package
66
+ */
67
+ displayName: string;
68
+
69
+ /**
70
+ * List of entitlements of the package
71
+ */
72
+ entitlements: Array<Data.Entitlement>;
73
+
74
+ /**
75
+ * Indicates if the package is the latest version
76
+ */
77
+ isLatest: boolean | null;
78
+
79
+ /**
80
+ * The maximum quantity of this addon that can be added to a subscription
81
+ */
82
+ maxQuantity: number | null;
83
+
84
+ /**
85
+ * Metadata associated with the entity
86
+ */
87
+ metadata: { [key: string]: string };
88
+
89
+ /**
90
+ * The pricing type of the package
91
+ */
92
+ pricingType: 'FREE' | 'PAID' | 'CUSTOM' | null;
93
+
94
+ /**
95
+ * The product id of the package
96
+ */
97
+ productId: string;
98
+
99
+ /**
100
+ * The status of the package
101
+ */
102
+ status: 'DRAFT' | 'PUBLISHED' | 'ARCHIVED';
103
+
104
+ /**
105
+ * Timestamp of when the record was last updated
106
+ */
107
+ updatedAt: string;
108
+
109
+ /**
110
+ * The version number of the package
111
+ */
112
+ versionNumber: number;
113
+ }
114
+
115
+ export namespace Data {
116
+ /**
117
+ * Entitlement reference with type and identifier
118
+ */
119
+ export interface Entitlement {
120
+ /**
121
+ * The unique identifier for the entity
122
+ */
123
+ id: string;
124
+
125
+ type: 'FEATURE' | 'CREDIT';
126
+ }
127
+ }
128
+ }
129
+
130
+ /**
131
+ * Response confirming the addon draft was removed.
132
+ */
133
+ export interface DraftRemoveAddonDraftResponse {
134
+ data: DraftRemoveAddonDraftResponse.Data;
135
+ }
136
+
137
+ export namespace DraftRemoveAddonDraftResponse {
138
+ export interface Data {
139
+ /**
140
+ * The unique identifier for the entity
141
+ */
142
+ id: string;
143
+ }
144
+ }
145
+
146
+ export declare namespace Draft {
147
+ export {
148
+ type DraftCreateAddonDraftResponse as DraftCreateAddonDraftResponse,
149
+ type DraftRemoveAddonDraftResponse as DraftRemoveAddonDraftResponse,
150
+ };
151
+ }
@@ -0,0 +1,17 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ export {
4
+ Addons,
5
+ type AddonArchiveAddonResponse,
6
+ type AddonCreateAddonResponse,
7
+ type AddonListAddonsResponse,
8
+ type AddonPublishAddonResponse,
9
+ type AddonRetrieveAddonResponse,
10
+ type AddonUpdateAddonResponse,
11
+ type AddonCreateAddonParams,
12
+ type AddonListAddonsParams,
13
+ type AddonPublishAddonParams,
14
+ type AddonUpdateAddonParams,
15
+ type AddonListAddonsResponsesMyCursorIDPage,
16
+ } from './addons';
17
+ export { Draft, type DraftCreateAddonDraftResponse, type DraftRemoveAddonDraftResponse } from './draft';
@@ -0,0 +1,3 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ export * from './addons/index';
@@ -0,0 +1,160 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../../core/resource';
4
+ import * as FeaturesAPI from './features';
5
+ import {
6
+ FeatureArchiveFeatureResponse,
7
+ FeatureCreateFeatureParams,
8
+ FeatureCreateFeatureResponse,
9
+ FeatureListFeaturesParams,
10
+ FeatureListFeaturesResponse,
11
+ FeatureListFeaturesResponsesMyCursorIDPage,
12
+ FeatureRetrieveFeatureResponse,
13
+ FeatureUnarchiveFeatureResponse,
14
+ FeatureUpdateFeatureParams,
15
+ FeatureUpdateFeatureResponse,
16
+ Features,
17
+ } from './features';
18
+ import * as PlansAPI from './plans';
19
+ import {
20
+ PlanCreateParams,
21
+ PlanCreateResponse,
22
+ PlanListParams,
23
+ PlanListResponse,
24
+ PlanListResponsesMyCursorIDPage,
25
+ PlanRetrieveResponse,
26
+ Plans,
27
+ } from './plans';
28
+ import * as AddonsAPI from './addons/addons';
29
+ import {
30
+ AddonArchiveAddonResponse,
31
+ AddonCreateAddonParams,
32
+ AddonCreateAddonResponse,
33
+ AddonListAddonsParams,
34
+ AddonListAddonsResponse,
35
+ AddonListAddonsResponsesMyCursorIDPage,
36
+ AddonPublishAddonParams,
37
+ AddonPublishAddonResponse,
38
+ AddonRetrieveAddonResponse,
39
+ AddonUpdateAddonParams,
40
+ AddonUpdateAddonResponse,
41
+ Addons,
42
+ } from './addons/addons';
43
+ import { APIPromise } from '../../../core/api-promise';
44
+ import { RequestOptions } from '../../../internal/request-options';
45
+
46
+ export class Events extends APIResource {
47
+ features: FeaturesAPI.Features = new FeaturesAPI.Features(this._client);
48
+ addons: AddonsAPI.Addons = new AddonsAPI.Addons(this._client);
49
+ plans: PlansAPI.Plans = new PlansAPI.Plans(this._client);
50
+
51
+ /**
52
+ * Reports raw usage events for event-based metering. Events are ingested
53
+ * asynchronously and aggregated into usage totals.
54
+ */
55
+ report(body: EventReportParams, options?: RequestOptions): APIPromise<EventReportResponse> {
56
+ return this._client.post('/api/v1/events', { body, ...options });
57
+ }
58
+ }
59
+
60
+ /**
61
+ * Response object
62
+ */
63
+ export interface EventReportResponse {
64
+ /**
65
+ * Empty success response confirming that events were successfully ingested and
66
+ * queued for processing by Stigg's metering system.
67
+ */
68
+ data: unknown;
69
+ }
70
+
71
+ export interface EventReportParams {
72
+ /**
73
+ * A list of usage events to report
74
+ */
75
+ events: Array<EventReportParams.Event>;
76
+ }
77
+
78
+ export namespace EventReportParams {
79
+ /**
80
+ * Raw usage event
81
+ */
82
+ export interface Event {
83
+ /**
84
+ * Customer id
85
+ */
86
+ customerId: string;
87
+
88
+ /**
89
+ * The name of the usage event
90
+ */
91
+ eventName: string;
92
+
93
+ /**
94
+ * Idempotency key
95
+ */
96
+ idempotencyKey: string;
97
+
98
+ /**
99
+ * Dimensions associated with the usage event
100
+ */
101
+ dimensions?: { [key: string]: string | number | boolean };
102
+
103
+ /**
104
+ * Resource id
105
+ */
106
+ resourceId?: string | null;
107
+
108
+ /**
109
+ * Timestamp
110
+ */
111
+ timestamp?: string;
112
+ }
113
+ }
114
+
115
+ Events.Features = Features;
116
+ Events.Addons = Addons;
117
+ Events.Plans = Plans;
118
+
119
+ export declare namespace Events {
120
+ export { type EventReportResponse as EventReportResponse, type EventReportParams as EventReportParams };
121
+
122
+ export {
123
+ Features as Features,
124
+ type FeatureArchiveFeatureResponse as FeatureArchiveFeatureResponse,
125
+ type FeatureCreateFeatureResponse as FeatureCreateFeatureResponse,
126
+ type FeatureListFeaturesResponse as FeatureListFeaturesResponse,
127
+ type FeatureRetrieveFeatureResponse as FeatureRetrieveFeatureResponse,
128
+ type FeatureUnarchiveFeatureResponse as FeatureUnarchiveFeatureResponse,
129
+ type FeatureUpdateFeatureResponse as FeatureUpdateFeatureResponse,
130
+ type FeatureListFeaturesResponsesMyCursorIDPage as FeatureListFeaturesResponsesMyCursorIDPage,
131
+ type FeatureCreateFeatureParams as FeatureCreateFeatureParams,
132
+ type FeatureListFeaturesParams as FeatureListFeaturesParams,
133
+ type FeatureUpdateFeatureParams as FeatureUpdateFeatureParams,
134
+ };
135
+
136
+ export {
137
+ Addons as Addons,
138
+ type AddonArchiveAddonResponse as AddonArchiveAddonResponse,
139
+ type AddonCreateAddonResponse as AddonCreateAddonResponse,
140
+ type AddonListAddonsResponse as AddonListAddonsResponse,
141
+ type AddonPublishAddonResponse as AddonPublishAddonResponse,
142
+ type AddonRetrieveAddonResponse as AddonRetrieveAddonResponse,
143
+ type AddonUpdateAddonResponse as AddonUpdateAddonResponse,
144
+ type AddonListAddonsResponsesMyCursorIDPage as AddonListAddonsResponsesMyCursorIDPage,
145
+ type AddonCreateAddonParams as AddonCreateAddonParams,
146
+ type AddonListAddonsParams as AddonListAddonsParams,
147
+ type AddonPublishAddonParams as AddonPublishAddonParams,
148
+ type AddonUpdateAddonParams as AddonUpdateAddonParams,
149
+ };
150
+
151
+ export {
152
+ Plans as Plans,
153
+ type PlanCreateResponse as PlanCreateResponse,
154
+ type PlanRetrieveResponse as PlanRetrieveResponse,
155
+ type PlanListResponse as PlanListResponse,
156
+ type PlanListResponsesMyCursorIDPage as PlanListResponsesMyCursorIDPage,
157
+ type PlanCreateParams as PlanCreateParams,
158
+ type PlanListParams as PlanListParams,
159
+ };
160
+ }