@openmeter/sdk 1.0.0-beta.185 → 1.0.0-beta.188

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 (199) hide show
  1. package/README.md +38 -309
  2. package/dist/cjs/index.cjs +1 -34
  3. package/dist/cjs/index.d.cts +1 -24
  4. package/dist/cjs/index.js.map +1 -1
  5. package/dist/cjs/src/client/apps.cjs +174 -0
  6. package/dist/cjs/src/client/apps.d.cts +259 -0
  7. package/dist/cjs/src/client/apps.js.map +1 -0
  8. package/dist/cjs/src/client/billing.cjs +309 -0
  9. package/dist/cjs/src/client/billing.d.cts +510 -0
  10. package/dist/cjs/src/client/billing.js.map +1 -0
  11. package/dist/cjs/src/client/common.cjs +47 -0
  12. package/dist/cjs/src/client/common.d.cts +30 -0
  13. package/dist/cjs/src/client/common.js.map +1 -0
  14. package/dist/cjs/src/client/customers.cjs +185 -0
  15. package/dist/cjs/src/client/customers.d.cts +163 -0
  16. package/dist/cjs/src/client/customers.js.map +1 -0
  17. package/dist/cjs/src/client/entitlements.cjs +244 -0
  18. package/dist/cjs/src/client/entitlements.d.cts +442 -0
  19. package/dist/cjs/src/client/entitlements.js.map +1 -0
  20. package/dist/cjs/src/client/events.cjs +66 -0
  21. package/dist/cjs/src/client/events.d.cts +31 -0
  22. package/dist/cjs/src/client/events.js.map +1 -0
  23. package/dist/cjs/src/client/features.cjs +78 -0
  24. package/dist/cjs/src/client/features.d.cts +78 -0
  25. package/dist/cjs/src/client/features.js.map +1 -0
  26. package/dist/cjs/src/client/index.cjs +108 -0
  27. package/dist/cjs/src/client/index.d.cts +45 -0
  28. package/dist/cjs/src/client/index.js.map +1 -0
  29. package/dist/cjs/src/client/meters.cjs +93 -0
  30. package/dist/cjs/src/client/meters.d.cts +145 -0
  31. package/dist/cjs/src/client/meters.js.map +1 -0
  32. package/dist/cjs/src/client/notifications.cjs +249 -0
  33. package/dist/cjs/src/client/notifications.d.cts +219 -0
  34. package/dist/cjs/src/client/notifications.js.map +1 -0
  35. package/dist/cjs/src/client/plans.cjs +127 -0
  36. package/dist/cjs/src/client/plans.d.cts +142 -0
  37. package/dist/cjs/src/client/plans.js.map +1 -0
  38. package/dist/cjs/src/client/portal.cjs +55 -0
  39. package/dist/cjs/src/client/portal.d.cts +48 -0
  40. package/dist/cjs/src/client/portal.js.map +1 -0
  41. package/dist/cjs/{clients/pagination.cjs → src/client/schemas.cjs} +1 -1
  42. package/dist/cjs/src/client/schemas.d.cts +17247 -0
  43. package/dist/cjs/src/client/schemas.js.map +1 -0
  44. package/dist/cjs/src/client/subjects.cjs +76 -0
  45. package/dist/cjs/src/client/subjects.d.cts +70 -0
  46. package/dist/cjs/src/client/subjects.js.map +1 -0
  47. package/dist/cjs/src/client/subscriptions.cjs +116 -0
  48. package/dist/cjs/src/client/subscriptions.d.cts +147 -0
  49. package/dist/cjs/src/client/subscriptions.js.map +1 -0
  50. package/dist/cjs/src/client/utils.cjs +69 -0
  51. package/dist/cjs/src/client/utils.d.cts +12 -0
  52. package/dist/cjs/src/client/utils.js.map +1 -0
  53. package/dist/cjs/src/portal/index.cjs +57 -0
  54. package/dist/cjs/src/portal/index.d.cts +104 -0
  55. package/dist/cjs/src/portal/index.js.map +1 -0
  56. package/dist/cjs/src/react/context.cjs +35 -0
  57. package/dist/cjs/src/react/context.d.cts +9 -0
  58. package/dist/cjs/src/react/context.js.map +1 -0
  59. package/dist/cjs/tsconfig.2ca900e0.tsbuildinfo +1 -0
  60. package/dist/cjs/tsconfig.7693db96.tsbuildinfo +1 -0
  61. package/dist/index.d.ts +1 -24
  62. package/dist/index.js +1 -30
  63. package/dist/index.js.map +1 -1
  64. package/dist/src/client/apps.d.ts +259 -0
  65. package/dist/src/client/apps.js +168 -0
  66. package/dist/src/client/apps.js.map +1 -0
  67. package/dist/src/client/billing.d.ts +510 -0
  68. package/dist/src/client/billing.js +302 -0
  69. package/dist/src/client/billing.js.map +1 -0
  70. package/dist/src/client/common.d.ts +30 -0
  71. package/dist/src/client/common.js +42 -0
  72. package/dist/src/client/common.js.map +1 -0
  73. package/dist/src/client/customers.d.ts +163 -0
  74. package/dist/src/client/customers.js +179 -0
  75. package/dist/src/client/customers.js.map +1 -0
  76. package/dist/src/client/entitlements.d.ts +442 -0
  77. package/dist/src/client/entitlements.js +239 -0
  78. package/dist/src/client/entitlements.js.map +1 -0
  79. package/dist/src/client/events.d.ts +31 -0
  80. package/dist/src/client/events.js +58 -0
  81. package/dist/src/client/events.js.map +1 -0
  82. package/dist/src/client/features.d.ts +78 -0
  83. package/dist/src/client/features.js +74 -0
  84. package/dist/src/client/features.js.map +1 -0
  85. package/dist/src/client/index.d.ts +45 -0
  86. package/dist/src/client/index.js +68 -0
  87. package/dist/src/client/index.js.map +1 -0
  88. package/dist/src/client/meters.d.ts +145 -0
  89. package/dist/src/client/meters.js +89 -0
  90. package/dist/src/client/meters.js.map +1 -0
  91. package/dist/src/client/notifications.d.ts +219 -0
  92. package/dist/src/client/notifications.js +242 -0
  93. package/dist/src/client/notifications.js.map +1 -0
  94. package/dist/src/client/plans.d.ts +142 -0
  95. package/dist/src/client/plans.js +123 -0
  96. package/dist/src/client/plans.js.map +1 -0
  97. package/dist/src/client/portal.d.ts +48 -0
  98. package/dist/src/client/portal.js +51 -0
  99. package/dist/src/client/portal.js.map +1 -0
  100. package/dist/src/client/schemas.d.ts +17247 -0
  101. package/dist/src/client/schemas.js +2 -0
  102. package/dist/src/client/schemas.js.map +1 -0
  103. package/dist/src/client/subjects.d.ts +70 -0
  104. package/dist/src/client/subjects.js +72 -0
  105. package/dist/src/client/subjects.js.map +1 -0
  106. package/dist/src/client/subscriptions.d.ts +147 -0
  107. package/dist/src/client/subscriptions.js +112 -0
  108. package/dist/src/client/subscriptions.js.map +1 -0
  109. package/dist/src/client/utils.d.ts +12 -0
  110. package/dist/src/client/utils.js +63 -0
  111. package/dist/src/client/utils.js.map +1 -0
  112. package/dist/src/portal/index.d.ts +104 -0
  113. package/dist/src/portal/index.js +50 -0
  114. package/dist/src/portal/index.js.map +1 -0
  115. package/dist/src/react/context.d.ts +9 -0
  116. package/dist/src/react/context.js +16 -0
  117. package/dist/src/react/context.js.map +1 -0
  118. package/dist/tsconfig.tsbuildinfo +1 -1
  119. package/package.json +54 -24
  120. package/patches/openapi-typescript.patch +73 -0
  121. package/dist/cjs/clients/client.cjs +0 -120
  122. package/dist/cjs/clients/client.d.cts +0 -37
  123. package/dist/cjs/clients/client.js.map +0 -1
  124. package/dist/cjs/clients/entitlement.cjs +0 -39
  125. package/dist/cjs/clients/entitlement.d.cts +0 -32
  126. package/dist/cjs/clients/entitlement.js.map +0 -1
  127. package/dist/cjs/clients/event.cjs +0 -71
  128. package/dist/cjs/clients/event.d.cts +0 -79
  129. package/dist/cjs/clients/event.js.map +0 -1
  130. package/dist/cjs/clients/feature.cjs +0 -80
  131. package/dist/cjs/clients/feature.d.cts +0 -46
  132. package/dist/cjs/clients/feature.js.map +0 -1
  133. package/dist/cjs/clients/grant.cjs +0 -41
  134. package/dist/cjs/clients/grant.d.cts +0 -24
  135. package/dist/cjs/clients/grant.js.map +0 -1
  136. package/dist/cjs/clients/meter.cjs +0 -83
  137. package/dist/cjs/clients/meter.d.cts +0 -79
  138. package/dist/cjs/clients/meter.js.map +0 -1
  139. package/dist/cjs/clients/notifications.cjs +0 -184
  140. package/dist/cjs/clients/notifications.d.cts +0 -101
  141. package/dist/cjs/clients/notifications.js.map +0 -1
  142. package/dist/cjs/clients/pagination.d.cts +0 -6
  143. package/dist/cjs/clients/pagination.js.map +0 -1
  144. package/dist/cjs/clients/portal.cjs +0 -41
  145. package/dist/cjs/clients/portal.d.cts +0 -22
  146. package/dist/cjs/clients/portal.js.map +0 -1
  147. package/dist/cjs/clients/subject.cjs +0 -269
  148. package/dist/cjs/clients/subject.d.cts +0 -142
  149. package/dist/cjs/clients/subject.js.map +0 -1
  150. package/dist/cjs/schemas/openapi.cjs +0 -7
  151. package/dist/cjs/schemas/openapi.d.cts +0 -3578
  152. package/dist/cjs/schemas/openapi.js.map +0 -1
  153. package/dist/cjs/test/agent.cjs +0 -485
  154. package/dist/cjs/test/agent.d.cts +0 -2
  155. package/dist/cjs/test/agent.js.map +0 -1
  156. package/dist/cjs/test/mocks.cjs +0 -153
  157. package/dist/cjs/test/mocks.d.cts +0 -25
  158. package/dist/cjs/test/mocks.js.map +0 -1
  159. package/dist/cjs/tsconfig.a1fc0bdc.tsbuildinfo +0 -1
  160. package/dist/cjs/tsconfig.b6c6ba95.tsbuildinfo +0 -1
  161. package/dist/clients/client.d.ts +0 -37
  162. package/dist/clients/client.js +0 -115
  163. package/dist/clients/client.js.map +0 -1
  164. package/dist/clients/entitlement.d.ts +0 -32
  165. package/dist/clients/entitlement.js +0 -35
  166. package/dist/clients/entitlement.js.map +0 -1
  167. package/dist/clients/event.d.ts +0 -79
  168. package/dist/clients/event.js +0 -64
  169. package/dist/clients/event.js.map +0 -1
  170. package/dist/clients/feature.d.ts +0 -46
  171. package/dist/clients/feature.js +0 -76
  172. package/dist/clients/feature.js.map +0 -1
  173. package/dist/clients/grant.d.ts +0 -24
  174. package/dist/clients/grant.js +0 -37
  175. package/dist/clients/grant.js.map +0 -1
  176. package/dist/clients/meter.d.ts +0 -79
  177. package/dist/clients/meter.js +0 -79
  178. package/dist/clients/meter.js.map +0 -1
  179. package/dist/clients/notifications.d.ts +0 -101
  180. package/dist/clients/notifications.js +0 -180
  181. package/dist/clients/notifications.js.map +0 -1
  182. package/dist/clients/pagination.d.ts +0 -6
  183. package/dist/clients/pagination.js +0 -2
  184. package/dist/clients/pagination.js.map +0 -1
  185. package/dist/clients/portal.d.ts +0 -22
  186. package/dist/clients/portal.js +0 -37
  187. package/dist/clients/portal.js.map +0 -1
  188. package/dist/clients/subject.d.ts +0 -142
  189. package/dist/clients/subject.js +0 -265
  190. package/dist/clients/subject.js.map +0 -1
  191. package/dist/schemas/openapi.d.ts +0 -3578
  192. package/dist/schemas/openapi.js +0 -6
  193. package/dist/schemas/openapi.js.map +0 -1
  194. package/dist/test/agent.d.ts +0 -2
  195. package/dist/test/agent.js +0 -482
  196. package/dist/test/agent.js.map +0 -1
  197. package/dist/test/mocks.d.ts +0 -25
  198. package/dist/test/mocks.js +0 -150
  199. package/dist/test/mocks.js.map +0 -1
