@openmeter/sdk 1.0.0-beta.99 → 1.0.0-beta-9958c9245841

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 (203) hide show
  1. package/Makefile +43 -0
  2. package/README.md +232 -137
  3. package/biome.json +67 -0
  4. package/dist/cjs/index.cjs +15 -21
  5. package/dist/cjs/index.d.cts +1 -15
  6. package/dist/cjs/index.js.map +1 -1
  7. package/dist/cjs/src/client/addons.cjs +105 -0
  8. package/dist/cjs/src/client/addons.d.cts +152 -0
  9. package/dist/cjs/src/client/addons.js.map +1 -0
  10. package/dist/cjs/src/client/apps.cjs +247 -0
  11. package/dist/cjs/src/client/apps.d.cts +327 -0
  12. package/dist/cjs/src/client/apps.js.map +1 -0
  13. package/dist/cjs/src/client/billing.cjs +375 -0
  14. package/dist/cjs/src/client/billing.d.cts +563 -0
  15. package/dist/cjs/src/client/billing.js.map +1 -0
  16. package/dist/cjs/src/client/common.cjs +47 -0
  17. package/dist/cjs/src/client/common.d.cts +30 -0
  18. package/dist/cjs/src/client/common.js.map +1 -0
  19. package/dist/cjs/src/client/customers.cjs +469 -0
  20. package/dist/cjs/src/client/customers.d.cts +617 -0
  21. package/dist/cjs/src/client/customers.js.map +1 -0
  22. package/dist/cjs/src/client/debug.cjs +27 -0
  23. package/dist/cjs/src/client/debug.d.cts +17 -0
  24. package/dist/cjs/src/client/debug.js.map +1 -0
  25. package/dist/cjs/src/client/entitlements.cjs +372 -0
  26. package/dist/cjs/src/client/entitlements.d.cts +670 -0
  27. package/dist/cjs/src/client/entitlements.js.map +1 -0
  28. package/dist/cjs/src/client/events.cjs +113 -0
  29. package/dist/cjs/src/client/events.d.cts +48 -0
  30. package/dist/cjs/src/client/events.js.map +1 -0
  31. package/dist/cjs/src/client/features.cjs +78 -0
  32. package/dist/cjs/src/client/features.d.cts +87 -0
  33. package/dist/cjs/src/client/features.js.map +1 -0
  34. package/dist/cjs/src/client/index.cjs +122 -0
  35. package/dist/cjs/src/client/index.d.cts +54 -0
  36. package/dist/cjs/src/client/index.js.map +1 -0
  37. package/dist/cjs/src/client/info.cjs +42 -0
  38. package/dist/cjs/src/client/info.d.cts +34 -0
  39. package/dist/cjs/src/client/info.js.map +1 -0
  40. package/dist/cjs/src/client/meters.cjs +160 -0
  41. package/dist/cjs/src/client/meters.d.cts +151 -0
  42. package/dist/cjs/src/client/meters.js.map +1 -0
  43. package/dist/cjs/src/client/notifications.cjs +269 -0
  44. package/dist/cjs/src/client/notifications.d.cts +412 -0
  45. package/dist/cjs/src/client/notifications.js.map +1 -0
  46. package/dist/cjs/src/client/plans.cjs +204 -0
  47. package/dist/cjs/src/client/plans.d.cts +247 -0
  48. package/dist/cjs/src/client/plans.js.map +1 -0
  49. package/dist/cjs/src/client/portal.cjs +55 -0
  50. package/dist/cjs/src/client/portal.d.cts +48 -0
  51. package/dist/cjs/src/client/portal.js.map +1 -0
  52. package/dist/cjs/src/client/schemas.cjs +3 -0
  53. package/dist/cjs/src/client/schemas.d.cts +27081 -0
  54. package/dist/cjs/src/client/schemas.js.map +1 -0
  55. package/dist/cjs/src/client/subjects.cjs +76 -0
  56. package/dist/cjs/src/client/subjects.d.cts +79 -0
  57. package/dist/cjs/src/client/subjects.js.map +1 -0
  58. package/dist/cjs/src/client/subscription-addons.cjs +70 -0
  59. package/dist/cjs/src/client/subscription-addons.d.cts +123 -0
  60. package/dist/cjs/src/client/subscription-addons.js.map +1 -0
  61. package/dist/cjs/src/client/subscriptions.cjs +132 -0
  62. package/dist/cjs/src/client/subscriptions.d.cts +175 -0
  63. package/dist/cjs/src/client/subscriptions.js.map +1 -0
  64. package/dist/cjs/src/client/utils.cjs +67 -0
  65. package/dist/cjs/src/client/utils.d.cts +12 -0
  66. package/dist/cjs/src/client/utils.js.map +1 -0
  67. package/dist/cjs/src/portal/index.cjs +89 -0
  68. package/dist/cjs/src/portal/index.d.cts +43 -0
  69. package/dist/cjs/src/portal/index.js.map +1 -0
  70. package/dist/cjs/src/react/context.cjs +35 -0
  71. package/dist/cjs/src/react/context.d.cts +9 -0
  72. package/dist/cjs/src/react/context.js.map +1 -0
  73. package/dist/cjs/src/zod/index.cjs +13102 -0
  74. package/dist/cjs/src/zod/index.d.cts +20044 -0
  75. package/dist/cjs/src/zod/index.js.map +1 -0
  76. package/dist/cjs/tsconfig.0781fa96.tsbuildinfo +1 -0
  77. package/dist/cjs/tsconfig.6c95ff08.tsbuildinfo +1 -0
  78. package/dist/index.d.ts +1 -15
  79. package/dist/index.js +1 -17
  80. package/dist/index.js.map +1 -1
  81. package/dist/src/client/addons.d.ts +152 -0
  82. package/dist/src/client/addons.js +101 -0
  83. package/dist/src/client/addons.js.map +1 -0
  84. package/dist/src/client/apps.d.ts +327 -0
  85. package/dist/src/client/apps.js +240 -0
  86. package/dist/src/client/apps.js.map +1 -0
  87. package/dist/src/client/billing.d.ts +563 -0
  88. package/dist/src/client/billing.js +368 -0
  89. package/dist/src/client/billing.js.map +1 -0
  90. package/dist/src/client/common.d.ts +30 -0
  91. package/dist/src/client/common.js +42 -0
  92. package/dist/src/client/common.js.map +1 -0
  93. package/dist/src/client/customers.d.ts +617 -0
  94. package/dist/src/client/customers.js +461 -0
  95. package/dist/src/client/customers.js.map +1 -0
  96. package/dist/src/client/debug.d.ts +17 -0
  97. package/dist/src/client/debug.js +23 -0
  98. package/dist/src/client/debug.js.map +1 -0
  99. package/dist/src/client/entitlements.d.ts +670 -0
  100. package/dist/src/client/entitlements.js +365 -0
  101. package/dist/src/client/entitlements.js.map +1 -0
  102. package/dist/src/client/events.d.ts +48 -0
  103. package/dist/src/client/events.js +108 -0
  104. package/dist/src/client/events.js.map +1 -0
  105. package/dist/src/client/features.d.ts +87 -0
  106. package/dist/src/client/features.js +74 -0
  107. package/dist/src/client/features.js.map +1 -0
  108. package/dist/src/client/index.d.ts +54 -0
  109. package/dist/src/client/index.js +82 -0
  110. package/dist/src/client/index.js.map +1 -0
  111. package/dist/src/client/info.d.ts +34 -0
  112. package/dist/src/client/info.js +38 -0
  113. package/dist/src/client/info.js.map +1 -0
  114. package/dist/src/client/meters.d.ts +151 -0
  115. package/dist/src/client/meters.js +156 -0
  116. package/dist/src/client/meters.js.map +1 -0
  117. package/dist/src/client/notifications.d.ts +412 -0
  118. package/dist/src/client/notifications.js +262 -0
  119. package/dist/src/client/notifications.js.map +1 -0
  120. package/dist/src/client/plans.d.ts +247 -0
  121. package/dist/src/client/plans.js +199 -0
  122. package/dist/src/client/plans.js.map +1 -0
  123. package/dist/src/client/portal.d.ts +48 -0
  124. package/dist/src/client/portal.js +51 -0
  125. package/dist/src/client/portal.js.map +1 -0
  126. package/dist/src/client/schemas.d.ts +27081 -0
  127. package/dist/src/client/schemas.js +2 -0
  128. package/dist/src/client/schemas.js.map +1 -0
  129. package/dist/src/client/subjects.d.ts +79 -0
  130. package/dist/src/client/subjects.js +72 -0
  131. package/dist/src/client/subjects.js.map +1 -0
  132. package/dist/src/client/subscription-addons.d.ts +123 -0
  133. package/dist/src/client/subscription-addons.js +66 -0
  134. package/dist/src/client/subscription-addons.js.map +1 -0
  135. package/dist/src/client/subscriptions.d.ts +175 -0
  136. package/dist/src/client/subscriptions.js +128 -0
  137. package/dist/src/client/subscriptions.js.map +1 -0
  138. package/dist/src/client/utils.d.ts +12 -0
  139. package/dist/src/client/utils.js +61 -0
  140. package/dist/src/client/utils.js.map +1 -0
  141. package/dist/src/portal/index.d.ts +43 -0
  142. package/dist/src/portal/index.js +52 -0
  143. package/dist/src/portal/index.js.map +1 -0
  144. package/dist/src/react/context.d.ts +9 -0
  145. package/dist/src/react/context.js +16 -0
  146. package/dist/src/react/context.js.map +1 -0
  147. package/dist/src/zod/index.d.ts +20044 -0
  148. package/dist/src/zod/index.js +13071 -0
  149. package/dist/src/zod/index.js.map +1 -0
  150. package/dist/tsconfig.tsbuildinfo +1 -1
  151. package/orval.config.ts +38 -0
  152. package/package.json +62 -32
  153. package/patches/openapi-typescript.patch +6194 -0
  154. package/dist/cjs/clients/client.cjs +0 -117
  155. package/dist/cjs/clients/client.d.cts +0 -40
  156. package/dist/cjs/clients/client.js.map +0 -1
  157. package/dist/cjs/clients/event.cjs +0 -71
  158. package/dist/cjs/clients/event.d.cts +0 -79
  159. package/dist/cjs/clients/event.js.map +0 -1
  160. package/dist/cjs/clients/meter.cjs +0 -69
  161. package/dist/cjs/clients/meter.d.cts +0 -75
  162. package/dist/cjs/clients/meter.js.map +0 -1
  163. package/dist/cjs/clients/portal.cjs +0 -41
  164. package/dist/cjs/clients/portal.d.cts +0 -22
  165. package/dist/cjs/clients/portal.js.map +0 -1
  166. package/dist/cjs/clients/subject.cjs +0 -60
  167. package/dist/cjs/clients/subject.d.cts +0 -27
  168. package/dist/cjs/clients/subject.js.map +0 -1
  169. package/dist/cjs/schemas/openapi.cjs +0 -7
  170. package/dist/cjs/schemas/openapi.d.cts +0 -2078
  171. package/dist/cjs/schemas/openapi.js.map +0 -1
  172. package/dist/cjs/test/agent.cjs +0 -266
  173. package/dist/cjs/test/agent.d.cts +0 -2
  174. package/dist/cjs/test/agent.js.map +0 -1
  175. package/dist/cjs/test/mocks.cjs +0 -44
  176. package/dist/cjs/test/mocks.d.cts +0 -14
  177. package/dist/cjs/test/mocks.js.map +0 -1
  178. package/dist/cjs/tsconfig.8be50ffd.tsbuildinfo +0 -1
  179. package/dist/cjs/tsconfig.9c9b19d3.tsbuildinfo +0 -1
  180. package/dist/clients/client.d.ts +0 -40
  181. package/dist/clients/client.js +0 -112
  182. package/dist/clients/client.js.map +0 -1
  183. package/dist/clients/event.d.ts +0 -79
  184. package/dist/clients/event.js +0 -64
  185. package/dist/clients/event.js.map +0 -1
  186. package/dist/clients/meter.d.ts +0 -75
  187. package/dist/clients/meter.js +0 -65
  188. package/dist/clients/meter.js.map +0 -1
  189. package/dist/clients/portal.d.ts +0 -22
  190. package/dist/clients/portal.js +0 -37
  191. package/dist/clients/portal.js.map +0 -1
  192. package/dist/clients/subject.d.ts +0 -27
  193. package/dist/clients/subject.js +0 -56
  194. package/dist/clients/subject.js.map +0 -1
  195. package/dist/schemas/openapi.d.ts +0 -2078
  196. package/dist/schemas/openapi.js +0 -6
  197. package/dist/schemas/openapi.js.map +0 -1
  198. package/dist/test/agent.d.ts +0 -2
  199. package/dist/test/agent.js +0 -263
  200. package/dist/test/agent.js.map +0 -1
  201. package/dist/test/mocks.d.ts +0 -14
  202. package/dist/test/mocks.js +0 -41
  203. package/dist/test/mocks.js.map +0 -1