@@ -1,269 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SubjectClient = void 0;
4
- const client_js_1 = require("./client.cjs");
5
- class SubjectClient extends client_js_1.BaseClient {
6
- constructor(config) {
7
- super(config);
8
- }
9
- /**
10
- * Upsert subject
11
- * Useful to map display name and metadata to subjects
12
- * @note OpenMeter Cloud only feature
13
- */
14
- async upsert(subject, options) {
15
- return await this.request({
16
- path: '/api/v1/subjects',
17
- method: 'POST',
18
- headers: {
19
- 'Content-Type': 'application/json',
20
- },
21
- body: JSON.stringify(subject),
22
- options,
23
- });
24
- }
25
- /**
26
- * Get subject by id or key
27
- * @note OpenMeter Cloud only feature
28
- */
29
- async get(idOrKey, options) {
30
- return await this.request({
31
- path: `/api/v1/subjects/${idOrKey}`,
32
- method: 'GET',
33
- options,
34
- });
35
- }
36
- /**
37
- * List subjects
38
- * @note OpenMeter Cloud only feature
39
- */
40
- async list(options) {
41
- return await this.request({
42
- path: '/api/v1/subjects',
43
- method: 'GET',
44
- options,
45
- });
46
- }
47
- /**
48
- * Delete subject by id or key
49
- * @note OpenMeter Cloud only feature
50
- */
51
- async delete(idOrKey, options) {
52
- return await this.request({
53
- path: `/api/v1/subjects/${idOrKey}`,
54
- method: 'DELETE',
55
- options,
56
- });
57
- }
58
- /** Entitlements **/
59
- /**
60
- * Create Entitlement
61
- * Entitlements allows you to manage subject feature access, balances, and usage limits.
62
- * @remarks
63
- * Input should be either `EntitlementMeteredCreateInputs`, `EntitlementStaticCreateInputs`, or `EntitlementBooleanCreateInputs`
64
- * @example
65
- * // Issue 10,000,000 tokens every month
66
- * const entitlement = await openmeter.subjects.createEntitlement('customer-1', {
67
- * type: 'metered',
68
- * featureKey: 'ai_tokens',
69
- * usagePeriod: {
70
- * interval: 'MONTH',
71
- * },
72
- * issueAfterReset: 10000000,
73
- * })
74
- */
75
- async createEntitlement(subjectIdOrKey, input, options) {
76
- return await this.request({
77
- path: `/api/v1/subjects/${subjectIdOrKey}/entitlements`,
78
- method: 'POST',
79
- headers: {
80
- 'Content-Type': 'application/json',
81
- },
82
- body: JSON.stringify(input),
83
- options,
84
- });
85
- }
86
- /**
87
- * Override Entitlement
88
- * Enables zero downtime upgrades and downgrades of entitlements.
89
- * @remarks
90
- * Input should be either `EntitlementMeteredCreateInputs`, `EntitlementStaticCreateInputs`, or `EntitlementBooleanCreateInputs`
91
- * @example
92
- * // Issue 10,000,000 tokens every month
93
- * const entitlement = await openmeter.subjects.overrideEntitlement('customer-1', 'ai_tokens', {
94
- * type: 'metered',
95
- * featureKey: 'ai_tokens',
96
- * usagePeriod: {
97
- * interval: 'MONTH',
98
- * },
99
- * issueAfterReset: 10000000,
100
- * })
101
- */
102
- async overrideEntitlement(subjectIdOrKey, entitlementIdOrFeatureKey, input, options) {
103
- return await this.request({
104
- path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementIdOrFeatureKey}/override`,
105
- method: 'PUT',
106
- headers: {
107
- 'Content-Type': 'application/json',
108
- },
109
- body: JSON.stringify(input),
110
- options,
111
- });
112
- }
113
- /**
114
- * List entitlements of a subject
115
- * @example
116
- * const entitlement = await openmeter.subjects.listEntitlements('customer-1')
117
- */
118
- async listEntitlements(subjectIdOrKey, params, options) {
119
- const searchParams = params
120
- ? client_js_1.BaseClient.toURLSearchParams(params)
121
- : undefined;
122
- return await this.request({
123
- path: `/api/v1/subjects/${subjectIdOrKey}/entitlements`,
124
- method: 'GET',
125
- searchParams,
126
- options,
127
- });
128
- }
129
- /**
130
- * Get entitlement
131
- *
132
- * @example
133
- * const entitlement = await openmeter.subjects.getEntitlement('customer-1', '01J1SD3QDV86GP77TQ4PZZ4EXE')
134
- */
135
- async getEntitlement(subjectIdOrKey, entitlementId, options) {
136
- return await this.request({
137
- path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementId}`,
138
- method: 'GET',
139
- options,
140
- });
141
- }
142
- /**
143
- * Delete entitlement
144
- * @example
145
- * await openmeter.deleteEntitlement('customer-1', '01J1SD3QDV86GP77TQ4PZZ4EXE')
146
- */
147
- async deleteEntitlement(subjectIdOrKey, entitlementId, options) {
148
- return await this.request({
149
- path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementId}`,
150
- method: 'DELETE',
151
- options,
152
- });
153
- }
154
- /**
155
- * Get entitlement value by ID or Feature Key
156
- *
157
- * @example
158
- * const value = await openmeter.subjects.getEntitlementValue('customer-1', 'ai_tokens')
159
- */
160
- async getEntitlementValue(subjectIdOrKey, entitlementIdOrFeatureKey, options) {
161
- return await this.request({
162
- path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementIdOrFeatureKey}/value`,
163
- method: 'GET',
164
- options,
165
- });
166
- }
167
- /**
168
- * Get entitlement value at a specific time.
169
- *
170
- * @example
171
- * const value = await openmeter.subjects.getEntitlementValueAt('customer-1', 'ai_tokens', new Date('2024-01-01'))
172
- */
173
- async getEntitlementValueAt(subjectIdOrKey, entitlementIdOrFeatureKey, at, options) {
174
- const searchParams = client_js_1.BaseClient.toURLSearchParams({ time: at });
175
- return await this.request({
176
- path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementIdOrFeatureKey}/value`,
177
- method: 'GET',
178
- options,
179
- searchParams,
180
- });
181
- }
182
- /**
183
- * Get entitlement history
184
- * @example
185
- * const entitlement = await openmeter.subjects.getEntitlementHistory('customer-1', '01J1SD3QDV86GP77TQ4PZZ4EXE')
186
- */
187
- async getEntitlementHistory(subjectIdOrKey, entitlementId, params, options) {
188
- const searchParams = params
189
- ? client_js_1.BaseClient.toURLSearchParams(params)
190
- : undefined;
191
- return await this.request({
192
- path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementId}/history`,
193
- method: 'GET',
194
- searchParams,
195
- options,
196
- });
197
- }
198
- /**
199
- * Reset Entitlement Usage
200
- * Reset the entitlement usage and start a new period. Eligible grants will be rolled over
201
- *
202
- * @example
203
- * const entitlement = await openmeter.subjects.resetEntitlementUsage('customer-1', '01J1SD3QDV86GP77TQ4PZZ4EXE', {
204
- * retainAnchor: true
205
- * })
206
- */
207
- async resetEntitlementUsage(subjectIdOrKey, entitlementId, input, options) {
208
- return await this.request({
209
- path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementId}/reset`,
210
- method: 'POST',
211
- headers: {
212
- 'Content-Type': 'application/json',
213
- },
214
- body: JSON.stringify(input),
215
- options,
216
- });
217
- }
218
- /** Entitlement Grant **/
219
- /**
220
- * Create Entitlement Grant
221
- * Create a grant for an entitlement.
222
- *
223
- * @example
224
- * const grant = await openmeter.subjects.createEntitlementGrant('customer-1', '01J1SD3QDV86GP77TQ4PZZ4EXE', {
225
- * amount: 100,
226
- * priority: 1,
227
- * effectiveAt: '2023-01-01T00:00:00Z',
228
- * expiration: {
229
- * duration: 'HOUR',
230
- * count: 12,
231
- * },
232
- * minRolloverAmount: 100,
233
- * maxRolloverAmount: 100,
234
- * recurrence: {
235
- * interval: 'MONTH',
236
- * anchor: '2024-06-28T18:29:44.867Z',
237
- * },
238
- * })
239
- */
240
- async createEntitlementGrant(subjectIdOrKey, entitlementIdOrFeatureKey, input, options) {
241
- return await this.request({
242
- path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementIdOrFeatureKey}/grants`,
243
- method: 'POST',
244
- headers: {
245
- 'Content-Type': 'application/json',
246
- },
247
- body: JSON.stringify(input),
248
- options,
249
- });
250
- }
251
- /**
252
- * List entitlement grants
253
- * @example
254
- * const entitlement = await openmeter.subjects.listEntitlementGrants('customer-1', '01J1SD3QDV86GP77TQ4PZZ4EXE')
255
- */
256
- async listEntitlementGrants(subjectIdOrKey, entitlementIdOrFeatureKey, params, options) {
257
- const searchParams = params
258
- ? client_js_1.BaseClient.toURLSearchParams(params)
259
- : undefined;
260
- return await this.request({
261
- path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementIdOrFeatureKey}/grants`,
262
- method: 'GET',
263
- searchParams,
264
- options,
265
- });
266
- }
267
- }
268
- exports.SubjectClient = SubjectClient;
269
- //# sourceMappingURL=subject.js.map
@@ -1,142 +0,0 @@
1
- import { components } from '../schemas/openapi.cjs';
2
- import { RequestOptions, BaseClient, OpenMeterConfig } from './client.cjs';
3
- import { Entitlement, EntitlementCreateInputs, EntitlementResetInputs, EntitlementValue, GetEntitlementHistoryQueryParams, ListEntitlementQueryParams, WindowedBalanceHistory } from './entitlement.cjs';
4
- import { EntitlementGrant, EntitlementGrantCreateInput, ListEntitlementGrantQueryParams } from './grant.cjs';
5
- export type Subject = components['schemas']['Subject'];
6
- export declare class SubjectClient extends BaseClient {
7
- constructor(config: OpenMeterConfig);
8
- /**
9
- * Upsert subject
10
- * Useful to map display name and metadata to subjects
11
- * @note OpenMeter Cloud only feature
12
- */
13
- upsert(subject: Omit<Subject, 'id'>[], options?: RequestOptions): Promise<Subject[]>;
14
- /**
15
- * Get subject by id or key
16
- * @note OpenMeter Cloud only feature
17
- */
18
- get(idOrKey: string, options?: RequestOptions): Promise<Subject>;
19
- /**
20
- * List subjects
21
- * @note OpenMeter Cloud only feature
22
- */
23
- list(options?: RequestOptions): Promise<Subject[]>;
24
- /**
25
- * Delete subject by id or key
26
- * @note OpenMeter Cloud only feature
27
- */
28
- delete(idOrKey: string, options?: RequestOptions): Promise<void>;
29
- /** Entitlements **/
30
- /**
31
- * Create Entitlement
32
- * Entitlements allows you to manage subject feature access, balances, and usage limits.
33
- * @remarks
34
- * Input should be either `EntitlementMeteredCreateInputs`, `EntitlementStaticCreateInputs`, or `EntitlementBooleanCreateInputs`
35
- * @example
36
- * // Issue 10,000,000 tokens every month
37
- * const entitlement = await openmeter.subjects.createEntitlement('customer-1', {
38
- * type: 'metered',
39
- * featureKey: 'ai_tokens',
40
- * usagePeriod: {
41
- * interval: 'MONTH',
42
- * },
43
- * issueAfterReset: 10000000,
44
- * })
45
- */
46
- createEntitlement(subjectIdOrKey: string, input: EntitlementCreateInputs, options?: RequestOptions): Promise<Entitlement>;
47
- /**
48
- * Override Entitlement
49
- * Enables zero downtime upgrades and downgrades of entitlements.
50
- * @remarks
51
- * Input should be either `EntitlementMeteredCreateInputs`, `EntitlementStaticCreateInputs`, or `EntitlementBooleanCreateInputs`
52
- * @example
53
- * // Issue 10,000,000 tokens every month
54
- * const entitlement = await openmeter.subjects.overrideEntitlement('customer-1', 'ai_tokens', {
55
- * type: 'metered',
56
- * featureKey: 'ai_tokens',
57
- * usagePeriod: {
58
- * interval: 'MONTH',
59
- * },
60
- * issueAfterReset: 10000000,
61
- * })
62
- */
63
- overrideEntitlement(subjectIdOrKey: string, entitlementIdOrFeatureKey: string, input: EntitlementCreateInputs, options?: RequestOptions): Promise<Entitlement>;
64
- /**
65
- * List entitlements of a subject
66
- * @example
67
- * const entitlement = await openmeter.subjects.listEntitlements('customer-1')
68
- */
69
- listEntitlements(subjectIdOrKey: string, params?: ListEntitlementQueryParams, options?: RequestOptions): Promise<Entitlement[]>;
70
- /**
71
- * Get entitlement
72
- *
73
- * @example
74
- * const entitlement = await openmeter.subjects.getEntitlement('customer-1', '01J1SD3QDV86GP77TQ4PZZ4EXE')
75
- */
76
- getEntitlement(subjectIdOrKey: string, entitlementId: string, options?: RequestOptions): Promise<Entitlement>;
77
- /**
78
- * Delete entitlement
79
- * @example
80
- * await openmeter.deleteEntitlement('customer-1', '01J1SD3QDV86GP77TQ4PZZ4EXE')
81
- */
82
- deleteEntitlement(subjectIdOrKey: string, entitlementId: string, options?: RequestOptions): Promise<void>;
83
- /**
84
- * Get entitlement value by ID or Feature Key
85
- *
86
- * @example
87
- * const value = await openmeter.subjects.getEntitlementValue('customer-1', 'ai_tokens')
88
- */
89
- getEntitlementValue(subjectIdOrKey: string, entitlementIdOrFeatureKey: string, options?: RequestOptions): Promise<EntitlementValue>;
90
- /**
91
- * Get entitlement value at a specific time.
92
- *
93
- * @example
94
- * const value = await openmeter.subjects.getEntitlementValueAt('customer-1', 'ai_tokens', new Date('2024-01-01'))
95
- */
96
- getEntitlementValueAt(subjectIdOrKey: string, entitlementIdOrFeatureKey: string, at: Date, options?: RequestOptions): Promise<EntitlementValue>;
97
- /**
98
- * Get entitlement history
99
- * @example
100
- * const entitlement = await openmeter.subjects.getEntitlementHistory('customer-1', '01J1SD3QDV86GP77TQ4PZZ4EXE')
101
- */
102
- getEntitlementHistory(subjectIdOrKey: string, entitlementId: string, params?: GetEntitlementHistoryQueryParams, options?: RequestOptions): Promise<WindowedBalanceHistory[]>;
103
- /**
104
- * Reset Entitlement Usage
105
- * Reset the entitlement usage and start a new period. Eligible grants will be rolled over
106
- *
107
- * @example
108
- * const entitlement = await openmeter.subjects.resetEntitlementUsage('customer-1', '01J1SD3QDV86GP77TQ4PZZ4EXE', {
109
- * retainAnchor: true
110
- * })
111
- */
112
- resetEntitlementUsage(subjectIdOrKey: string, entitlementId: string, input: EntitlementResetInputs, options?: RequestOptions): Promise<Entitlement>;
113
- /** Entitlement Grant **/
114
- /**
115
- * Create Entitlement Grant
116
- * Create a grant for an entitlement.
117
- *
118
- * @example
119
- * const grant = await openmeter.subjects.createEntitlementGrant('customer-1', '01J1SD3QDV86GP77TQ4PZZ4EXE', {
120
- * amount: 100,
121
- * priority: 1,
122
- * effectiveAt: '2023-01-01T00:00:00Z',
123
- * expiration: {
124
- * duration: 'HOUR',
125
- * count: 12,
126
- * },
127
- * minRolloverAmount: 100,
128
- * maxRolloverAmount: 100,
129
- * recurrence: {
130
- * interval: 'MONTH',
131
- * anchor: '2024-06-28T18:29:44.867Z',
132
- * },
133
- * })
134
- */
135
- createEntitlementGrant(subjectIdOrKey: string, entitlementIdOrFeatureKey: string, input: EntitlementGrantCreateInput, options?: RequestOptions): Promise<EntitlementGrant>;
136
- /**
137
- * List entitlement grants
138
- * @example
139
- * const entitlement = await openmeter.subjects.listEntitlementGrants('customer-1', '01J1SD3QDV86GP77TQ4PZZ4EXE')
140
- */
141
- listEntitlementGrants(subjectIdOrKey: string, entitlementIdOrFeatureKey: string, params?: ListEntitlementGrantQueryParams, options?: RequestOptions): Promise<EntitlementGrant[]>;
142
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"subject.js","sourceRoot":"","sources":["../../../clients/subject.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- "use strict";
2
- /**
3
- * This file was auto-generated by openapi-typescript.
4
- * Do not make direct changes to the file.
5
- */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- //# sourceMappingURL=openapi.js.map