@@ -0,0 +1,368 @@
1
+ import { transformResponse } from './utils.js';
2
+ /**
3
+ * Billing
4
+ */
5
+ export class Billing {
6
+ client;
7
+ profiles;
8
+ invoices;
9
+ customers;
10
+ constructor(client) {
11
+ this.client = client;
12
+ this.profiles = new BillingProfiles(this.client);
13
+ this.invoices = new BillingInvoices(this.client);
14
+ this.customers = new BillingCustomers(this.client);
15
+ }
16
+ }
17
+ /**
18
+ * Billing Profiles
19
+ */
20
+ export class BillingProfiles {
21
+ client;
22
+ constructor(client) {
23
+ this.client = client;
24
+ }
25
+ /**
26
+ * Create a billing profile
27
+ * @param billingProfile - The billing profile to create
28
+ * @param signal - An optional abort signal
29
+ * @returns The created billing profile
30
+ */
31
+ async create(billingProfile, options) {
32
+ const resp = await this.client.POST('/api/v1/billing/profiles', {
33
+ body: billingProfile,
34
+ ...options,
35
+ });
36
+ return transformResponse(resp);
37
+ }
38
+ /**
39
+ * Get a billing profile by ID
40
+ * @param id - The ID of the billing profile to get
41
+ * @param signal - An optional abort signal
42
+ * @returns The billing profile
43
+ */
44
+ async get(id, options) {
45
+ const resp = await this.client.GET('/api/v1/billing/profiles/{id}', {
46
+ params: {
47
+ path: { id },
48
+ },
49
+ ...options,
50
+ });
51
+ return transformResponse(resp);
52
+ }
53
+ /**
54
+ * List billing profiles
55
+ * @param query - The query parameters
56
+ * @param signal - An optional abort signal
57
+ * @returns The billing profiles
58
+ */
59
+ async list(query, options) {
60
+ const resp = await this.client.GET('/api/v1/billing/profiles', {
61
+ params: {
62
+ query,
63
+ },
64
+ ...options,
65
+ });
66
+ return transformResponse(resp);
67
+ }
68
+ /**
69
+ * Update a billing profile
70
+ * @param id - The ID of the billing profile to update
71
+ * @param billingProfile - The billing profile to update
72
+ * @param signal - An optional abort signal
73
+ * @returns The updated billing profile
74
+ */
75
+ async update(id, billingProfile, options) {
76
+ const resp = await this.client.PUT('/api/v1/billing/profiles/{id}', {
77
+ body: billingProfile,
78
+ params: {
79
+ path: { id },
80
+ },
81
+ ...options,
82
+ });
83
+ return transformResponse(resp);
84
+ }
85
+ /**
86
+ * Delete a billing profile
87
+ * @param id - The ID of the billing profile to delete
88
+ * @param options - The request options
89
+ * @returns The deleted billing profile
90
+ */
91
+ async delete(id, options) {
92
+ const resp = await this.client.DELETE('/api/v1/billing/profiles/{id}', {
93
+ params: {
94
+ path: { id },
95
+ },
96
+ ...options,
97
+ });
98
+ return transformResponse(resp);
99
+ }
100
+ }
101
+ /**
102
+ * Billing Invoices
103
+ */
104
+ export class BillingInvoices {
105
+ client;
106
+ constructor(client) {
107
+ this.client = client;
108
+ }
109
+ /**
110
+ * List invoices
111
+ * @param query - The query parameters
112
+ * @param signal - An optional abort signal
113
+ * @returns The invoices
114
+ */
115
+ async list(query, options) {
116
+ const resp = await this.client.GET('/api/v1/billing/invoices', {
117
+ params: {
118
+ query,
119
+ },
120
+ ...options,
121
+ });
122
+ return transformResponse(resp);
123
+ }
124
+ /**
125
+ * Get an invoice by ID
126
+ * @param id - The ID of the invoice to get
127
+ * @param signal - An optional abort signal
128
+ * @returns The invoice
129
+ */
130
+ async get(id, options) {
131
+ const resp = await this.client.GET('/api/v1/billing/invoices/{invoiceId}', {
132
+ params: {
133
+ path: { invoiceId: id },
134
+ },
135
+ ...options,
136
+ });
137
+ return transformResponse(resp);
138
+ }
139
+ /**
140
+ * Update an invoice
141
+ * @description Only invoices in draft or earlier status can be updated.
142
+ * @param id - The ID of the invoice to update
143
+ * @param invoice - The invoice to update
144
+ * @param signal - An optional abort signal
145
+ * @returns The updated invoice
146
+ */
147
+ async update(id, invoice, options) {
148
+ const resp = await this.client.PUT('/api/v1/billing/invoices/{invoiceId}', {
149
+ body: invoice,
150
+ params: { path: { invoiceId: id } },
151
+ ...options,
152
+ });
153
+ return transformResponse(resp);
154
+ }
155
+ /**
156
+ * Delete an invoice
157
+ * @description Only invoices that are in the draft (or earlier) status can be deleted.
158
+ * @param id - The ID of the invoice to delete
159
+ * @param options - The request options
160
+ * @returns The deleted invoice
161
+ */
162
+ async delete(id, options) {
163
+ const resp = await this.client.DELETE('/api/v1/billing/invoices/{invoiceId}', {
164
+ params: { path: { invoiceId: id } },
165
+ ...options,
166
+ });
167
+ return transformResponse(resp);
168
+ }
169
+ /**
170
+ * Advance the invoice to the next status
171
+ * @description The call doesn't "approve the invoice", it only advances the invoice to the next status if the transition would be automatic. The action can be called when the invoice's statusDetails' actions field contain the "advance" action.
172
+ * @param id - The ID of the invoice to advance
173
+ * @param signal - An optional abort signal
174
+ * @returns The advanced invoice
175
+ */
176
+ async advance(id, options) {
177
+ const resp = await this.client.POST('/api/v1/billing/invoices/{invoiceId}/advance', {
178
+ params: { path: { invoiceId: id } },
179
+ ...options,
180
+ });
181
+ return transformResponse(resp);
182
+ }
183
+ /**
184
+ * Approve an invoice
185
+ * @description This call instantly sends the invoice to the customer using the configured billing profile app.
186
+ * @param id - The ID of the invoice to approve
187
+ * @param signal - An optional abort signal
188
+ * @returns The approved invoice
189
+ */
190
+ async approve(id, options) {
191
+ const resp = await this.client.POST('/api/v1/billing/invoices/{invoiceId}/approve', {
192
+ params: { path: { invoiceId: id } },
193
+ ...options,
194
+ });
195
+ return transformResponse(resp);
196
+ }
197
+ /**
198
+ * Retry advancing the invoice after a failed attempt.
199
+ * @param id - The ID of the invoice to retry
200
+ * @param signal - An optional abort signal
201
+ * @returns The retried invoice
202
+ */
203
+ async retry(id, options) {
204
+ const resp = await this.client.POST('/api/v1/billing/invoices/{invoiceId}/retry', {
205
+ params: { path: { invoiceId: id } },
206
+ ...options,
207
+ });
208
+ return transformResponse(resp);
209
+ }
210
+ /**
211
+ * Void an invoice
212
+ * @description Void an invoice
213
+ *
214
+ * Only invoices that have been alread issued can be voided.
215
+ * @param id - The ID of the invoice to void
216
+ * @param signal - An optional abort signal
217
+ * @returns The voided invoice
218
+ */
219
+ async void(id, body, options) {
220
+ const resp = await this.client.POST('/api/v1/billing/invoices/{invoiceId}/void', {
221
+ body,
222
+ params: { path: { invoiceId: id } },
223
+ ...options,
224
+ });
225
+ return transformResponse(resp);
226
+ }
227
+ /**
228
+ * Recalculate an invoice's tax amounts
229
+ * @param id - The ID of the invoice to recalculate
230
+ * @param signal - An optional abort signal
231
+ * @returns The recalculated invoice
232
+ */
233
+ async recalculateTax(id, options) {
234
+ const resp = await this.client.POST('/api/v1/billing/invoices/{invoiceId}/taxes/recalculate', {
235
+ params: { path: { invoiceId: id } },
236
+ ...options,
237
+ });
238
+ return transformResponse(resp);
239
+ }
240
+ /**
241
+ * Snapshot invoice line item quantities
242
+ * @description Snapshot the quantities of the invoice line items. This is useful for invoices that have usage-based line items.
243
+ * @param id - The ID of the invoice to snapshot
244
+ * @param signal - An optional abort signal
245
+ * @returns The invoice with snapshotted quantities
246
+ */
247
+ async snapshotQuantities(id, options) {
248
+ const resp = await this.client.POST('/api/v1/billing/invoices/{invoiceId}/snapshot-quantities', {
249
+ params: { path: { invoiceId: id } },
250
+ ...options,
251
+ });
252
+ return transformResponse(resp);
253
+ }
254
+ /**
255
+ * Simulate an invoice for a customer
256
+ * @param id - The ID of the customer to simulate the invoice for
257
+ * @param signal - An optional abort signal
258
+ * @returns The simulated invoice
259
+ */
260
+ async simulate(id, body, options) {
261
+ const resp = await this.client.POST('/api/v1/billing/customers/{customerId}/invoices/simulate', {
262
+ body,
263
+ params: { path: { customerId: id } },
264
+ ...options,
265
+ });
266
+ return transformResponse(resp);
267
+ }
268
+ /**
269
+ * Create pending line items
270
+ * @description Create new pending line items (charges).
271
+ * This call is used to create a new pending line item for the customer if required a new
272
+ * gathering invoice will be created.
273
+ *
274
+ * A new invoice will be created if:
275
+ * - there is no invoice in gathering state
276
+ * - the currency of the line item doesn't match the currency of any invoices in gathering state
277
+ * @param customerId - The ID of the customer to create the line items for
278
+ * @param body - The line items to create
279
+ * @param signal - An optional abort signal
280
+ * @returns The created line items
281
+ */
282
+ async createLineItems(customerId, body, options) {
283
+ const resp = await this.client.POST('/api/v1/billing/customers/{customerId}/invoices/pending-lines', {
284
+ body,
285
+ params: { path: { customerId } },
286
+ ...options,
287
+ });
288
+ return transformResponse(resp);
289
+ }
290
+ /**
291
+ * Invoice a customer based on the pending line items
292
+ * @description Create a new invoice from the pending line items. This should only be called if for some reason we need to invoice a customer outside of the normal billing cycle.
293
+ * @param body - The invoice data
294
+ * @param options - The request options
295
+ * @returns The created invoices
296
+ */
297
+ async invoicePendingLines(body, options) {
298
+ const resp = await this.client.POST('/api/v1/billing/invoices/invoice', {
299
+ body,
300
+ ...options,
301
+ });
302
+ return transformResponse(resp);
303
+ }
304
+ }
305
+ /**
306
+ * Billing Customer Invoices and Overrides
307
+ */
308
+ export class BillingCustomers {
309
+ client;
310
+ constructor(client) {
311
+ this.client = client;
312
+ }
313
+ /**
314
+ * Create or update a customer override
315
+ * @param id - The ID of the customer to create the override for
316
+ * @param body - The customer override to create
317
+ * @param signal - An optional abort signal
318
+ * @returns The created customer override
319
+ */
320
+ async createOverride(id, body, options) {
321
+ const resp = await this.client.PUT('/api/v1/billing/customers/{customerId}', {
322
+ body,
323
+ params: { path: { customerId: id } },
324
+ ...options,
325
+ });
326
+ return transformResponse(resp);
327
+ }
328
+ /**
329
+ * Get a customer override
330
+ * @param id - The ID of the customer to get the override for
331
+ * @param signal - An optional abort signal
332
+ * @returns The customer override
333
+ */
334
+ async getOverride(id, options) {
335
+ const resp = await this.client.GET('/api/v1/billing/customers/{customerId}', {
336
+ params: { path: { customerId: id } },
337
+ ...options,
338
+ });
339
+ return transformResponse(resp);
340
+ }
341
+ /**
342
+ * List customer overrides
343
+ * @param query - The query parameters
344
+ * @param signal - An optional abort signal
345
+ * @returns The customer overrides
346
+ */
347
+ async listOverrides(query, options) {
348
+ const resp = await this.client.GET('/api/v1/billing/customers', {
349
+ params: { query },
350
+ ...options,
351
+ });
352
+ return transformResponse(resp);
353
+ }
354
+ /**
355
+ * Delete a customer override
356
+ * @param id - The ID of the customer to delete the override for
357
+ * @param signal - An optional abort signal
358
+ * @returns The deleted customer override
359
+ */
360
+ async deleteOverride(id, options) {
361
+ const resp = await this.client.DELETE('/api/v1/billing/customers/{customerId}', {
362
+ params: { path: { customerId: id } },
363
+ ...options,
364
+ });
365
+ return transformResponse(resp);
366
+ }
367
+ }
368
+ //# sourceMappingURL=billing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"billing.js","sourceRoot":"","sources":["../../../src/client/billing.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import type { UnexpectedProblemResponse } from './schemas.js';
2
+ /**
3
+ * Request options
4
+ */
5
+ export type RequestOptions = Pick<RequestInit, 'signal'>;
6
+ /**
7
+ * An error that occurred during an HTTP request
8
+ */
9
+ export declare class HTTPError extends Error {
10
+ message: string;
11
+ type: string;
12
+ title: string;
13
+ status: number;
14
+ url: string;
15
+ protected __raw?: Record<string, unknown> | undefined;
16
+ name: string;
17
+ client: string;
18
+ constructor(message: string, type: string, title: string, status: number, url: string, __raw?: Record<string, unknown> | undefined);
19
+ static fromResponse(resp: {
20
+ response: Response;
21
+ error?: UnexpectedProblemResponse;
22
+ }): HTTPError;
23
+ getField(key: string): unknown;
24
+ }
25
+ /**
26
+ * Check if an error is an HTTPError
27
+ * @param error - The error to check
28
+ * @returns Whether the error is an HTTPError
29
+ */
30
+ export declare function isHTTPError(error: unknown): error is HTTPError;
@@ -0,0 +1,42 @@
1
+ /**
2
+ * An error that occurred during an HTTP request
3
+ */
4
+ export class HTTPError extends Error {
5
+ message;
6
+ type;
7
+ title;
8
+ status;
9
+ url;
10
+ __raw;
11
+ name = 'HTTPError';
12
+ client = 'OpenMeter';
13
+ constructor(message, type, title, status, url, __raw) {
14
+ super(message);
15
+ this.message = message;
16
+ this.type = type;
17
+ this.title = title;
18
+ this.status = status;
19
+ this.url = url;
20
+ this.__raw = __raw;
21
+ }
22
+ static fromResponse(resp) {
23
+ if (resp.response.headers.get('Content-Type') ===
24
+ 'application/problem+json' &&
25
+ resp.error) {
26
+ return new HTTPError(`Request failed (${resp.response.url}) [${resp.response.status}]: ${resp.error.detail}`, resp.error.type, resp.error.title, resp.error.status ?? resp.response.status, resp.response.url, resp.error);
27
+ }
28
+ return new HTTPError(`Request failed (${resp.response.url}) [${resp.response.status}]: ${resp.response.statusText}`, resp.response.statusText, resp.response.statusText, resp.response.status, resp.response.url);
29
+ }
30
+ getField(key) {
31
+ return this.__raw?.[key];
32
+ }
33
+ }
34
+ /**
35
+ * Check if an error is an HTTPError
36
+ * @param error - The error to check
37
+ * @returns Whether the error is an HTTPError
38
+ */
39
+ export function isHTTPError(error) {
40
+ return error instanceof HTTPError;
41
+ }
42
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/client/common.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,MAAM,OAAO,SAAU,SAAQ,KAAK;IAKzB;IACA;IACA;IACA;IACA;IACG;IATL,IAAI,GAAG,WAAW,CAAA;IAClB,MAAM,GAAG,WAAW,CAAA;IAE3B,YACS,OAAe,EACf,IAAY,EACZ,KAAa,EACb,MAAc,EACd,GAAW,EACR,KAA+B;QAEzC,KAAK,CAAC,OAAO,CAAC,CAAA;QAPP,YAAO,GAAP,OAAO,CAAQ;QACf,SAAI,GAAJ,IAAI,CAAQ;QACZ,UAAK,GAAL,KAAK,CAAQ;QACb,WAAM,GAAN,MAAM,CAAQ;QACd,QAAG,GAAH,GAAG,CAAQ;QACR,UAAK,GAAL,KAAK,CAA0B;IAG3C,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,IAGnB;QACC,IACE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;YACvC,0BAA0B;YAC5B,IAAI,CAAC,KAAK,EACV,CAAC;YACD,OAAO,IAAI,SAAS,CAClB,mBAAmB,IAAI,CAAC,QAAQ,CAAC,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EACvF,IAAI,CAAC,KAAK,CAAC,IAAI,EACf,IAAI,CAAC,KAAK,CAAC,KAAK,EAChB,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EACzC,IAAI,CAAC,QAAQ,CAAC,GAAG,EACjB,IAAI,CAAC,KAAK,CACX,CAAA;QACH,CAAC;QAED,OAAO,IAAI,SAAS,CAClB,mBAAmB,IAAI,CAAC,QAAQ,CAAC,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,EAC9F,IAAI,CAAC,QAAQ,CAAC,UAAU,EACxB,IAAI,CAAC,QAAQ,CAAC,UAAU,EACxB,IAAI,CAAC,QAAQ,CAAC,MAAM,EACpB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAClB,CAAA;IACH,CAAC;IAED,QAAQ,CAAC,GAAW;QAClB,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAA;IAC1B,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,OAAO,KAAK,YAAY,SAAS,CAAA;AACnC,CAAC"}